elasticsearch使用ansj分詞器


目前elasticsearch的版本已經更新到7.0以上了,不過由於客戶需要5.2.2版本的elasticsearch,所以還是需要安裝的,並且安裝上ansj分詞器。在部署ES的時候,采用容器的方式進行部署。因此需要考慮到映射端口等問題。

關於docker下部署es的步驟就簡單的寫一下:

1、首先是從官方拉去5.2.2的鏡像下來。https://hub.docker.com/_/elasticsearch?tab=tags&page=4

使用命令:

docker pull elasticsearch:5.2.2

2、啟動鏡像,官方的啟動命令是:

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:5.2.2

3、然后訪問即可,curl http://IP:9200顯示“you know ,for search”表示安裝成功。

不過建議修改一下elasticsearch.yml的配置文件,例如:

http.host: 0.0.0.0
# Uncomment the following lines for a production cluster deployment
transport.host: 0.0.0.0
# discovery.zen.minimum_master_nodes: 1

建議打開這兩項,http.host表示打開9200的服務端口監聽,transport.host表示打開9300的服務端口監聽。

上面基本就已經安裝好了,接下來就是安裝分詞器了。

1、首先是去下載分詞器,然后進入容器去安裝。進入容器后默認的當前目錄是/usr/share/elasticsearch目錄,此目錄下是所有的ES包的基本配置。

各個版本的分詞器下載地址:https://github.com/NLPchina/elasticsearch-analysis-ansj

安裝分詞器的步驟是()注意進入容器內執行此命令:

./bin/elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-analysis-ansj/releases/download/v5.2.2/elasticsearch-analysis-ansj-5.2.2.0-release.zip

安裝好之后,就可以在plugins目錄下看到ansj分詞器的配置文件了。

2、接下來是重啟一下ES容器,命令:docker restart es_name

3、開始激活ansj分詞器功能。首先是激活索引功能,使用命令:

curl -XPUT 'localhost:9200/index'

4、激活索引功能之后關閉索引

curl -XPOST 'localhost:9200/_all/_open'

如果不執行第3步驟而是直接執行此步驟的話,會發現報錯。主要是索引的功能沒有激活。

5、加載默認的分詞器

curl -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{
  "index.analysis.analyzer.default.type" : "index_ansj",
  "index.analysis.analyzer.default_search.type" : "query_ansj"
}'

6、最后再次打開索引

curl -XPOST 'localhost:9200/_all/_open'

這樣子整個ansj插件就已經安裝成功了。可以直接使用了。


免責聲明!

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



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