46

タイヤの宝石を使用したelasticsearchのアナライザーの概念を理解するのに苦労しています。私は実際、これらの検索概念の初心者です。ここで誰かが参考記事を手伝ってくれたり、アナライザーが実際に何をするのか、そしてなぜそれらが使われるのかを説明してくれませんか?

キーワード、標準、シンプル、スノーボールなど、elasticsearch でさまざまなアナライザーが言及されています。アナライザーの知識がなければ、実際に自分のニーズに合ったものを見つけることができませんでした.

4

3 に答える 3

84

簡単にお答えしましょう。

アナライザーは、インデックス時間と検索時間に使用されます。用語の索引を作成するために使用されます。

語句を索引付けするには、語句に分割すると便利な場合があります。アナライザーの登場です。

トークナイザーとトークン フィルターを適用します。トークナイザーは、空白のトークナイザーである可能性があります。各スペースでフレーズをトークンに分割します。小文字のトークナイザーは、文字以外の各文字でフレーズを分割し、すべての文字を小文字にします。

トークン フィルターは、一部のトークンをフィルター処理または変換するために使用されます。たとえば、ASCII 折りたたみフィルターは、ê、é、è などの文字を e に変換します。

アナライザーは、これらすべてを組み合わせたものです。

分析ガイドを読んで、さまざまなオプションを正しく確認してください。

デフォルトでは、Elasticsearch は標準のアナライザーを適用します。すべての一般的な英単語 (および他の多くのフィルター) を削除します。

Analyze APIを使用して、その仕組みを理解することもできます。非常に便利。

于 2012-10-11T18:58:32.620 に答える
0

これはgithub repoの素晴らしいプラグインです。これはAnalyze APIの拡張です。公式のエラスティック プラグインリストで見つけました。

すばらしいのは、すべてのステップの後にすべての属性を持つトークンを表示することです。これにより、アナライザーの構成を簡単にデバッグし、そのようなトークンを取得した理由と、必要なトークンをどこで失ったかを確認できます。

今日より早く見つけたかった。keyword_repeatそのおかげで、トークン トークナイザが正しく機能しないように見える理由がわかりました。icu_transformこの問題は、残念ながらキーワード属性を尊重せず、すべてのトークンを変換した次のトークン フィルター (音訳に使用) によって引き起こされました。このプラグインがなければ、他にどのように原因を見つけることができるかわかりません。

于 2015-06-19T17:22:20.473 に答える