文章目录
前言
1. 下载IK安装包
2. 上传安装包并进行解压
3. IK中文分词测试
前言
没有中文分词器,我们在使用es的时候会有很多不方便的地方,es中对于字符串的默认内置分词是standard类型的,但是这对于中文来说就无能为力了,下面简单介绍一下es中怎么安装IK分词器插件。
1. 下载IK安装包
下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
选择Elasticsearch对应的IK版本:
2. 上传安装包并进行解压
1、这里安装包我们上传到Elasticsearch 文件夹下的plugins目录下
[root@tokgo elasticsearch622]# cd plugins/ [root@tokgo plugins]# ls elasticsearch-analysis-ik-6.2.2.zip [root@tokgo plugins]# unzip elasticsearch-analysis-ik-6.2.2.zip
2、在解压完成后必须删除下载后的压缩包,否则重启es服务时会报错,无法正常加载并将解压后的文件夹重命名为ikchina
[root@tokgo plugins]# rm -rf elasticsearch-analysis-ik-6.2.2.zip [root@tokgo plugins]# mv elasticsearch/ ikchina [root@tokgo plugins]# ls ikchina
3、重新启动es,启动成功后,下面我们来做个简单的实验验证一下
$ ps -aux|grep elasticsearch $ kill -9 3749 $ ./elasticsearch
3. IK中文分词测试
假如我们直接使用standard进行分词,我们使用它对中文进行分词看看有什么效果,执行如下语句
得到的结果如下:我们发现被分成了一个个单一的词,很明显这并不是我们想要的效果,因为单个词汇在文档搜索中意义并不大
安装了中文分词器后,我们再来做如下设置
PUT /my_index { "mappings": { "my_type": { "properties": { "text": { "type": "text", "analyzer": "ik_max_word" } } } } }