solr-どのようにしてフィールドブーストを機能させますか?
-
28-10-2019 - |
質問
私はsolrに慣れています。 solr 1.4.1を使用します
私はこのフィールドを持っているschema.xmlを持っています:
job_title
job_description
date_inserted
「job_title」フィールドをより重要にする必要があります。たとえば、「プログラマー」という単語を探している場合は、最初に「job_title」フィールドに「プログラマ」がある結果を日付で注文した結果を表示する必要があります。 「job_description」フィールド。
日付ごとにユーザー注文して一緒にブーストすることは可能ですか?
これを行うために私が注意を払うために必要なものについていくつかの手がかりを教えてください。
よろしくお願いします、
解決
日付ごとに注文を使用して一緒にブーストすることは可能ですか?
いいえ。ブーストは、スコアDESCによるデフォルトのソートに依存しています。異なるソートフィールドを設定すると、スコアリングによってソートをオーバーライドするため、排他的です。
そもそも、日付ごとに「job_title」フィールドに「プログラマー」がある結果を表示する必要があります。次に、「job_description」フィールドに「プログラマー」という単語がある結果を表示する必要があります。
本当にやりたい場合は、2つのクエリです。1つはjob_title、もう1つはjob_descriptionです。しかし、それは通常、物事がsolrで行われる方法ではありません。適切なブーストを使用して単一のクエリを実行して、(ソートの代わりに)スコアリングに影響を与えることができます。 関数クエリは、新しいドキュメントを高める.
次に、ユーザーに日付またはあらゆるフィールドでソートするオプションを提供します。前に説明したように、ユーザーがソートすると、彼はスコアリングとブーストをオーバーライドします。