前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >elasticsearch7 IK分词器安装和学习笔记

elasticsearch7 IK分词器安装和学习笔记

原创
作者头像
逆回十六夜
修改2019-07-30 11:13:28
3.1K0
修改2019-07-30 11:13:28
举报
文章被收录于专栏:逆回十六夜

最近学习es的使用,在VMware上面搭建了es的集群,随即打算安装IK分词器:

1.在VMware中将windows的文件拖动到虚拟机中一般通过VMtools,对于CentOS系统,需要安装对应的图形界面才能拖动文件。然而,出于未知原因,本次进行文件拖动会出现文件缺损的情况,需要重装VMtools。但是我拒绝,我下载了WinSCP来进行文件的传输。

2.在CSDN上面下载了IK分词器对应es7的zip包,看网上的教程是可以直接将其复制到plugins/ik的文件夹下的(亲测不行),会报如下的错误:

显然地址是错的,经过资料查询,包是直接解压到plugins的目录下面即可。

成功安装分词器。

IK分词器的使用

给index指定IK分词器:

代码语言:javascript
复制
PUT my_index
{
"settings": {
    "analysis": {
      "analyzer": {"default":{"type":"ik_max_word"}}
    }
  }
}

给field指定IK分词器:

代码语言:javascript
复制
{
  "settings": {
    "number_of_shards": 9,
    "number_of_replicas": 1,
    "analysis": {
      "analyzer": {
        "default": {
          "type": "ik_max_word"
        }
      }
    }
  },
  "mappings": {
    "dynamic": "strict",
    "properties": {
      "title": {
        "type": "text"
      },
      "operate_date": {
        "type": "date"
      },
      "writer": {
        "type": "text",
        "analyzer": "standard"
      },
      "content": {
        "type": "text"
      }
    }
  }
}

我们可以了解到ik分词器有两种分词选择:ik_max_wordik_smart

我查找了相关的资料,在此进行引用:https://blog.csdn.net/weixin_44062339/article/details/85006948

1、ik_max_word

会将文本做最细粒度的拆分,比如会将“中华人民共和国人民大会堂”拆分为“中华人民共和国、中华人民、中华、华人、人民共和国、人民、共和国、大会堂、大会、会堂等词语。

2、ik_smart

会做最粗粒度的拆分,比如会将“中华人民共和国人民大会堂”拆分为中华人民共和国、人民大会堂。

测试两种分词模式的效果:

发送:post localhost:9200/_analyze

测试ik_max_word

{“text”:“中华人民共和国人民大会堂”,“analyzer”:“ik_max_word” }

测试ik_smart

{“text”:“中华人民共和国人民大会堂”,“analyzer”:“ik_smart” }

其他的常见分词器和分词效果汇总:https://segmentfault.com/a/1190000011065897

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • IK分词器的使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档