教程目錄
- 0x00 教程内容
- 0x01 預設标準分詞效果展示
- 1. 預設标準分詞器的使用
- 2. 建立一個測試索引
- 3. 查詢及效果展示
- 0x02 分詞插件elasticsearch-analysis-ik
- 1. 下載下傳插件
- 2. 啟動Elasticsearch
- 3. 重新建立測試索引
- 0x03 ik分詞效果展示
- 1. ik_max_word分詞
- 2. ik_smart分詞
- 0xFF 總結
0x00 教程内容
- 預設标準分詞效果展示
- 分詞插件elasticsearch-analysis-ik
- ik分詞效果展示
0x01 預設标準分詞效果展示
1. 預設标準分詞器的使用
a. 英文分詞效果展示
http://localhost:9200/_analyze?analyzer=standard&pretty=true&text=I am teacher SHAO

點選送出請求後,可看到右邊有分詞效果:
b. 中文分詞效果展示
http://localhost:9200/_analyze?analyzer=standard&pretty=true&text=邵奈一老師
可看到,老師都被分開了,對于中文效果并不理想
2. 建立一個測試索引
a. 索引名:shaonaiyi,類型:teacher
http://localhost:9200/shaonaiyi
{
"settings": {
"number_of_replicas": 0
},
"mappings": {
"teacher": {
"dynamic": false,
"properties": {
"value": {
"type": "text"
}
}
}
}
}
b. 插入資料
http://localhost:9200/shaonaiyi/teacher
{
"value":"學大資料"
}
類似插入多兩條,如下面:
{
"value":"大學講師"
}
{
"value":"學習技能"
}
3. 查詢及效果展示
a. 查詢【POST】
http://localhost:9200/shaonaiyi/teacher/_search/
{
"query": {
"match": {
"value": "大學"
}
}
}
b .結論
我們想要的結果隻是:大學講師,可是其他帶“大”字和“學”字的結果都搜尋出來了,這不是我們想要的結果。
0x02 分詞插件elasticsearch-analysis-ik
1. 下載下傳插件
a. github.com
b. 翻頁,找到自己對應的Elasticsearch版本(如:5.6.1)
c. 點選下載下傳并解壓到Elasticsearch主目錄的plugins目錄下(如:E:\SmallTools\elasticsearch-5.6.1\plugins\elasticsearch)
2. 啟動Elasticsearch
a. 關閉之前的elasticsearch.bat視窗(如沒有啟動則直接啟動)
b. 打開elasticsearch.bat檔案
c. 重新開機後重新整理http://localhost:9100/,可看到前面建立的shaonaiyi索引,但需要重新建立索引,因為插件安裝好了
3. 重新建立測試索引
a. 删除之前的shaonaiyi索引【DELETE】
http://localhost:9200/shaonaiyi
b. 建立索引【PUT】
http://localhost:9200/shaonaiyi
{
"settings": {
"number_of_replicas": 0
},
"mappings": {
"teacher": {
"dynamic": false,
"properties": {
"value": {
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word"
}
}
}
}
}
0x03 ik分詞效果展示
1. ik_max_word分詞
a. 查詢【POST】
http://localhost:9200/_analyze?analyzer=ik_max_word&pretty=true&text=邵奈一老師
2. ik_smart分詞
a. 将上面的三個均ik_max_word改為ik_smart
b. 建立一個新索引shaonaiyi888
c. 重新查詢,比較不同
0xFF 總結
- 如沒有Elasticsearch基礎或者有疑惑,請參考此篇教程:Elasticsearch的安裝(windows)
- 更多與ik分詞插件相關知識請看github:medcl/elasticsearch-analysis-ik
- 看以後是否有需求和時間,再出一個模仿百度的簡單搜尋引擎。
作者簡介:邵奈一
大學大資料講師、大學市場洞察者、專欄編輯
公衆号、微網誌、 :邵奈一