gongdear

gongdear的技术博客

欢迎大家参观我的博客
  menu
104 文章
89355 浏览
3 当前访客
ღゝ◡╹)ノ❤️

给Docker启动的es镜像安装ik分词器

首先查看https://github.com/medcl/elasticsearch-analysis-ik
寻找自己es版本的ik分词器,我的es是6.8.0版本 所以执行以下指令
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.8.0/elasticsearch-analysis-ik-6.8.0.zip
image.png
安装结束后会自动提示安装
安装结束后重启es镜像
在head的插件界面会看到刚安装好的ik

image.png

接下来就可以设置分词字典
image.png

image.png

创建索引

curl -XPOST http://localhost:9200/index/_mapping -H 'Content-Type:application/json' -d'

{
        "properties": {
            "content": {
                "type": "text",
                "analyzer": "ik_max_word",
                "search_analyzer": "ik_smart"
            }
        }

}'
  1. ik_max_word 和 ik_smart 什么区别?

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

ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”,适合 Phrase 查询。

宝剑锋从磨砺出,梅花香自苦寒来.