是否有可能在solr中提升mlt查询?

时间:2012-05-20 22:48:08

标签: solr

具体来说,如果我使用solr mlt处理程序(http://wiki.apache.org/solr/MoreLikeThisHandler)和stream.body进行查询以提供源文档,是否有任何方法可以根据文档年龄来提升结果文档?

我已经知道如何使用dismax(http://wiki.apache.org/solr/FunctionQuery#Date_Boosting)进行常规查询,但我无法弄清楚为mlt处理程序执行此操作的神奇咒语。

1 个答案:

答案 0 :(得分:1)

看起来编写mlt处理程序来处理以下两种情况之一:

  1. q=[typical query goodness which can include date boosting]
  2. stream.body=[url]
  3. 如果q存在,stream.body会被忽略,反之亦然,所以不幸的是,如果不修补MoreLikeThisHandler,我认为你不能在一次通话中做你想做的事。


    但是:如果你急需这个,你可以通过两个查询来实现这个目标

    1. 仅为了检索有趣的术语和提升而运行相同的MLT查询(例如mlt.interestingTerms=details&mlt.boost=true&rows=0
    2. 使用(1)中的有趣术语和增强,使用您想要的日期提升功能运行标准的Solr查询(非MLT)。