我已经事先确定了提升。我在 solr 索引中有一个名为boost1
. 此提升字段的值介于 1 到 10 之间,类似于 google PR rank。这是应该应用于 solr 中运行的每个查询的提升。这是我索引中的字段
- ID
- 标题
- 文本
- 升压1
boost 字段应该适用于每个查询。我正在尝试实现类似于 Google PR rank 的功能。有没有办法使用 solr 做到这一点?
您可以在查询期间添加提升,例如
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
这可以通过请求处理程序定义添加到默认值,以便它们应用于所有搜索查询。
您可以使用函数查询来改变 boost FunctionQuery的数量
我认为您需要使用index time document boosts。如果您正在为 XML 编制索引,请参阅此内容,如果使用DataImportHandler
.