ElasticSearch入门(七)ElasticSearch的中文分词器

前言

     本章讲解ElasticSearch中文分词器的相关知识

方法

1.概念

中文分词 。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在词这一层上,中文比之英文要复杂得多、困难得多。

范例:英文的分词

POST http://localhost:9200/_analyze

{
	"analyzer": "standard",
	"text": "hello world"
}

分析的结果如下:

ElasticSearch入门(七)ElasticSearch的中文分词器_第1张图片

范例:中文的分词

POST http://localhost:9200/_analyze

{
	"analyzer": "standard",
	"text": "你好,中国"
}

分析的结果如下:

ElasticSearch入门(七)ElasticSearch的中文分词器_第2张图片

很显然,这是不正确的分词方式!

2.IK中文分词器

由于存在上面的中文分词问题,所以我们需要将IK中文分词器的插件下载下来使用。

IK中文分词器插件下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

 

我们这里下载最新版本的插件即可:

ElasticSearch入门(七)ElasticSearch的中文分词器_第3张图片

下载好的压缩包如下:

ElasticSearch入门(七)ElasticSearch的中文分词器_第4张图片

1)首先进入es安装目录下的plugin目录下创建名称为ik的文件夹

ElasticSearch入门(七)ElasticSearch的中文分词器_第5张图片

2)将压缩包中的内容解压到这个文件夹下

ElasticSearch入门(七)ElasticSearch的中文分词器_第6张图片

3)重新启动ES即可

3.中文分词器测试

我们再次测试一下之前的示例:

注意:ik中文分词器的名称为ik_max_word

POST http://localhost:9200/_analyze

{
	"analyzer": "ik_max_word",
	"text": "你好,中国"
}

分析结果如下:
ElasticSearch入门(七)ElasticSearch的中文分词器_第7张图片

很显然,这就是我们想要的结果!

你可能感兴趣的:(ElasticSearch,ElasticSearch)