如何開發安裝ik分詞器

2021-09-09 07:29:57 字數 2580 閱讀 2461

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

mvn clean

mvn compile

mvn package

拷貝和解壓release下的檔案:

#/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 analyzer 擴充套件配置

custom/mydict.dic;custom/single_word_low_freq.dic

custom/ext_stopword.dic

location

目前該外掛程式支援熱更新 ik 分詞,通過上文在 ik 配置檔案中提到的如下配置

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 ...