ElasticSearch默认的内置分词器standard是针对英文等拉丁语系设计的,是不支持中文分词的。IK分词器是一个开源的中文分词器插件,丰富和优化了 Elasticsearch 的设计。
ES默认分词器standard对中文分词结果如下:
1、IK分词器的特点
IK分词器是ES的一个插件,有如下特点:
支持细粒度分词 |
IK分词器可将一段中文或英文划分更细粒度的关键字,在搜索的时候会将信息进行分词,然后进行一一匹配操作 |
多种分词模式 |
IK提供了两个分词算法:ik_smart和ik_max_word ik_smart为最少切分,添加了歧义识别功能; ik_max_word为最细切分,能切的都会被切掉 |
自定义词库 |
自定义词库可以提高分词的准确性和召回率,IK 分词器允许用户自定义词典,可以添加新词、调整词频等,以便更好地适应特定的领域或需求 |
2、IK分词器安装
2.1、下载IK分词器插件
插件下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases,可根据ElasticSearch的版本自行选择JK分词器的版本下载,这里因为我的ES版本是7.10.0,所以下载相应版本的JK分词器。
2.2、安装IK分词器插件
将下载的插件文件解压缩到 Elasticsearch 安装目录的 plugins 文件夹中。
2.3、重启ES
出现如下提示表示IK分词器安装成功。
3、IK分词器的分词模式
IK提供了两种分词模式: ik_smart - 细粒度分词、ik_max_word - 智能分词。
ik_smart |
默认的分词模型,最少切分,会将句子尽可能的且为最小的词,可获得细粒度的分词结果 |
ik_max_word |
最细切分,对长词进行进一步的切分。它可以识别更多的词语,可获得更全面的分词结果 |
3.1、ik_smart 分词模式
# IK分词器 ik_smart分词模式 GET _analyze { "analyzer": "ik_smart", "text": "苦海无涯,回头是岸" }
3.2、ik_max_word 分词模式
# IK分词器 ik_max_word分词模式 GET _analyze { "analyzer": "ik_max_word", "text": "苦海无涯,回头是岸" }
标签:ik,IK,smart,分词器,分词,词模式 From: https://www.cnblogs.com/RunningSnails/p/17972970