ES 筆記五:倒排索引

CrazyZard發表於2019-10-14
  • 書的目錄就是書的索引

ES 筆記五:倒排索引

ES 筆記五:倒排索引

  • 圖書
    • 正排索引 - 目錄頁
    • 倒排索引 - 索引頁
  • 搜尋引擎
  • 正排索引 - 文件id到文件內容和單詞的關聯
  • 倒排索引- 單詞到文件id的關係

ES 筆記五:倒排索引

  • 倒排索引包含兩個部分
    • 單詞詞典(Term Dictionary) ,記錄所有文件的單詞,記錄單詞到倒排列表的關聯關係
    • 單詞詞典比較大,可以通過B+樹 或者 雜湊拉鍊法實現,以滿足高效能的插入與查詢
    • 倒排列表(Postion List)- 記錄了單詞對應的文件結合,由倒排索引項組成
      • 倒排索引
      • 文件ID
      • 詞頻TF - 單詞在文件中的分詞的位置。用於語句搜尋(phrase query)
      • 偏移(Offset) - 記錄單詞的開始結束時間,實現高亮顯示

例子: Elasticsearch

ES 筆記五:倒排索引

  • Elasticsearch 的JSON 文件中的每個欄位,都有自己的倒排索引
  • 可以指定對某些欄位不做索引
    • 優點:節省儲存空間
    • 缺點:欄位無法被搜尋

相關文章