Elasticsearch筆記六之中文分詞器及自定義分詞器


中文分詞器

在lunix下執行下列命令,可以看到本來應該按照中文”北京大學”來查詢結果es將其分拆為”北”,”京”,”大”,”學”四個漢字,這顯然不符合我的預期。這是因為Es默認的是英文分詞器我需要為其配置中文分詞器。

curlHTTP://192.168.79.131:9200/shb01/_analyze?pretty=true -d'{"text":"北京大學"}'



Es整合ik不直接用ik官網的工具包,需要將ik工具包封裝成es插件才行,這個已經有人封裝好了可以在github上下載elasticsearch-analysis-ik

1:在github上下載ik插件源碼

https://github.com/medcl/elasticsearch-analysis-ik



2:下載后解壓縮在根目錄下使用maven對其進行編譯。

編譯后把target/release目錄下的elasticsearch-analysis-ik-1.3.0.zip上傳到/usr/local/elasticsearch-1.4.4/plugins/analysis-ik目錄下然后使用unzip解壓。

把下載的ik插件中config目錄下的文件拷貝到/usr/local/elasticsearch-1.4.4/config目錄下,這些文件時ik的配置文件,custom是自定義詞庫文件。



3:修改elasticsearch.yml文件,把ik分詞器設置為es的默認分詞器

index.analysis.analyzer.default.type:ik

 

4:重啟es,注意es中的每個節點都要進行上述配置。

 

 

自定義分詞器

1:創建一個dic文件,編碼格式必須為utf-8無BOM格式,每個詞一行多個詞需要換行。



2:將自定義的dic文件上傳到/usr/local/elasticsearch-1.4.4/config/custom目錄下

 

3:修改ik的配置文件/usr/local/elasticsearch-1.4.4/config/IKAnalyzer.cfg.xml,在其中指定自定義的dic文件。


4:重啟es


免責聲明!

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



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