2017-04-21 4 views
0

ソルクラウドスコアリングはシャードで計算されます。ソルクラウドスコアリングはシャード内で発生し、全体的なコレクションでは発生しません

私はコレクションと2つのシャードを持っています。私はシャード1に110の文書を、フィールド名に一致するシャード2に90の文書を持っています:

文書のソルジャースコアリングはシャードによって異なりますが、シャードとマージではなく文書全体でスコアを計算するにはsolrが必要です。

たとえば、Johnを検索すると完全一致の2つのレコードが返され、スコアは3.2と2.2になります。代わりに、シャードのコレクションに基づいてスコアリングを作るための方法はあります

答えて

1

あなたは、このようなあなたのsolrconfig.xmlでExactStatsCacheを有効にする必要があります:Solrのが唯一のローカル統計情報を使用しているデフォルトで

<statsCache class="org.apache.solr.search.stats.ExactStatsCache"/> 

、これはSolrのを行いますグローバル統計をスコアリングに使用し、問題を解決する必要があります。

+0

ありがとうございました。私はそれを試み、あなたに知らせるでしょう。 – chimbu

0

あなたはIDF [1]に興味があります。 これにより、同じIDFに基づいて、異なるシャード間でドキュメントを正確にスコアリングすることができます。

)適用された場合( 3)別のブーストを関与用語の 1)さまざまなフィールド長 2)異なる用語頻度:

は、このような場合でも、「完全に一致して文書」に異なるスコアを持つことができる心に留めておきます

いいえ、お返事ありがとうございます。 [1] https://cwiki.apache.org/confluence/display/solr/Distributed+Requests

+0

私は、同じスコアを持つために完全一致文書が必要です。 Exactstatscacheを試みます。 – chimbu

+0

tf、idf、?のような特定のスコアリングパラメータを無効にする方法はありますか? – chimbu

関連する問題