0
点赞
收藏
分享

微信扫一扫

IK分词器

IK分词器

分词:即把一段中文或者别的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库中或者索引库中的数据进行分词,然后进行一个匹配操作,默认的中文分词是将每个字看成一个词,比如“我爱BNTang”会被分为"我”,"爱","BN","Tang",这显然是不符合要求的,所以我们需要安装中文分词器ik来解决这个问题,如果要使用中文,建议使用ik分词器!

IK提供了两个分词算法:​​ik_smart​​​和​​ik_max_word​​,其中ik_ smart为最少切分, ik_max_word为最细粒度划分!一会我们测试!

  • 下载地址:​​https://github.com/medcl/elasticsearch-analysis-ik/releases​​
  • 下载完毕之后放入到elasticsearch的插件目录中​​plugins​
  • 放入之后最好全部环境都重启一下

验证是否安装成功可以通过​​elasticsearch-plugin list​

IK分词器_analyzer

进入Kibana控制台

IK分词器_elasticsearch_02

ik_smart

  • 最少切分

GET _analyze
{
  "analyzer": "ik_smart",
  "text": "床前明月光"
}

ik_max_word

  • 最细粒度划分,穷尽词库的可能

GET _analyze
{
  "analyzer": "ik_max_word",
  "text": "床前明月光"
}

这时我们输入​​小灰说Java​

IK分词器_分词器_03

发现小灰给拆开了,这种自己需要的词,需要自己加入到分词器的字典中!

????ik分词器增加自己的配置

  • 进入到es的插件目录找到ik分词器中的​​config​​目录

IKAnalyzer.cfg.xml

IK分词器_分词器_04

编写自己的扩展配置文件,注入到配置文件当中即可

IK分词器_elasticsearch_05

配置完毕之后环境重启,再次输入进行分词即可看到效果我这里就不贴图了


源文件:QQ群598347590,群文件 → ElasticSearch


举报

相关推荐

0 条评论