您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么安裝elasticsearch中文分詞插件Synonym-Analysis”,在日常操作中,相信很多人在怎么安裝elasticsearch中文分詞插件Synonym-Analysis問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么安裝elasticsearch中文分詞插件Synonym-Analysis”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
elasticsearch 版本 7.3
安裝同義詞插件
插件對應的版本需要和elasticsearch的版本一致
插件下載地址
https://github.com/bells/elasticsearch-analysis-dynamic-synonym
安裝步驟如下:
在elasticsearch-7.3.0/plugins目錄下新建 analysis-dynamic-synonym文件夾
如果是最新版master需要使用maven編譯后將jar放入剛剛建好的文件夾中,如果是其他已經編譯好的版本直接復制放入即可,本例需要編譯的版本
同時加入plugin-descriptor.properties 和 plugin-security.policy,內容詳見下文
重啟集群
遠程同義詞庫同樣是根據http header 中的 Last-Modified 和 ETag 判斷是否需要更新,具體可以參考我的另一篇博客方法是一樣的elasticsearch 中文分詞插件IK-Analyze
編譯后僅得到一個jar包,其實elasticsearch安裝插件還需要配置文件plugin-descriptor.properties,沒有此文件會報錯,文件內容如下
description=Analysis-plugin for synonym version=5.1.1 name=analysis-dynamic-synonym classname=com.bellszhu.elasticsearch.plugin.DynamicSynonymPlugin java.version=1.8 elasticsearch.version=7.3.0
還需要放入配置文件 plugin-security.policy
grant { // needed because of the hot reload functionality permission java.net.SocketPermission "*", "connect,resolve"; };
如果elasticsearch報錯提示
failed to get synonyms : http://10.0.11.1:10002/elasticsearch/synonymDict
access denied ("java.net.SocketPermission" "10.0.11.1:10002" "connect,resolve")
原因是缺少plugin-security.policy文件
commons httpclient 這些jar可以下載一個低版本的插件從中獲取
插件所有文件如下:
測試同義詞插件
創建一個索引,指定遠程同義詞庫
PUT /full_text_test123 { "settings": { "index": { "analysis": { "analyzer": { "ik_syno_smart": { "tokenizer": "ik_max_word", "type": "custom", "filter": [ "remote_synonym" ] } }, "filter": { "remote_synonym": { "type": "dynamic_synonym", "synonyms_path": "http://10.0.11.1:10002/elasticsearch/synonymDict", "interval": 30 } } } } }, "mappings": { "properties": { "content": { "type": "text", "analyzer": "ik_syno_smart", "search_analyzer": "ik_smart" } } } }
添加同義詞
執行解析器
POST /full_text_test123/_analyze { "text": ["西紅柿"], "analyzer": "ik_syno_smart" }
結果
{ "tokens" : [ { "token" : "西紅柿", "start_offset" : 0, "end_offset" : 3, "type" : "CN_WORD", "position" : 0 }, { "token" : "番茄", "start_offset" : 0, "end_offset" : 3, "type" : "SYNONYM", "position" : 0 } ] }
到此,關于“怎么安裝elasticsearch中文分詞插件Synonym-Analysis”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。