在 Elasticsearch 中,可以使用 IK 分詞器來(lái)替代默認(rèn)的 text 類(lèi)型。IK 分詞器是一個(gè)開(kāi)源的中文分詞器,支持中文分詞和英文分詞。
要將默認(rèn)的 text 類(lèi)型修改為 IK 分詞器,需要進(jìn)行以下步驟:
- 安裝 IK 分詞器插件:
- 下載 IK 分詞器插件,可以從 GitHub 上的 elasticsearch-analysis-ik 頁(yè)面下載最好下載與ES版本相同的IK版本文件。
- 將下載的插件解壓縮到 Elasticsearch 的插件目錄中。(插件目錄在ES的根目錄下的plugins)
- 創(chuàng)建索引并指定 IK 分詞器:
- 在創(chuàng)建索引時(shí),使用自定義的分詞器配置來(lái)指定字段的分詞器為 IK 分詞器。
以下是一個(gè)示例的索引創(chuàng)建請(qǐng)求的 JSON 數(shù)據(jù),其中將字段 content 的分詞器設(shè)置為 IK 分詞器:
PUT /my_index
{
"settings": {
"analysis": {
"analyzer": {
"ik_analyzer": {
"type": "custom",
"tokenizer": "ik_max_word",
"filter": ["synonym_filter", "stop_filter"]
}
},
"filter": {
"synonym_filter": {
"type": "synonym",
"synonyms_path": "analysis/synonyms.txt"
},
"stop_filter": {
"type": "stop",
"stopwords_path": "analysis/stop.txt"
}
}
}
},
"mappings": {
"properties": {
"content": {
"type": "text",
"analyzer": "ik_analyzer"
}
}
}
}
一、 以上settings中說(shuō)明:
- 設(shè)置了一個(gè)自定義的解析器analyzer
- 定義名稱(chēng)為ik_analyzer(可根據(jù)自己喜好修改名稱(chēng))
- 定義它的類(lèi)型為custom自定義類(lèi)型
- 采用的分詞tokenizer為ik_max_word
- 定義了同義詞和停用詞過(guò)濾filter為synonym_filter、stop_filter
- 設(shè)置過(guò)濾filter
- 分別命名為synonym_filter和stop_filter(名字自己?。?,上邊引用的filter就是對(duì)應(yīng)的這個(gè)名字(不要寫(xiě)錯(cuò))
- 定義了type類(lèi)型分別是synonym(同義詞)、stop(停用詞)
- synonyms_path和stopwords_path分別是同義詞和停用詞文件位置,文件路徑為ES根目錄下的config中創(chuàng)建analysis/synonyms.txt和analysis/stop.txt;(文件夾analysis和文件XXX.txt可自己定義,主要是放在config下邊)
二、 以上mappings中說(shuō)明:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-635601.html
- 定義屬性properties為content(這個(gè)就是我們要進(jìn)行分詞的字段名)
- 定義content字段類(lèi)型為type:text
- 字段content采用的解析方式analyzer為上邊settings中定義的ik_analyzer
以上就基本完成了ES+IK分詞的索引創(chuàng)建文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-635601.html
到了這里,關(guān)于Elasticsearch中使用IK分詞配置的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!