ES

zhegeMaw發表於2024-08-16

分散式搜尋引擎,用於全文搜尋、日誌分析等。

概念

叢集(資料庫):一個ES叢集可以由一個或者多個節點(nodes)組成。所有這些節點用來儲存所有的資料以及提供聯合索引,提供跨節點查詢的能力。

索引(表):一個索引是一組具有相似特性的文件的集合。在儲存結構上由 _index,_type 和 _id 唯一標識一個文件。

  • _index 指向一個或多個物理分片的邏輯名稱空間

  • _type 型別,用於區分同一個集合中的不同細分,資料的整體模式是相同或相似的

  • _id 文件標記符,由系統自動生成或使用者提供

節點:一個節點是一個叢集中的一臺伺服器,它用來儲存資料,參與叢集的索引以及提供搜尋能力。

特點

分散式:ES採用分散式架構,可以將資料分散到多個節點上,提高資料處理和查詢的效率和可靠性。

倒排索引:

全文搜尋引擎:類似於Google搜尋,百度搜尋和維基百科等,對全文關鍵字進行檢索。

使用

  1. (可選)叢集規格和容量預估:需要提前進行節點規格和容量預估,方便後續的例項建立

  2. 建立叢集例項(資料庫):建立一個Elasticsearch 7.10 通用商業版例項。等待例項狀態正常後,透過Web控制檯訪問Elasticsearch例項。

  3. 建立索引(表):透過控制檯完成索引建立。

  4. 建立文件並插入資料(寫):透過Restful API、資料平臺等方式在ES中批次插入資料。

  5. 搜尋資料(讀):透過Restful API完成全文資料搜尋和按查詢條件搜尋。

  6. (可選)刪除索引:如果不再使用索引,可以透過命令刪除對應索引,避免浪費資源。

  7. (可選)釋放叢集:如果不再需要例項,可以釋放例項。例項釋放後資料無法恢復,建議釋放例項前先備份資料。