ELK--Elasticsearchはikトークナイザープラグインをインストールします

                             ELK--Elasticsearchはikトークナイザープラグインをインストールします

分詞

テキストの段落を個々のキーワードに分割し、検索時に独自の情報をセグメント化し、データベースまたはインデックスライブラリのデータをセグメント化してから、マッチング操作を実行します。
デフォルトの中国語の単語セグメンテーションは、各文字を単語として扱うことですが、これは明らかに要件を満たしていないため、この問題を解決するには、中国語の単語セグメンテーションデバイスikをインストールする必要があります。

  • Elasticsearchの組み込みトークナイザー
  • 標準-デフォルトのトークナイザー、単語セグメンテーション、小文字処理
  • シンプル-文字以外のセグメンテーション(シンボルはフィルタリングされます)によると、小文字の処理
  • 停止-小文字処理、ストップワードフィルタリング(the、a、is)
  • ホワイトスペース-小文字ではなく、スペースに応じて分割
  • キーワード-単語のセグメンテーションなし、出力としての直接入力
  • パターン-通常の式、デフォルト\ W +(文字分割以外)
  • 言語-30を超える一般的な言語の単語セグメンテーションを提供します
  • カスタマーアナライザーカスタムトークナイザー

ikトークナイザー

IKには2種類の粒度があります。

  1. ik_smart:最も粗い分割を行います
  2. ik_max_word:テキストは最も細かい粒度で分割されます

1.ikトークナイザーをダウンロードします

IKトークナイザーのバージョンでは、同じバージョンのESをインストールする必要があります

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.1/elasticsearch-analysis-ik-6.4.1.zip

2.ファイルを解凍してesインストールディレクトリ/ plugin / ikにコピーします

tar -xvf elasticsearch-analysis-ik-6.4.1.zip

ファイル構造 

3、ElasticSearchを再起動します

 

4、テスト結果

期待に沿わない場合は、ikトークナイザーがカスタムシソーラスをサポートします。たとえば、ここで[朱葛小明]は人の名前ですが、シソーラスをカスタマイズできます。

(1)元のシソーラスを変更し、デフォルトのシソーラスファイルmain.docを変更します

(3)新しいシソーラスファイル:新しいシソーラスファイルmy.dicを追加し、ファイルに独自の単語セグメンテーションを追加し、分岐に注意します。次に、ik / configディレクトリのIKAnalyzer.cfg.xmlファイルを変更し、独自のシソーラスファイルに変更します。

 <properties>
    <comment>IK Analyzer 扩展配置</comment>
    <!‐‐用户可以在这里配置自己的扩展字典 ‐‐>
    <entry key="ext_dict">my.dic</entry>
     <!‐‐用户可以在这里配置自己的扩展停止词字典‐‐>
    <entry key="ext_stopwords"></entry>
</properties>

変更後、esを再起動して有効にします。

変更後の効果:

おすすめ

転載: blog.csdn.net/u014553029/article/details/106065465