前面簡要介紹過了搜索引擎的索引系統(tǒng),實際上在建立倒排索引的最后還需要有一個入庫寫庫的過程,而為了提高效率這個過程還需要將全部term以及偏移量保存在文件頭部,并且對數(shù)據(jù)進行壓縮,這涉及到的過于技術化在此就不多提了。今天簡要給大家介紹一下索引之后的檢索系統(tǒng)。
檢索系統(tǒng)主要包含了五個部分,如下圖所示:
(1)Query串切詞分詞即將用戶的查詢詞進行分詞,對之后的查詢做準備,以“10號線地鐵故障”為例,可能的分詞如下(同義詞問題暫時略過):
10 0x123abc
號 0x13445d
線 0x234d
地鐵 0x145cf
故障 0x354df
(2)查出含每個term的文檔集合,即找出待選集合,如下:
0x123abc 1 2 3 4 7 9…..
0x13445d 2 5 8 9 10 11……
……
……
(3)求交,上述求交,文檔2和文檔9可能是我們需要找的,整個求交過程實際上關系著整個系統(tǒng)的性能,這里面包含了使用緩存等等手段進行性能優(yōu)化;
(4)各種過濾,舉例可能包含過濾掉死鏈、重復數(shù)據(jù)、色情、垃圾結(jié)果以及你懂的;
(5)最終排序,將最能滿足用戶需求的結(jié)果排序在最前,可能包括的有用信息如:網(wǎng)站的整體評價、網(wǎng)頁質(zhì)量、內(nèi)容質(zhì)量、資源質(zhì)量、匹配程度、分散度、時效性等等,之后會詳細給大家介紹。
轉(zhuǎn)載請保留原文地址: http://m.448gfe.cn/show-542.html