Solr:如何从查询中获取顶级文档?

时间:2017-03-01 08:33:51

标签: solr

我正在运行Solr 4.10.3并试图从Solr获得前10个文档。我怎样才能做到这一点?我正在考虑子查询,但不知道如何做到这一点,需要帮助。

实施例: 假设查询" car" Solr根据相关性的高分返回250个文档。现在,从250个文档中获取前10个文档,并根据自定义字段来使用它们。

我无法做到:

select?q=car&sort=score desc, pr desc

因为它会对整个250个文档进行排序。那么有什么解决方案吗?

1 个答案:

答案 0 :(得分:0)

我认为你的意思是query reranking?这是您想要使用的内容:

  1. 使用第一个更轻量级的查询来获得基于分数的结果
  2. 获得公平的前x个匹配项,例如2000个
  3. 使用较重的查询再次使用那些,以获得最终得分
  4. 如果你想分两步完成,那就是你需要使用的,就像你说的那样。现在,我不确定你是否需要为你的用例使用查询重新排序,可能只是通过该字段进行提升,或者对函数进行排序应该足够了。