溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

《從Lucene到Elasticsearch:全文檢索實(shí)戰(zhàn)》

發(fā)布時(shí)間:2020-06-28 08:10:23 來(lái)源:網(wǎng)絡(luò) 閱讀:459 作者:柯之夢(mèng) 欄目:軟件技術(shù)

? ? ? 今天我給大家講講倒排索引。

? ? ? 索引是構(gòu)成搜索引擎的核心技術(shù)之一,它在日常生活中是非常常見(jiàn)的,比如我看一本書(shū)的時(shí)候,我首先會(huì)看書(shū)的目錄,通過(guò)目錄可以快速定位到具體章節(jié)的頁(yè)碼,加快對(duì)內(nèi)容的查詢速度。

? ? ? 文檔通常保存在各種數(shù)據(jù)庫(kù)管理系統(tǒng)之中,比如mysql,oracle等,但是搜索引擎的數(shù)據(jù)不能保存在數(shù)據(jù)庫(kù),主要原因有兩點(diǎn):一是搜索引擎的數(shù)據(jù)量非常龐大,大型搜索引擎需要處理數(shù)以億計(jì)的網(wǎng)頁(yè)數(shù)據(jù),面對(duì)海量數(shù)據(jù)數(shù)據(jù)庫(kù)很難管理。二是搜索引擎對(duì)數(shù)據(jù)的操作比較簡(jiǎn)單,一般的增刪改查就夠用了,而數(shù)據(jù)庫(kù)支持的數(shù)據(jù)庫(kù)操作是比較復(fù)雜的,犧牲了速度和空間,而搜索引擎要求響應(yīng)快,信息檢索效率高,在搜索引擎中主要使用倒排索引存儲(chǔ)網(wǎng)頁(yè)數(shù)據(jù)。?

? ? ? 倒排索引也叫反向索引,是一種索引方法,用來(lái)存儲(chǔ)在在全文搜索下某個(gè)單詞在一個(gè)文檔或者一組文檔中的存儲(chǔ)位置的映射,它是文檔檢索系統(tǒng)中最常用的數(shù)據(jù)結(jié)構(gòu)。

? ? ? 下面以通俗的例子解釋一下倒排索引,該例子取自于書(shū)中內(nèi)容:有兩個(gè)文檔doc1和doc2,doc包含中國(guó)、美國(guó)、韓國(guó),doc2中包含4個(gè)關(guān)鍵詞:中國(guó)、美國(guó)、德國(guó)、英國(guó),文檔和詞語(yǔ)的關(guān)系如下:

文檔 詞語(yǔ)
doc1 中國(guó)、美國(guó)、韓國(guó)
doc2 英國(guó)、中國(guó)、美國(guó)、德國(guó)

? ? ?詞語(yǔ)所屬的文檔關(guān)系如下:

?

詞語(yǔ) 文檔
中國(guó) doc1、doc2
美國(guó) doc1、doc2
韓國(guó) doc1
英國(guó) doc2
德國(guó) doc2 ? ? ??

? ??

? ? 參考下表,我們深入理解一下倒排索引,我們給每個(gè)文檔設(shè)置文檔ID

文檔ID 文檔內(nèi)容
1 人工智能成為互聯(lián)網(wǎng)大會(huì)焦點(diǎn)
2 谷歌推出開(kāi)源人工智能系統(tǒng)工具
3 互聯(lián)網(wǎng)的未來(lái)在人工智能
4 谷歌開(kāi)源機(jī)器學(xué)習(xí)工具

? ? ?

? ?對(duì)于文檔內(nèi)容,先要經(jīng)過(guò)詞條化處理。和英文不同的是,英語(yǔ)通過(guò)空格分隔單詞,中文的詞與詞之間沒(méi)有明確的分隔符號(hào),經(jīng)過(guò)分詞系統(tǒng)進(jìn)行中文分詞以后把矩陣切分成一個(gè)個(gè)詞條,文檔4被分成“谷歌” “開(kāi)源” “機(jī)器” “學(xué)習(xí)” “工具” 5個(gè)詞項(xiàng)。谷歌這個(gè)詞在文檔2和文檔4中各出現(xiàn)一次,文檔頻率為2,倒排記錄表記作2->4,文檔頻率也是倒排記錄表的長(zhǎng)度。依次統(tǒng)計(jì)各個(gè)詞項(xiàng)的文檔頻率和倒排記錄表,構(gòu)建倒排索引過(guò)程如下:

詞項(xiàng) 文檔頻率 倒排記錄表

文檔ID 文檔頻率 倒排記錄表
人工 3 2->3
智能 3 2->3
成為 1 1
互聯(lián)網(wǎng) 2 1->3

? ? ?

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI