ElasticSearch5.3安装IK分词器并验证
来源:互联网 发布:阿里云服务器欠费 编辑:程序博客网 时间:2024/05/29 09:41
lasticSearch5.3安装IK分词器
之前使用Elasticsearch安装head插件成功了,但是安装IK分词器却失败了。貌似是ElasticSearch5.0以后就不支持直接在elasticsearch.yml中配置IK了。原因下面会说明。
首先下载:
https://www.elastic.co/downloads/elasticsearch
https://github.com/medcl/elasticsearch-analysis-ik
,最新版本貌似是5.3 了。
第一步 预处理:
- 解压elasticsearch-5.3.0.zip>D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0
- 解压elasticsearch-analysis-ik-5.3.0>D:\programfiles\softtools\elasticsearch\plugins\elasticsearch-analysis-ik-5.3.0
- 编译elasticsearch-analysis-ik插件 cmd>D:\programfiles\softtools\elasticsearch\plugins\elasticsearch-analysis-ik-5.3.0>mvn clean package
第二步 配置:
IK配置,如下图是IK分词器config目录下的配置D:\programfiles\softtools\elasticsearch\plugins\elasticsearch-analysis-ik-5.3.0\config
在D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0\config目录中新建ik文件夹,把上图中的IK配置文件放入ElasticSearch目录中的D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0\config\ik目录下
ik里面的内容就是 第二步:1.IK配置 里面的配置。
3. 配置IK分词器
下图是通过mvn命令编译后生成的zip包
将上图中的zip包放入D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0\plugins\ik (ps:ik目录没有的话自己新建一个就好),进行解压
结果如下图所示:
整个安装就完成了。
第三步 测试:
1. 修改elasticsearch.yml中的配置
设置cluster.name,node.name,同时解开这两个配置的注释
设置http.port:9200,其他不需要增加配置了
2. windows下双击D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0\bin\elasticsearch.bat
不报错说明安装成功。
3. 安装Http连接访问工具,比如火狐插件httpRequester,安装完成后会在火狐浏览器右上角出现插件的标示。
4. 创建索引
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
点击Put按钮,出现图右边的返回值,说明创建索引成功。
5. 进行分词测试:
安装过程遇到的坑:
1.将网上对使用IK的配置放到elasticsearch.yml中就会报如下的错误:
org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException: node settings must not contain any index level settings
这个无论怎么想都不明白,而且网上还没有几个人遇到过这种情况。
2.Caused by: java.lang.IllegalStateException: jar hell!
将IK编译出来的jar,和source.jar两个文件放入elasticsearch的lib里后就出现了,有人说是版本问题,但是我选择的两者都是最新版本,并且对应。这里是因为lib里面有IK了,然后elasticsearch去读取plugin文件夹下的插件的时候又装载了一次,于是就出现了这个问题。将lib里的IK jar包删除,改从plugins里加载就没有问题了。网上也有不少是这样做的,但是确实这么做不正确。
在D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0\logs会看到相应的错误日志。
3. Exception in thread “main” java.lang.IllegalStateException: Could not load plugin descriptor for existing plugin [analysis-ik]. Was the plugin built before 2.0?
Likely root cause: java.nio.file.NoSuchFileException: /home/es/es2/plugins/analysis-ik/plugin-descriptor.properties
出现上面的异常是我一开始把编译出来的jar包放入D:\programfiles\softtools\elasticsearch\elasticsearch-5.3.0\plugins\ik里面了,其实是要把D:\programfiles\softtools\elasticsearch\plugins\elasticsearch-analysis-ik-5.3.0\target\releases\elasticsearch-analysis-ik-5.3.0.zip解压到那个ik目录下面。
4. 为什么没有在elasticsearch.yml配置IK相关的分词属性呢
5. 在github上 https://github.com/medcl/elasticsearch-analysis-ik的使用文档说了:
5.0.0及其以后就不会上面两个分词器了,而使用两个参数去替代,同时根据上面的使用文档来说,作者也没有说明要针对IK配置elasticsearch.yml。
总体来说还是遇到一定坎坷的,网上很多ES的文章对于新版本都不适用了。我从新将5.0.0的安装环境全部删除然后引入最新版本,才搞定了IK分词器。最新版本的ES安装head插件应该没有什么问题了,毕竟head也没有要求要对5.0.0以后的版本进行安装配置的改动。
- ElasticSearch5.3安装IK分词器并验证
- ElasticSearch5.3安装IK分词器并验证
- ElasticSearch5.3安装IK分词器
- Elasticsearch5.5.1安装IK中文分词器
- elasticsearch5.4 ik分词器插件安装
- Elasticsearch5.6.0安装ik分词器
- Elasticsearch5.x安装IK分词器以及热词配置
- Elasticsearch5.4.0 IK分词插件安装详解
- ElasticSearch5.X IK分词器使用
- ElasticSearch5中文分词(IK)
- Elasticsearch5.x windows安装并集成IK、pinyin分词和head插件
- elasticsearch5.5.2手动创建索引并配置ik中文分词器
- ElasticSearch5.0——中文分词插件IK安装
- elasticsearch5.1+IK分词器+Java实现近义词功能
- elasticsearch5.x集群搭建,ik分词器,head插件
- elasticsearch5 插件ik安装
- solr-4.10.3 安装在windows 7 并集成IK分词器
- es ik分词器安装
- leetcode 322. Coin Change 类似背包问题
- poj2142_The Balance
- NYOJ 取石子总结
- 数据结构之二叉查找树的递归和非递归实现的一些方法
- 开发人员面试题
- ElasticSearch5.3安装IK分词器并验证
- [转自Oracle官方技术博客]如何通过dba_hist_active_sess_history分析数据库历史性能问题
- 设计模式
- android fragment 交互
- Python 字符串方法分类详解
- 【转】STL— vector 删除重复结构体元素-- sort和unique
- 26.笔记go语言——beedb库使用
- python中str函数isdigit、isdecimal、isnumeric的区别
- 27.笔记go语言——session和数据存储