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插件就已经安装成功了。可以直接使用了。
最新文章
- .net 高效开发实用工具
- API接口:分页
- LintCode Interleaving String
- 16.iOS APP图标和启动画面尺寸
- APP Widget的开发
- 实时监控log文件
- 第二十八课:focusin与focusout,submit,oninput事件的修复
- pyhton读取json格式的气象数据
- Dependency Injection学习笔记
- C读取配置文件
- LINUX 文件系统如何存储文件 图解
- POJ 3104 Drying 二分
- 使用API网关构建微服务
- Tornado源码探寻(请求到来)
- underscorejs-find学习
- iOS speex
- SQL基础常用语法
- Java程序员的情书
- Nginx下载服务器配置文件
- 理解IO、NIO、 AIO
热门文章
- SpringBoot整合MyBatis与MySql8.0
- DDD(Domain Driven Design) 架构设计
- docker 挂载主机目录 -v 和 --mount区别
- 【IntelliJ IDEA学习之八】版本控制之SVN
- 解决mybatis中#{}导致的The error may involve defaultParameterMap的问题
- 笔记:Map(就是用来Ctrl+C,V的)
- [转帖]vagrant 添加带版本号的 box
- Win 10卡顿怎么办?解决win10卡顿的方法大汇总
- GoF的23种设计模式之结构型模式的特点和分类
- 规则引擎drools封装