elasticsearch-analysis-ik 是一款中文的分詞外掛程式,支援自定義詞庫。
現在開始安裝ik分詞器,安裝之前,先說明一些變化:
之前可以在node節點上配置index預設的分詞器,如果是多節點,那麼在每個節點上都配置就行了。這個有點不靈活,所以。5.0之後,es已經不再支援在elasticsearch.yml中配置分詞器,改而在新建索引時,使用settings去配置,這個會在後面的程式設計中說到。
之前使用delete-by-query外掛程式來實現type的整個刪除。這個外掛程式也是從5.0開始沒有了,被整合到了es的core中
3.從5.0開始ik的tokenizer發生了變化,提供了兩種,一種為ik_smart,一種為ik_max_word。直接一點,ik_max_word會盡量從輸入中拆分出更多 token,而ik_smart則相反,個人感覺,ik_max_word就是原來的ik,ik_smart是新加的。
cd elasticsearch-analysis-ik拷貝和解壓release下的檔案:mvn clean
mvn compile
mvn package
#/elasticsearch-analysis-ik/target/releases/elasticsearch-analysis-ik-*.zip 到你的 elasticsearch 外掛程式目錄,
如: plugins/ik 重啟elasticsearch
只需要把elasticsearch-analysis-ik-5.3.0.zip解壓,然後拷貝到es安裝目錄下的plugins資料夾內,並把elasticsearch-analysis-ik-5.3.0資料夾名修改為ik。這樣,就安裝好了。正如前面說的,安裝完外掛程式,現在不需要在配置檔案中配置了,需要在新建索引的時候指定分詞器。
重啟啟動es,可以看到如下log
用kibana檢視一下,後續會談到如何這樣做。
至此es+kibana+ik安裝好了。從2.4.1到5.x版本號跨度很大,很多地方也發生了很多變化,總體來說,更簡便了。
ikanalyzer.cfg.xml
在/analysis-ik/config/ikanalyzer.cfg.xml
或/elasticsearch-analysis-ik-*/config/ikanalyzer.cfg.xml中
<?xml version="1.0" encoding="utf-8"?>目前該外掛程式支援熱更新 ik 分詞,通過上文在 ik 配置檔案中提到的如下配置ik analyzer 擴充套件配置
custom/mydict.dic;custom/single_word_low_freq.dic
custom/ext_stopword.dic
location
location其中location
location
是指乙個 url,比如
,該請求只需滿足以下兩點即可完成分詞熱更新。
該 http 請求需要返回兩個頭部(header),乙個是last-modified
,乙個是etag
,這兩者都是字串型別,只要有乙個發生變化,該外掛程式就會去抓取新的分詞進而更新詞庫。
該 http 請求返回的內容格式是一行乙個分詞,換行符用\n
即可。
滿足上面兩點要求就可以實現熱更新分詞了,不需要重啟 es 例項。
可以將需自動更新的熱詞放在乙個 utf-8 編碼的 .txt 檔案裡,放在 nginx 或其他簡易 http server 下,當 .txt 檔案修改時,http server 會在客戶端請求該檔案時自動返回相應的 last-modified 和 etag。可以另外做乙個工具來從業務系統提取相關詞彙,並更新這個 .txt 檔案。
1.建立乙個索引
}'3.錄入資料
4.查詢
}'結果
,"hits": ,
"highlight": },,
"highlight": }]
}}
ik分詞器安裝
官方demo es中plugins最終結果 es中conf analysis ik的最終結果 執行 plugin安裝 1.查詢es程序 ps ef grep elastic 2.殺掉es程序 kill 9 2382 程序號 3.重啟es sh elasticsearch d 1.通過rest方式建立...
ik分詞器安裝
lucene的ik分詞器早在2012年已經沒有維護了,現在我們要使用的是在其基礎上維護公升級的版本,並且開發為elasticsearch的整合外掛程式了,與elasticsearch一起維護公升級,版本也保持一致,最新版本 6.3.0 上傳課前資料中的zip包,解壓到elasticsearch目錄的...
Elasticsearch安裝IK分詞器
安裝方式大概分為兩種 自行編譯 使用elasticsearch rtf版,利用別人編譯好的檔案進行安裝 環境說明 自行編譯的步驟如下 index analysis analyzer ik alias ik analyzer type org elasticsearch index analysis ...