4

現在、solr grouping(http://wiki.apache.org/solr/FieldCollapsing )は、グループを「各グループ内の最上位ドキュメントのスコアで」ソートします。例えば

[...]
"groups":[{
    "groupValue":"81cb63020d0339adb019a924b2a9e0c2",
    "doclist":{"numFound":9,"start":0,"maxScore":4.729042,"docs":[
        {
          "id":"7481df771afe39fab368ce19dfeeb528",
          [...],
          "score":4.729042},
        {
          "id":"c879e95b5f16343dad8b1248133727c2",
          [...],
          "score":4.6635237},
        {
          "id":"485b9aec90fd3ef381f013c51ab6a4df",
          [...],
          "score":4.347174}]
    }},
[...]

代わりに、各グループ内のドキュメントのスコアの合計でグループを並べ替える、すぐに使用できる方法はありますか?例えば

[...]
"groups":[{
    "groupValue":"81cb63020d0339adb019a924b2a9e0c2",
    "doclist":{"numFound":9,"start":0,"scoreSum":13.739738,"docs":[
        {
          "id":"7481df771afe39fab368ce19dfeeb528",
          [...],
          "score":4.729042},
        {
          "id":"c879e95b5f16343dad8b1248133727c2",
          [...],
          "score":4.6635237},
        {
          "id":"485b9aec90fd3ef381f013c51ab6a4df",
          [...],
          "score":4.347174}]
    }},
[...]

関数クエリによるソートのリリース(https://issues.apache.org/jira/browse/SOLR-1297 )により、sum()関数( http:// wiki)を使用する方法があるはずです。 apache.org/solr/FunctionQuery)。ただし、「スコア」フィールドはドキュメントの一部ではないため、十分に近いものではありません。

近くにいるような気がしますが、明らかな部分が欠けています。Solr3.5を使用しています。

4

1 に答える 1

1

これはしばらくの間未解決の問題であるように見えます:https ://issues.apache.org/jira/browse/SOLR-2072 。これはまさに私が話していたものです。Solrの人々にフォローアップする必要があります。

于 2011-12-07T04:39:57.840 に答える