ik分词器 分词原理_elasticsearch-中文分词插件IK

下载&安装

下载

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.2/elasticsearch-analysis-ik-7.6.2.zip

安装

# 进入elasticsearch的插件目录cd plugins# 创建目录 ik 并进入mkdir ik && cd ik# 拷贝或移动刚下载的文件到 ik 目录cp /home/es/download/elasticsearch-analysis-ik-7.6.2.zip .# 解压缩unzip elasticsearch-analysis-ik-7.6.2.zip

完成后重启es

验证分词器

使用crul命令,输入下面的URL地址,验证分词器是否成功。

curl -X GET -H "Content-Type: application/json"  "http://localhost:9200/_analyze?pretty=true" -d'{"text":"我的老家就住在这个屯"}'
f99d3bd6d04b39ee23c34950d3d84b21.png

分词结果

ik_max_word和ik_smart

  • ik_max_word: 将文本按最细粒度的组合来拆分。
  • ik_smart: 将文本按最粗粒度的拆分。

说明:如果不添加分词类别,Elastic对于汉字默认使用standard,将汉字拆分成一个个的汉字,而我们ik则更加的智能,下面通过几个案例来说明。

案例1-ik_smart

curl -X GET -H "Content-Type: application/json"  "http://localhost:9200/_analyze?pretty=true" -d'{"text":"我的老家就住在这个屯","analyzer": "ik_smart"}'

结果

我,的,老家,就住,在,这个,屯

案例2-ik_max_word

curl -X GET -H "Content-Type: application/json"  "http://localhost:9200/_analyze?pretty=true" -d'{"text":"我的老家就住在这个屯","analyzer": "ik_max_word"}'

结果

我,的,老家,就住,住在,在这,这个,屯

由以上两种结果可知,分词结果并不能百分百满足我们的分词需求。

docker环境下安装

说明:一定要保证ElasticSearch和ElasticSearch插件的版本一致

在线安装

# 进入docker容器docker exec -it elasticsearch /bin/bash# 在线下载并安装./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.2/elasticsearch-analysis-ik-7.6.2.zip# 退出并重启镜像exitdocker restart elasticsearch
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值