Elasticsearch

瓜亭發表於2024-10-15

一,倒排索引

elasticsearch搜尋效能高的原因是因為底層的倒排索引技術。
倒排索引中的兩個重要概念:

  1. 文件(Document):用來搜尋的資料,其中的每一條資料就是一個文件,例如一個網頁,一個商品資訊。
  2. 詞條(Term):對文件資料或使用者搜尋資料,利用某種演算法分詞,得到的具備含義的語句就是詞條,例如:我是中國人,就可以分為:我,是,中國人,中國,國人這樣的詞條。

倒排索引:

1.先把文件內容進行分詞,形成詞條與文件id的對應關係,叫做詞條庫,詞條具備唯一性,建立索引。
2.對搜尋內容進行分詞,把分詞後得到的一個關鍵詞列表。,根據關鍵詞去詞條庫中匹配,再找到對應的文件id列表。
3.然後根據文件id列表,找到對應的文件資訊。

二,ES相關概念對比MySQL

MySQL Elasticsearch ES描述
Table Index 索引
Row Document 文件【json】
Column Filed 欄位【域】
schema Mapping 對映【結構】
SQL DSL 語句

其中前三排的對比最為重要,一定要記好。

相關文章