一、前言
把一段文字的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库中或者索引库中的数据进行分词,然后进行一个匹配操作。
默认的中文分词是将每个字看成一个词,这显然是不符合要求的,所以我们需要安装中文分词器ik来解决这个问题。
Elasticsearch之所以模糊查询这么快,是因为采用了倒排索引,而倒排索引的核心就是分词,把text格式的字段按照分词器进行分词并编排索引。为了发挥自己的优势,Elasticsearch已经提供了多种功能强大的内置分词器,它们的作用都是怎样的呢?
二、内置分词器解析
| 分词器 | 作用 |
| Standard | ES默认分词器,按单词分类并进行小写处理 |
| Simple | 按照非字母切分,然后去除非字母并进行小写处理 |
| Stop | 按照停用词过滤并进行小写处理,停用词包括the、a、is |
| Whitespace | 按照空格切分 |
| Language | 据说提供了30多种常见语言的分词器 |
| Patter | 按照正则表达式进行分词,默认是\W+ ,代表非字母 |
| Keyword | 不进行分词,作为一个整体输出 |
这些内置分词器擅长处理单词和字母,所以如果咱们要处理的是英文数据的话,它们的功能可以说已经很全面了!那处理中文效果怎么样呢?下面咱们举例验证一下。
参考:ElasticSearch中文分词,看这一篇就够了_静待花开-CSDN博客_elasticsearch 中文分词
三、安装 ik 分词器
注:ik 分词器下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
1. 解压
unzip elasticsearch-analysis-ik-7.3.2.zip
移动到 es 的 plugins/ik 目录后解压
2. 重启 es
3. plugins/ik/config 下的 main.dic 文件包含所有可分词的中文 27 万多
四、ik 分词器默认两种分词器:ik_smart:最少切分 和 ik_max_word:最细粒度切分(穷尽所有可能)

设置自己的分词器

本文介绍了Elasticsearch的内置分词器,如Standard、Simple、Stop和Keyword等,以及它们在处理英文数据上的适用性。对于中文分词,文章指出内置分词器的不足,并推荐使用IK分词器。通过安装和配置IK分词器,可以实现更精准的中文分词,如ik_smart和ik_max_word两种模式。
874

被折叠的 条评论
为什么被折叠?



