关于ES中文分词器analysis-ik快速安装

ES中文分词器插件

官方地址:https://github.com/infinilabs/analysis-ik

安装

快速安装

插件安装(将链接最后的版本号换成当前ES版本号):

shell 复制代码
bin/elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/8.4.1

注:

  • 上述地址可正常访问,无需特殊网络配置
  • 如果是通过 Docker 部署的 ES,可参考下述命令
shell 复制代码
# 进入容器
docker exec -it 容器名称 bash
# 切换指定目录
cd /usr/share/elasticsearch
# 执行安装命令
bin/elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/8.4.1
# 退出容器
exit
# 重启ES容器
docker restart 容器名称

手动安装

下载地址:https://release.infinilabs.com/

参考路径:

安装方式:

  1. 下载与当前ES版本相同的分词器安装包
  2. 进入ES安装目录,找到 plugins 文件夹,在里面新建一个名为 analysis-ik 的文件夹,把下载的安装包解压后放进该文件夹中
  3. 重启ES

命令参考:

shell 复制代码
# 进入plugins 文件夹
cd plugins
# 将下载好的文件上传到该目录或这直接下载到该目录
wget https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-9.0.5.zip
# 创建文件夹 analysis-ik
mkdir analysis-ik
# 解压文件到 analysis-ik
unzip elasticsearch-analysis-ik-9.0.5.zip -d analysis-ik/
# 重启ES

应用

ik_max_word 与 ik_smart 的区别

  1. 关联关系
分词器 说明
ik_max_word 最细粒度切分 ,会将文本做尽可能多的拆分,适合 索引阶段(indexing)
ik_smart 智能粗粒度切分 ,会做合并优化,切分结果更少,适合 搜索阶段(searching)

  1. 示例对比

文本:"中华人民共和国"

分词器 结果
ik_max_word 中华, 华人, 人民, 共和, 共和国, 中华人民共和国, ...(多个结果)
ik_smart 中华人民共和国(一个结果,智能合并)

  1. 实际使用场景(推荐配置)
json 复制代码
PUT /news_index
{
  "settings": {
    "analysis": {
      "analyzer": {
        "my_index_analyzer": {
          "type": "custom",
          "tokenizer": "ik_max_word"
        },
        "my_search_analyzer": {
          "type": "custom",
          "tokenizer": "ik_smart"
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "title": {
        "type": "text",
        "analyzer": "my_index_analyzer",
        "search_analyzer": "my_search_analyzer"
      }
    }
  }
}
  • 索引时用 ik_max_word:确保尽可能多的关键词被收录
  • 搜索时用 ik_smart:避免用户输入被过度拆分,提升召回准确率

验证是否生效

json 复制代码
POST /_analyze
{
  "analyzer": "ik_max_word",
  "text": "人工智能"
}
json 复制代码
POST /_analyze
{
  "analyzer": "ik_smart",
  "text": "人工智能"
}

如果都能返回中文分词结果,说明插件安装成功,两个分词器都可用。

相关推荐
IT研究室13 小时前
大数据毕业设计选题推荐-基于大数据的电商物流数据分析与可视化系统-Spark-Hadoop-Bigdata
大数据·hadoop·数据分析·spark·毕业设计·数据可视化·bigdata
渣渣盟13 小时前
Spark自定义累加器实现高效WordCount
大数据·spark·scala
IT毕设梦工厂13 小时前
大数据毕业设计选题推荐-基于大数据的电信客户流失数据分析系统-Hadoop-Spark-数据可视化-BigData
大数据·hadoop·spark·毕业设计·源码·数据可视化·bigdata
huimingBall14 小时前
确定软件需求的方法
java·大数据·elasticsearch·搜索引擎·需求分析·j#
2301_7816686114 小时前
Elasticsearch(高性能分布式搜索引擎)01
分布式·elasticsearch·搜索引擎
健康有益科技18 小时前
慢病管理重构药店价值:数字化平台与物联网技术如何驱动行业升级?
大数据·人工智能·算法·软件工程·健康医疗·零售
fzy00851 天前
教育项目管理工具新趋势:可视化与自动化如何提升效率?
大数据·人工智能·自动化
聚客AI1 天前
95%企业AI失败?揭秘LangGraph+OceanBase融合数据层如何破局!
大数据·图像处理·人工智能·机器学习·语言模型·自然语言处理·数据分析
IT研究室1 天前
大数据毕业设计选题推荐-基于大数据的大学生就业因素数据分析系统-Spark-Hadoop-Bigdata
大数据·spark·课程设计