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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章