ElasticSearch第5節(jié) 倒排索引、分詞器

一朋凉、倒排索引

Elasticsearch使用一種稱為倒排索引的結構唠梨,它適用于快速的全文捜索.一個倒排索引由文檔中所有不重復詞的列表構成,對于其中每個詞侥啤,有一個包含它的文檔列表当叭。

示例:

  1. 假設文檔集合包含五個文檔,毎個文檔內容如圖所示盖灸,在圖中最左端一欄是每個文檔對應的文擋編號蚁鳖。我們的任務就是對這個文檔集合建立倒排索引。
文檔編號赁炎,文檔內容
  1. 中文和英文等語言不同醉箕,單詞之間沒有明確分隔符號钾腺,所以首先要用分詞系統(tǒng)將文擋自動切分成單詞序列.這樣每個文檔就轉換為由單詞序列構成的數據
    流,為了系統(tǒng)后續(xù)處理方便讥裤,需要對每個不同的單詞賦予唯一的單詞編號放棒,同時記錄下哪些文擋包含這個單詞,在如此處理結束后己英,我們可以得到最簡單的倒排索引间螟。
單詞id 單詞 文檔ID
  1. 索引系統(tǒng)還可以記錄除此之外的更多信息,下圖還記載了單詞頻率信息损肛。 (TF) 即這個單詞在某個文檔中的出現(xiàn)次數厢破。之所以要記錄這個信息,是因為詞頻信息在搜索結果排序時治拿,計算查詢和文檔相似度是很重要的一個計算因子摩泪,所以將其記錄在倒排列表中,以方便后續(xù)排序時進行分值計算劫谅。
谷歌(1:2) 1是文檔id见坑,2是出現(xiàn)次數
  1. 倒排列表中還可以記錄單詞在某個文檔出現(xiàn)的位置信息
#id是1的單詞,出現(xiàn)1次捏检,文檔位置是11
#id是2的文檔荞驴,出現(xiàn)1次,文檔位置是7
#id是3的文檔未檩,出現(xiàn)2次戴尸,文檔位置是3粟焊,9
(1,<11>,1),(2,<7>,1),(3,<3,9>,2)

有了這個索引系統(tǒng)冤狡,搜索引擎可以很方便地響應用戶的查詢,比如用戶輸入查詢詞Facebook项棠,搜索系統(tǒng)查找倒排索引悲雳,從中可以讀出包含這個單詞的文
檔,這些文檔就是提供給用戶的搜索結果香追,而利用單詞頻率信息合瓢、文檔頻率信息即可以對這些搜索結果進行排序,計算文檔和查詞的相似性透典,按照相似性
得分由高到低排序輸出晴楔,此即為搜索系統(tǒng)的部分內部流程。

image.png
image.png




二峭咒、分詞器

1. 分詞器概念

從一串文本中切分出一個一個的詞條税弃,并対每個詞條進行標準化 ,包括三部分:
1)character filter:分詞之前的預處理凑队,過濾掉HTML標簽.持殊符號轉換等
2)tokenizer:分詞
3)token filter: 標 準 化

2. 內置分詞器:

  1. standard分詞器
    (默認的)他會枵詞匯單元轉換成d烏形式则果,并去除俸用詞和標點符號?支持中文采用的方法為單字切分
  2. simple分詞器
    酋先會通過非字母字符來分割文本信息,然后枵詞匯單元統(tǒng)一為兩形式?該分忻器會去掉數字類型的字符?
  3. Whitespace分詞器
    僅僅是去除空格,對字符沒有l(wèi)owcase化,不支持中文西壮;并且不對生成的詞匯單元進行其他的標準化處理,
  4. language分詞器
    持走語言的分詞器?不支持中文


安裝中文分詞器
  1. 下載中文分詞器 https://github.com/medcl/elasticsearch-analysis-ik
    下載elasticsearch-analysis-ik-master.zip
  2. 解壓elasticsearch-analysis-ik-master.zip
    unzip elasticsearch-analysis-ik-master.zip
  3. 進入elasticsearch-analysis-ik-master,編譯源碼
mvn clean install -Dmaven.test.skip=true
#生成文件
/target/releases/elasticsearch-analysis-ik-7.0.0.zip

cd elasticsearch-7.1.1/plugins/
#
mv elasticsearch-analysis-ik-7.0.0.zip elasticsearch-7.1.1/plugins/ik
  1. 在es的plugins文件夾下創(chuàng)建目錄ik
  2. 編譯后生成的elasticsearch-analysis-ik-版本.zip移動到ik下遗增,并解壓
  3. 解壓后的內容移動到ik目錄下
  4. 重啟elasticsearch,啟動報錯
    Plugin [analysis-ik] was built for Elasticsearch version 7.0.0 but version 7.1.1 is running

問題原因

Es 版本和 ik分詞器版本不一致款青。
由于我用的Es時最新版本 7.1.1做修,而ik分詞器master編譯出來也只是7.0.0

解決辦法

修改ik目錄下的 plugin-descriptor.properties 文件中的

elasticsearch.version=你的ES版本號

刪除ik目錄,重新解壓可都,先改變版本號缓待,再重啟elasticsearch

#啟動日志
[INFO ][o.e.p.PluginsService     ] loaded module [x-pack-watcher]
[INFO ][o.e.p.PluginsService     ] loaded plugin [analysis-ik]
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市渠牲,隨后出現(xiàn)的幾起案子旋炒,更是在濱河造成了極大的恐慌,老刑警劉巖签杈,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瘫镇,死亡現(xiàn)場離奇詭異,居然都是意外死亡答姥,警方通過查閱死者的電腦和手機铣除,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鹦付,“玉大人尚粘,你說我怎么就攤上這事∏贸ぃ” “怎么了郎嫁?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長祈噪。 經常有香客問我泽铛,道長,這世上最難降的妖魔是什么辑鲤? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任盔腔,我火速辦了婚禮,結果婚禮上月褥,老公的妹妹穿的比我還像新娘弛随。我一直安慰自己,他們只是感情好宁赤,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布舀透。 她就那樣靜靜地躺著,像睡著了一般礁击。 火紅的嫁衣襯著肌膚如雪盐杂。 梳的紋絲不亂的頭發(fā)上逗载,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機與錄音链烈,去河邊找鬼厉斟。 笑死,一個胖子當著我的面吹牛强衡,可吹牛的內容都是我干的擦秽。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼漩勤,長吁一口氣:“原來是場噩夢啊……” “哼感挥!你這毒婦竟也來了?” 一聲冷哼從身側響起越败,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤触幼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后究飞,有當地人在樹林里發(fā)現(xiàn)了一具尸體置谦,經...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年亿傅,在試婚紗的時候發(fā)現(xiàn)自己被綠了媒峡。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡葵擎,死狀恐怖谅阿,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情酬滤,我是刑警寧澤签餐,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站敏晤,受9級特大地震影響贱田,放射性物質發(fā)生泄漏缅茉。R本人自食惡果不足惜嘴脾,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蔬墩。 院中可真熱鬧译打,春花似錦、人聲如沸拇颅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽樟插。三九已至韵洋,卻和暖如春竿刁,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背搪缨。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工食拜, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人副编。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓负甸,卻偏偏與公主長得像,于是被迫代替她去往敵國和親痹届。 傳聞我的和親對象是個殘疾皇子呻待,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內容