ES-IK分詞器


一、安裝

https://www.cnblogs.com/wudequn/p/11001382.html

https://github.com/medcl/elasticsearch-analysis-ik/(官方文檔)

二、配置

IKAnalyzer.cfg.xml 這個是配置文件,其他的都是自帶的分詞文件。

    <!--用戶可以在這里配置自己的擴展字典 -->
    <entry key="ext_dict"></entry>
     <!--用戶可以在這里配置自己的擴展停止詞字典-->
    <entry key="ext_stopwords"></entry>

將分詞文件填入***.dic   <entry key ="exyt_dict">my.dic<entry>中,在重啟es。

 

或者

    <!--用戶可以在這里配置遠程擴展字典 -->
    <entry key="remote_ext_dict">words_location</entry>
    <!--用戶可以在這里配置遠程擴展停止詞字典-->
    <entry key="remote_ext_stopwords">words_location</entry> 

其中location是指一個 url,比如http://*******,該請求只需滿足以下兩點即可完成分詞熱更新

1、該 http 請求需要返回兩個頭部(header),一個是Last-Modified,一個是ETag,這兩者都是字符串類型,只要有一個發生變化,該插件就會去抓取新的分詞進而更新詞庫。

2、該 http 請求返回的內容格式是一行一個分詞,換行符用\n即可。

滿足上面兩點要求可實現熱更新分詞,不需要重啟 ES 實例。

三、測試

https://github.com/medcl/elasticsearch-analysis-ik/ (官網教程   要是跑不通就試試下面的)

 mapping相當於指定表中字段 以及 字段類型。這時也可以指定分詞。

https://blog.csdn.net/qinyuezhan/article/details/82463340   (mapping 詳解)

 

ik_max_word: 會將文本做最細粒度的拆分,比如會將“中華人民共和國國歌”拆分為“中華人民共和國,中華人民,中華,華人,人民共和國,人民,人,民,共和國,共和,和,國國,國歌”,會窮盡各種可能的組合,適合 Term Query;

ik_smart: 會做最粗粒度的拆分,比如會將“中華人民共和國國歌”拆分為“中華人民共和國,國歌”,適合 Phrase 查詢。

 

http://localhost:9200/這里是索引名稱/_analyze/

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM