簡介
倒排索引(英語:Inverted index),也常被稱為
反向索引、
置入檔案或
反向檔案,是一種
索引方法,被用來
存儲在
全文搜尋下某個單詞在一個文檔或者一組文檔中的存儲位置的
映射。它是文檔檢索系統中最常用的
數據結構。
有兩種不同的反向索引形式:
後者的形式提供了更多的
兼容性(比如短語搜尋),但是需要更多的時間和空間來創建。
例子
我們就能得到下面的反向檔案索引:
"a": {2}
"banana": {2}
"is": {0, 1, 2}
"it": {0, 1, 2}
"what": {0, 1}
檢索的條件"what","is"和"it"將對應這個
集合:
對相同的文字,我們得到後面這些完全反向索引,有
文檔數量和當前查詢的單詞結果組成的的成對
數據。 同樣,文檔數量和當前查詢的單詞結果都從零開始。所以,"banana": {(2, 3)}就是說 "banana"在第三個文檔里 (
),而且在第三個文檔的位置是第四個單詞(地址為 3)。
"a": {(2, 2)}
"banana": {(2, 3)}
"is": {(0, 1), (0, 4), (1, 1), (2, 1)}
"it": {(0, 0), (0, 3), (1, 2), (2, 0)}
"what": {(0, 2), (1, 0)}
如果我們執行短語搜尋"what is it"我們得到這個短語的全部單詞各自的結果所在文檔為文檔0和文檔1。但是這個短語檢索的連續的條件僅僅在文檔1得到。
套用
相關