Loading

Windows使用Ik分词器插件

IK分词器插件

什么是Ik分词器?

分词:即把一段中文或者别的划分成一个个关键字,我们在搜索的的时候回把自己的信息进行分词,回把数据库中或者索引库中的数据进行分词,然后进行一个匹配操作,默认的中文分词是将每个字看成一个词。

Ik分词器两种分词模式:

  • ik_max_word: 会将文本做最细粒度的拆分,比如会将"中华人民共和国国歌"拆分为"中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌",会穷尽各种可能的组合;

  • ik_smart: 会做最粗粒度的拆分,比如会将"中华人民共和国国歌"拆分为"中华人民共和国,国歌"。

安装

下载安装 https://github.com/medcl/elasticsearch-analysis-ik/releases ,解压到 elasticsearch下的plugin目录,重启加载即可,可以看到Ik分词器被加载了。

image-20200525232626798

可以通过 elasticsearch-plugin 命令查看加载进来的插件:

image-20200525232828962

在Kibana中使用分词器

GET _analyze
{
  "analyzer": "ik_smart",
  "text": ["我是中国人"]
}


GET _analyze
{
  "analyzer": "ik_max_word",
  "text": ["我是中国人"]
}

查看不同的分词效果,其中 ik_smart 为最少分词效果

image-20200525233334324

ik_max_word 为最细粒度划分!穷尽词库的可能!

image-20200525233501787

问题:

我们输入 “我很喜欢敲代码“,发现 ”敲代码“ 三个字被拆开了。

image-20200525233800577

类似这种需要的次,我们需要自己加入到我们的分词字典当中!

image-20200525234335346

保存完成之后重启 Es和Kibana 访问即可!

posted @ 2020-05-25 23:48  不颓废青年  阅读(675)  评论(0编辑  收藏  举报