Elasticsearch 6.8.13 安装中文分词器ik
安装Elasticsearch (已成功安装的略过)
使用如下命令可以用docker方式安装Elasticsearch
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:6.8.13
访问浏览器显示如下,则说明安装成功。
安装分词工具ik
方法1 下载压缩包安装
下载网址:https://github.com/medcl/elasticsearch-analysis-ik/releases
下载后上传宿主机位置:/home/infoadmin/elasticsearch-analysis-ik-6.8.13.zip
如下命令拷贝宿主机文件到容器内:
docker cp /home/infoadmin/elasticsearch-analysis-ik-6.8.13.zip elasticsearch:/usr/share/elasticsearch/plugins/ik
进入容器:
docker exec -it elasticsearch bash
解压:
cd /usr/share/elasticsearch/plugins/ik/ && unzip elasticsearch-analysis-ik-6.8.13.zip
解压之后,不用重启。
方法2 网络安装
进入容器后,输入如下命令:
/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.8.13/elasticsearch-analysis-ik-6.8.13.zip
注意:网络方式 5.5.1版本以上才支持
我在容器中执行,报错如下。没进一步排查,貌似显示是网络问题。直接使用下载压缩包方式。
验证测试
命令行下 添加名为fenci的map数据:
curl -XPOST http://you_url:9200/index/fenci -H 'Content-Type:application/json' -d' { "properties": { "content": { "type": "text", "analyzer": "ik_max_word", "search_analyzer": "ik_smart" } } }'
命令行下 添加2条测试数据
curl -XPOST http://you_url:9200/index/fenci/1 -H 'Content-Type:application/json' -d' {"content":"美国留给伊拉克的是个烂摊子吗"} '
curl -XPOST http://you_url:9200/index/fenci/3 -H 'Content-Type:application/json' -d' {"content":"中韩渔警冲突调查:韩警平均每天扣1艘中国渔船"} '
命令行下 查询‘’国‘’ 字出现次数。
curl -XPOST http://you_url:9200/index/_search -H 'Content-Type:application/json' -d' { "query" : { "match" : { "content" : "国" }}, "highlight" : { "pre_tags" : ["<tag1>", "<tag2>"], "post_tags" : ["</tag1>", "</tag2>"], "fields" : { "content" : {} } } }'
执行结果:
文字均为博主原创,转载请联系博主,谢谢!