2016-04-05 13 views
0

私はこのように、ApacheのSolrのにクエリを行う必要があります。Solrクエリをフィールドプライオリティで調整する方法は?

name:ABCXYZ AND address:Ame* 

私はちょうどname:ABCXYZとクエリが1つのだけの結果で、迅速な対応を受けることがわかります。ただし、上記のクエリの応答時間は、第2フィールドのaddressが含まれています。

Solrまたはクエリをどのように調整して、各フィールドの検索の優先順位を付けることができますか?私の場合、これはの前にnameを検索することを意味します。

+0

試み」デフォルト ">ファイルSolrconfig.xmlでタグ。 –

答えて

1

"name:ABCXYZ"は、クエリが非常に具体的であり、1つの異なる結果をもたらすため、すぐに回答します。通常、 "name:ABCXYZ and address:Ame *"のようなクエリは、nameがABCXYZのすべてのエントリを検索し、さらにアドレスが "Ame"で始まるエントリを検索します。

Solrについては、「名前:ABCXYZとアドレス:Ame *」が1つの結果しか得られなくても、solrはそれ以外のエントリを検索し続けるように設定することができますクエリ文字列全体に一致しますが、文字列の一部と一致します。

これは、おそらく検索があまりにも「親切」であることを意味しますか?

"mm"(最小一致)という名前のクエリパラメータを使用します。このパラメータは、solrconfig.xmlの検索ハンドラで設定できます。このパラメータは、クエリが一致する必要がある句の最小数を指定します。たとえば、mm = 1の場合、クエリは名前が "ABCXYZ"であるエントリだけでなく、 "Ame"で始まるアドレスも検索します。このmmパラメータを調べる必要がありますか?mm = 100%を設定することは可能です私が想像完全一致を見つけるための検索ハンドラ

編集:。。「ミリ」は途中でDisMaxクエリパーサーのある

+0

私はSolrCloudを使用していますが、私はSolrのインスタンスを再起動するために持っているか、単に新しいsolrConfig.xmlをアップロードする必要がありますか? –

+0

こと私は知らないが、http://stackoverflow.com/questions/8126419/updates-to-solrconfig- xml-file-are-not-反映されているように見えるのは、Solrインスタンスを再起動する必要があるようです。 – Brumlebarten

+0

インデックスを再作成する必要はありますか?それは私のために動作しないようだ、応答時間はまだ高いです。 –

関連する問題