ElasticSearch-ik分词器

Posted 扬帆去远航

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch-ik分词器相关的知识,希望对你有一定的参考价值。

ElasticSearch-ik分词器

IK分词器安装使用

下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

下载对应版本即可:

安装:

下载箭头中的压缩包就行了,下载之后解压到elasticsearch的plugins的一个文件夹ik(ik文件夹自己创建,可以随意命名,不可用中文名和特殊字符),然后重启elasticsearch生效。

重启ElasticSearch:

ik分词器解释

分词:

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

IK提供了两个分词算法: ik_smartik_max_word

  • ik_smart为最少切分
  • ik_max_word为最细粒度划分:穷尽词库的可能

查看不同的分词效果:

思考:

为什么ik_max_word 分词器会分出国共这个词呢?后边我们会讲到字典。

ZGGCD是一个完整的词,在字典中肯定存在:即最少切分

ZGGCD可以拆分成不同的词,且这些词在字典中肯定存在:即最细粒度划分

字典

查看conf中的IKAnalyzer.cfg.xml文件

我们写自己的字典,然后重启ElasticSearch:

加入自己的字典前后对比:狂神说成为一个关键词。

以上是关于ElasticSearch-ik分词器的主要内容,如果未能解决你的问题,请参考以下文章

ik分词器热更新原理

11个Java开源中文分词器使用方法和分词效果对比

11大Java开源中文分词器的使用方法和分词效果对比

solr7.0.0+IKAnalyzer中文分词器V2012+tomcat9

java如何分词??

分词器的使用