我已经预先确定了提升。我在solr索引中有一个名为boost1
的字段。此提升字段的值将为1到10,类似于Google PR排名。这是应该应用于在solr中运行的每个查询的提升。这是我的索引中的字段
boost字段应该适用于每个查询。我正在尝试实现类似于Google PR排名的功能。有没有办法用solr做到这一点?
答案 0 :(得分:11)
您可以在查询期间添加提升,例如
q={!boost b=boost1}
How_can_I_boost_the_score_of_newer_documents
但是,您可能需要明确添加。
如果您对请求处理程序使用dismax
或edismax
,则可以使用bf(Boost Functions)参数来增强文档。
http://wiki.apache.org/solr/DisMaxQParserPlugin#bf_.28Boost_Functions.29
bf=boost1^0.5
可以使用请求处理程序定义将其添加到默认值中,以便将它们应用于所有搜索查询。
您可以使用函数查询来改变提升量FunctionQuery
答案 1 :(得分:0)
我认为您需要使用index time document boosts。如果您要为XML编制索引,请参阅this;如果使用DataImportHandler
,请参见this。