剛開始接觸ElasticSearch的時候,版本纔是2.3.4,短短的時間,如今都更新到5.0+版本了。分詞和head插件好像用法也不同了,本博客記錄如何配置Elasticsearch的Head插件和使用ik分詞並進行熱更新。node
首先安裝ES5.3.2版本,以前安裝了5.4版本,奈何分詞版本只更新到5.3.2,因而又換回了5.3.2的版本,不過不要緊。ik分詞也會更新。因爲Head插件不和之前的用法同樣,因此,這裏記錄一下如何在5.0版本之後使用Head插件。git
可參考文章 http://blog.csdn.net/yx1214442120/article/details/55102298 github
安裝nodejs環境,安裝grunt,安裝好grunt以後,要在elasticsearch.yml中增長配置:web
http.cors.enabled: true http.cors.allow-origin: "*"
其餘配置修改,參考上文連接中的內容。咱們先用grunt server命令運行head插件瀏覽器
在瀏覽器中打開該地址能夠看到相應的管理界面:bash
安裝IK分詞很簡單,從該地址(https://github.com/medcl/elasticsearch-analysis-ik/releases)下載相對應的版本便可,能夠直接將下載後的源代碼生成的jar包,放在plugins/ik/下。cors
ik分詞的配置中是能夠遠程加載詞庫的,此時新建一個web項目表明遠程詞庫,例如個人詞庫地址爲:elasticsearch
修改ik分詞的配置便可,配置文件路徑:D:\ElasticSearch\plugins\ik\configgrunt
當咱們啓動ES的時候會看到相應的日誌記錄,以下:測試
這個遠程詞庫,IK會按期檢查,若是變化,會從新加載。因爲漢字中是亂碼,因此,我新加一個英文的詞newword。能夠看到,已經從新加載了遠程詞庫。
下面測試一下分詞效果 http://localhost:9200/cnblogs1/_analyze?analyzer=ik_smart&text=侯亮平,遠程詞庫中沒有【侯亮平】,此時解析出是這樣的:
因爲詞庫是延遲更新的,因此添加完詞以後,不會立馬變化。等一會,從新加載以後能夠看分詞效果:
這樣咱們的詞庫熱更新就完成啦。小夥伴們趕忙去試試吧。