2011-12-13 39 views
0

我们使用Solr 1.4为用户查询生成结果。结果从包含大约500k个文档的索引中提取。索引不断更新,新文档和旧文档过期。根据相关度得分solr结果和类别

结果页面的按相关性(得分)排序的文档列表,通过根据用户的查询Solr的自动计算。每个文档都属于一个类别(例如,工程,财务,行政管理,数学等),类别ID由Solr存储和索引。

我们想要达到的目的是将文档按相关性排序,但也要以某种方式进行加权,以便至少第一页结果(10,20或50)包含来自尽可能多的类别的文档,以及因为同一类别的文件很少是连续的。

我们搜索了很多,但还没有设法提出任何可行的方案。

非常感谢任何想法。 GK

回答

1

据我所知,这是不可能的Solr中。我的意思是,如果搜索条件更适用于工程项目而不是其他任何项目,则需要根据搜索结果以不同方式人为地提升其他类别。

可以使用field collapsing做在最新的版本与此类似。即您只会从类别中获得X次点击,然后指向“”的链接显示更多像这样的'。

或者,你可以做几个搜索,每个类别一个,并自己“混合它们”。