我已经事先确定了boost。solr索引中有一个字段叫boost1
。这个提升字段将有一个值从1到10类似于谷歌公关排名。这是应该应用于solr中运行的每个查询的提升。以下是我的索引
- Id 标题
- Boost1
boost字段应该应用于每个查询。我试图实现类似于谷歌公关排名的功能。有没有一种方法可以使用solr来做到这一点?
您可以在查询期间添加boost,例如
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的数量
我认为你需要使用索引时间文档提升。如果您正在索引XML,请查看此内容,如果使用DataImportHandler
则查看此内容。