Elasticsearch 安裝部署 IK 分詞器

  1. 下載 elasticsearch-analysis-ik 安裝包

    下載地址: https://github.com/medcl/elasticsearch-analysis-ik/releases

  2. 安裝 IK 分詞器
    1. 自動安裝
      cd /opt/cloudera/parcels/ELASTICSEARCH/bin
      ./elasticsearch-plugin install -y https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.0.1/elasticsearch-analysis-ik-7.0.1.zip
      
    2. 手動安裝
      cd /opt/cloudera/parcels/ELASTICSEARCH/plugins
      wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.0.1/elasticsearch-analysis-ik-7.0.1.zip
      # 等待下載完成
      mkdir analysis-ik
      unzip -d analysis-ik/ elasticsearch-analysis-ik-7.0.1.zip 
      mv analysis-ik/config/ analysis-ik/analysis-ik
      mv analysis-ik/analysis-ik/ ../config/
      rm -rf elasticsearch-analysis-ik-7.0.1.zi
      
  3. ik_max_word 和 ik_smart 兩種分詞模式
    1. ik_max_word 將文本做最細粒度的拆分。

      例如: ik_max_word 會將 “中華人民共和國人民大會堂” 拆分爲 "中華人民共和國、中華人民、中華、華人、人民共和國、人民、共和國、大會堂、大會、會堂"等詞語。

      {"text":"中華人民共和國人民大會堂","analyzer":"ik_max_word"}
      

    2. ik_smart 會做最粗粒度的拆分。

      例如: ik_smart 會將"中華人民共和國人民大會堂"拆分爲"中華人民共和國、人民大會堂"。

      {"text":"中華人民共和國人民大會堂","analyzer":"ik_smart"}
      

  4. 配置自定義詞庫
    1. 新建自定義詞庫文件

      ${ELASTICSEARCH_HOME}/config/analysis-ik 目錄下新建 custom/mydict.dic 文件(注意文件格式爲 utf-8,不要選擇utf-8 BOM),可以在 my.dic 文件 中自定義詞彙。

    2. 修改配置文件 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>
      
    3. 重啓 ES 服務後測試分詞效果
      {"text": "葡萄美酒夜光杯,欲飲琵琶馬上催。醉臥沙場君莫笑,古來征戰幾人回?","analyzer": "ik_smart"}
      

      自定義詞庫加入 葡萄美酒夜光杯 前:

      自定義詞庫加入 葡萄美酒夜光杯 後:

  5. 配置熱更新 IK 分詞
    1. 安裝http服務, 創建遠程擴展字典
    2. 修改配置文件 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">http://192.168.1.101/analysis-ik/mydict.dic</entry>
      	<!--用戶可以在這裏配置遠程擴展停止詞字典-->
      	<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
      </properties>
      
    3. 重啓 ES 服務後測試遠程分詞效果
      [root@node01 analysis-ik]# cat mydict.dic 
      欲飲琵琶馬上催
      醉臥沙場君莫笑
      古來征戰幾人回
      

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章