倒排索引基本概念

文檔(Document)

一般搜索引擎的處理對象是互聯(lián)網(wǎng)網(wǎng)頁,而文檔這個概念更要寬泛一些,代表以文本形式存在的存儲對象。相比于網(wǎng)頁來說,涵蓋更多形式,比如Word、PDF、html、XML等不同格式的文件都可以稱為文檔,再比如一封郵件、一條短信、一條微博也可以稱為文檔。

文檔集合(Document Collection)

由若干文檔構(gòu)成的集合稱為文檔集合。比如海量的互聯(lián)網(wǎng)網(wǎng)頁或者大量的電子郵件,都是文檔集合的具體例子。

文檔編號(Document ID)

在搜索引擎內(nèi)部,會為文檔集合內(nèi)每個文檔賦予一個唯一的內(nèi)部編號,以此編號作為這個文檔的唯一標(biāo)識,這樣方便內(nèi)部處理。

單詞編號(Word ID)

與文檔編號類似,搜索引擎內(nèi)部以唯一的編號來表征某個單詞,單詞編號可以作為某個單詞的唯一表征。

倒排索引(Inverted Index)

倒排索引是實現(xiàn)單詞——文檔矩陣的一種具體存儲形式。通過倒排索引,可以根據(jù)單詞快速獲取包含這個單詞的文檔列表。倒排索引主要由兩個部分組成:單詞詞典倒排文件。

單詞詞典(Lexicon)

搜索引擎通常的索引單位是單詞,單詞詞典是由文檔集合中出現(xiàn)過的所有單詞構(gòu)成的字符串集合,單詞詞典內(nèi)每條索引項記載單詞本身的一些信息及指向倒排列表的指針。所以在用戶進(jìn)行查詢的時候,搜索引擎根據(jù)用戶的查詢詞,去單詞詞典里查詢,就能夠獲得相應(yīng)的倒排列表,并以此作為后續(xù)排序的基礎(chǔ)。
  對于一個規(guī)模很大的文檔集合來說,可能包含幾十萬甚至上百萬不同的單詞,能否快速定位某個單詞,這直接影響搜索時的相應(yīng)速度,常用的數(shù)據(jù)結(jié)構(gòu)包括哈希加鏈表結(jié)構(gòu)樹形詞典結(jié)構(gòu)

倒排列表(PostingList)

倒排列表記載了出現(xiàn)過某個單詞的所有文檔的文檔列表及單詞在該文檔中出現(xiàn)的位置信息,每條記錄稱為一個倒排項(Posting)。根據(jù)倒排列表,即可獲知哪些文檔包含某個單詞。

倒排文件(Inverted File)

所有單詞的倒排列表往往順序地存儲在磁盤的某個文件里,這個文件即被稱為倒排文件,倒排文件是存儲倒排索引的物理文件。

倒排索引基本組成
建立倒排索引的步驟:

1.用分詞系統(tǒng)將文檔自動切分成單詞序列。
2.對每個不同的單詞賦予唯一的單詞編號,并記錄下哪些文檔包含這個單詞。
3.還可以記錄單詞頻率(TF),代表這個單詞在某個文檔中出現(xiàn)的次數(shù)。因為詞頻信息在搜索結(jié)果排序時,是計算查詢和文檔相似度的一個很重要的計算因子。
4.實用的倒排索引還可以額外記錄兩類信息:每個單詞對應(yīng)的文檔頻率信息(DF,文檔集合中有多少個文檔包含了這個單詞),及單詞在某個文檔中出現(xiàn)的位置信息(POS)。

文檔集合
最簡單的倒排索引
帶有TF、IDF、POS的倒排索引

參考文獻(xiàn):
[1] 張俊林. 這就是搜索引擎[M]. 電子工業(yè)出版社, 2012.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這個系列的第六個主題,主要談一些搜索引擎相關(guān)的常見技術(shù)。 1995年是搜索引擎商業(yè)公司發(fā)展的重要起點,《淺談推薦系...
    我偏笑_NSNirvana閱讀 6,886評論 3 24
  • 見其名知其意,有倒排索引,對應(yīng)肯定,有正向索引。正向索引(forward index),反向索引(inverted...
    時待吾閱讀 1,333評論 0 0
  • 眾所周知,“索引”是搜索引擎中最重要的核心技術(shù)之一,是“縮小搜索范圍,以提高結(jié)果定位效率”的技術(shù)擔(dān)當(dāng)。 按照不同劃...
    橘色對白閱讀 9,357評論 3 12
  • Solr&ElasticSearch原理及應(yīng)用 一、綜述 搜索 http://baike.baidu.com/it...
    樓外樓V閱讀 7,648評論 1 17
  • 背景 在關(guān)系型數(shù)據(jù)庫中,索引是檢索數(shù)據(jù)的最有效率方式,但是在海量的數(shù)據(jù)中,需要實時檢索數(shù)據(jù)的時候,關(guān)系型數(shù)據(jù)庫的索...
    ninetyhe_閱讀 13,104評論 1 26

友情鏈接更多精彩內(nèi)容