美文网首页
Elasticsearch之中文分词器插件analysis-ik

Elasticsearch之中文分词器插件analysis-ik

作者: singleZhang2010 | 来源:发表于2021-02-19 17:10 被阅读0次

概述

在使用Elasticsearch搜索关键词的时候,有时候发现一些短语没被分词器识别出来,比如"这本书今年首次公开发售",此时搜 "公开发售",这个短语命中不了,此时需要用到自定义的词库。

analysis-ik 添加自定义词库

  1. 首先在 Elasticsearch的 ik 插件 plugins\analysis-ik\config 目录下创建custom目录,然后创建my.dic文件
    之后,就可以在文件里添加自己想要的词了, 每一个词语一行(编码格式:UTF-8 without BOM 格式)
  2. 修改 ik 的配置文件
    修改IKAnalyzer.cfg.xml文件,如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
    <comment>IK Analyzer 扩展配置</comment>
    <!--用户可以在这里配置自己的扩展字典,多个文件可以用分号分开 -->
    <entry key="ext_dict">custom/mydict.dic</entry>
     <!--用户可以在这里配置自己的扩展停止词字典-->
    <entry key="ext_stopwords"></entry>
    <!--用户可以在这里配置远程扩展字典 -->
    <!-- <entry key="remote_ext_dict">words_location</entry> -->
    <!--用户可以在这里配置远程扩展停止词字典-->
    <!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>
  1. 重启 es 服务
    在启动日志里找到: [Dict Loading] custom/mydict.dic这段信息,就算自定义词库被加载成功了
重启es服务
  1. 在elasticsearch-head中验证一下
验证

就可以在列表中看到"公开发售"

验证

总结

好了,以上就是简单的analysis-ik自定义词库的创建和使用,在搜索中经常会使用到的。

相关文章

网友评论

      本文标题:Elasticsearch之中文分词器插件analysis-ik

      本文链接:https://www.haomeiwen.com/subject/ktyaxltx.html