• ES-Docker部署的ES中安装IK分词器


    前言
    之前写了Docker部署Elasticsearch和Kinbana,但Elasticsearch毕竟是国外的,对分词方面明显跟不上我们的需求,所以在很多时候,我们都会安装分词器插件,如IK分词器、JieBa分词器等,这篇就是经过自己实践安装的IK分词器

    安装步骤
    准备 IK 分词器的安装文件,可以从官方 GitHub 仓库或者 Maven Central 等渠道获取相应版本的 IK 分词器。

    浏览器中输入以下地址即可下载,记得更换自己的版本号,IK分词器版本跟ES版本保持一致

    https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.0/elasticsearch-analysis-ik-6.3.0.zip

    IK分词器安装包下载完毕后,找到docker部署时的插件映射文件夹, 如我的在/opt/volumn/es/sigle/plugins, 将安装包移到plugins下,并解压到指定文件夹中,然后移除zip安装包

    # 将安装包解压至指定目录
    [root@Genterator plugins]# unzip elasticsearch-analysis-ik-7.17.1.zip -d ./elasticsearch-analysis-ik
    Archive:  elasticsearch-analysis-ik-7.17.1.zip
       creating: ./elasticsearch-analysis-ik/config/
      inflating: ./elasticsearch-analysis-ik/config/stopword.dic
      inflating: ./elasticsearch-analysis-ik/config/extra_main.dic
      inflating: ./elasticsearch-analysis-ik/config/quantifier.dic
      inflating: ./elasticsearch-analysis-ik/config/extra_single_word.dic
      inflating: ./elasticsearch-analysis-ik/config/IKAnalyzer.cfg.xml
      inflating: ./elasticsearch-analysis-ik/config/surname.dic
      inflating: ./elasticsearch-analysis-ik/config/extra_single_word_low_freq.dic
      inflating: ./elasticsearch-analysis-ik/config/extra_single_word_full.dic
      inflating: ./elasticsearch-analysis-ik/config/preposition.dic
      inflating: ./elasticsearch-analysis-ik/config/extra_stopword.dic
      inflating: ./elasticsearch-analysis-ik/config/suffix.dic
      inflating: ./elasticsearch-analysis-ik/config/main.dic
      inflating: ./elasticsearch-analysis-ik/plugin-descriptor.properties
      inflating: ./elasticsearch-analysis-ik/plugin-security.policy
      inflating: ./elasticsearch-analysis-ik/elasticsearch-analysis-ik-7.17.1.jar
      inflating: ./elasticsearch-analysis-ik/httpclient-4.5.2.jar
      inflating: ./elasticsearch-analysis-ik/httpcore-4.4.4.jar
      inflating: ./elasticsearch-analysis-ik/commons-logging-1.2.jar
      inflating: ./elasticsearch-analysis-ik/commons-codec-1.9.jar
    [root@Genterator plugins]# ll
    total 4400
    drwxr-xr-x 3 root root     244 Jun  3 19:33 elasticsearch-analysis-ik
    -rw-r--r-- 1 root root 4504811 Jun  3 19:32 elasticsearch-analysis-ik-7.17.1.zip
    # 移除安装包
    [root@Genterator plugins]# rm -rf elasticsearch-analysis-ik-7.17.1.zip


    使用 docker restart [container_name_or_id] 命令重启 Elasticsearch 容器。在重启后,IK 分词器应该已经生效了

    [root@Genterator plugins]# docker restart es
    es

    IK带有两个分词器:

    ik_max_word:会将文本做最细粒度的拆分,尽可能多的拆分出词语
    ik_smart:会做最粗粒度的拆分,已被分出的词语将不会再次被其他词语占有
    # 最细粒度
    GET /_analyze
    {
     "analyzer": "ik_max_word",
     "text": "中国人民共和国"
    }

    # 最粗粒度
    GET /_analyze
    {
     "analyzer": "ik_smart",
     "text": "中国人民共和国"
    }

    为索引设置分词器

    添加分析器之前,必须先关闭索引,添加后再打开索引

    # 关闭分词器
    POST /blog/_close

    # 设置分词器
    PUT /blog/_settings
    {
      # 指定分词器
      "analysis": {
        "analyzer": {
          "ik":{
            "tokenizer":"ik_max_word"
          }
        }
      }
    }

    # 打开索引
    POST /blog/_open
     

  • 相关阅读:
    华为云云耀云服务器L实例评测|企业项目最佳实践之压测 (十一)
    软考通过率低吗?怎么备考?
    高速缓冲存储器Cache的映射方式
    【JavaScript】JS执行机制以及三种对象讲解
    仿`gRPC`功能实现像调用本地方法一样调用其他服务器方法
    Java 8的18个常用日期处理
    【OpenCV 例程200篇】210. 绘制直线也会有这么多坑?
    部署Redis集群
    CAS:385437-57-0 DSPE-PEG-Biotin 磷脂-聚乙二醇-生物素 常用生物活性分子
    10.5 串联型稳压电路(1)
  • 原文地址:https://blog.csdn.net/qq_41625866/article/details/132742948