一、什麼是IK分詞器
分詞:即把一段文字(中文、英文、其他)劃分成一個個的關鍵字,我們在搜索時候會將自己的信息進行分詞,會把 數據庫中或者索引庫中的數據進行分詞,然後進行一個匹配操作,默認的中文分詞是將每個字看成一個 詞,比如 “我的中文名是趙四” 會被分爲:“我”,“的”,“中文名”,“是”,“趙”,“四”,這顯然是不符合要求的,所以我們需要安裝中文分詞器 ik 來解決這個問題。
如果要使用中文,建議使用ik分詞器,IK提供了兩個分詞算法:
- ik_smart:最少切分
- ik_max_word:ik_max_word爲最細粒度劃分
二、安裝
2.1、下載與es對應版本的ik分詞器:ik分詞器github下載地址
2.2、下載完畢之後,解壓放入es的插件目錄下即可:
cd /Users/wells/Tools/Elasticsearch/elasticsearch-7.6.0/plugins
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.0/elasticsearch-analysis-ik-7.6.0.zip
unzip elasticsearch-analysis-ik-7.6.0.zip -d es-ik
2.3、重啓es
# 獲取pid
ps -ef | grep elasticsearch
# kill 進程
kill -9 pid
觀察ES啓動日誌:
tail -f /Users/wells/Tools/Elasticsearch/elasticsearch-7.6.0/logs/elasticsearch.log
可以看到 ik 分詞器被加載了
2.4、命令
使用 elasticsearch-plugin list 命令可查看加載的 plugins
三、測試
通過kibana測試
3.1、ik_smart 爲最少切分
3.2、ik_max_word爲最細粒度劃分
四、自定義dic
這種自己需要的詞,需要自己加到我們的分詞器的字典中
4.1、ik 分詞器增加自己的配置
- cd 到 es 的插件目錄
- 增加自定義字典
- 修改自定義字典內容
- 自定義字典文件加入到配置
- 重啓es
重啓es之後,查看效果:
以後的話,我們需要自己配置 分詞就在自己定義的dic文件中進行配置即可