Amazon CloudSearch
開発者ガイド (API バージョン 2013-01-01)

フィールドの相対的重み付けを利用した Amazon CloudSearch の関連性ランキングのカスタマイズ

選択したフィールドに重みを付けて、title フィールドなどのキーフィールドが一致した場合にドキュメントの関連性 _score を高くし、重要性の低いフィールドが一致した場合の影響を最小限に抑えることができます。デフォルトでは、すべてのフィールドの重みは 1 です。

フィールドの重みは、q.optionsfields オプションで設定します。フィールドは文字列の配列として指定します。フィールドの重みを設定するには、フィールド名に続けてキャレット(^)と正の数値を指定します。フィールドの重みをゼロに設定することはできません。数学関数または数式を使用してフィールドの重みを定義することもできません。

たとえば、title フィールドが一致したときのスコアを plot フィールドが一致したときよりも高くする場合、次のように title フィールドの重みを 2、plot フィールドの重みを 0.5 に設定することができます。

q.options={fields:['title^2','plot^0.5']}

フィールドの重みの制御に加えて、fields オプションは、simple クエリパーサーを使用している場合、または構造化クエリパーサーを使っているときに複合式の一部としてフィールドを指定していない場合に、デフォルトで検索するフィールドセットも定義します。詳細は、『検索 API リファレンス』の「検索リクエストのパラメータ」を参照してください。

式の定義時に重み付けされた関連性スコアを参照するには、_score を使用します。重み付けされた _score 値は、数値フィールド、その他の式、標準の数値演算子および数値関数と組み合わせて使用できます。詳細については、「式の設定」を参照してください。