legacy-knowledge-base
公開されました Jul. 2, 2025

Elasticsearchのストップワードであるため、特定の用語を検索しても結果が返されない

written-by

Jose L. Bango

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • 特定の語句を検索すると、一致するものがあるはずなのに、結果が返ってこない。
  • Elasticsearch の設定方法 stopwords.

環境

  • Liferay DXP 7.0-7.4
  • Elasticsearch 2.x-7.x

解決

  • デフォルトでは、Elasticsearchはトークン・ストリームからいくつかの単語を削除しています。 これらの単語はストップワードと呼ばれます。
  • 使用している検索用語が特定の言語(たとえばスペイン語)のリストに表示される場合は、その単語を許可するようにストップワード リストをカスタマイズし、その用語を検索したときに結果を取得する必要があります。
  • これに取り組むには、アナライザーをその言語用に再定義し、 stop フィルタをカスタマイズします。

STOP フィルタをカスタマイズしてLANGUAGE-Xアナライザをカスタマイズする方法。

  • スペイン語を使用していて、リストから「nada」(何もない の意味)を削除したいとします。
  • まず、現在のリスト (spanish_stop.txt) をダウンロードし、任意に編集してください。 この場合、"nada "が出てくる行を削除することです。
  • 次に、 Elasticsearch reference から spanish analyzer をコピーして、ニーズに合わせてカスタマイズしてください。 例(ご自身のユースケースに合わせてアレンジする必要があるかもしれません):
    {
    "analysis": {
    "filter": {
    "spanish_stop": {
    "type": "stop",
    "stopwords_path": "spanish_stop.txt"
    },
    "spanish_stemmer": {
    "type": "stemmer",
    "language": "light_spanish"
    }
    },
    "analyzer": {
    "spanish": {
    "tokenizer": "standard",
    "filter": [
    "lowercase",
    "spanish_stop",
    "spanish_stemmer"
    ]
    }
    }
    }
    }
    なお、 stopwordsstopwords_path に変更しました( 設定可能なパラメータを参照)。
  • アナライザーの準備ができたら、それを適用する必要があります:
    1. コントロールパネル → 設定 → システム設定 に移動します。
    2. Elasticsearchのエントリーを探します。 クリックすると編集できます。
    3. 追加インデックス設定 に移動し、カスタムアナライザーを含むJSONフラグメントをそこにコピーしてください。
    4. 変更内容を保存します。
    5. 新しいアナライザーを適用するために、フルリインデックスを実行します。

追加情報

did-this-article-resolve-your-issue

legacy-knowledge-base