我已经在Solr中成功构建了一个索引,可以使用关键字进行搜索,生成facets,查询facets等功能。这一切都很完美。我使用dismax查询实现了我的搜索,因此它可以搜索预定字段。
然而,我的结果按照仅由关键词相关性计算出的分数排序返回。我想要调整分数,其中字段具有预先确定的值。我认为我可以通过提升查询和提升函数来完成这个任务,但这里的文档:
将此翻译为中文: http://wiki.apache.org/solr/DisMaxRequestHandler#head-6862070cf279d9a09bdab971309135c7aea22fb3 http://wiki.apache.org/solr/DisMaxRequestHandler#head-6862070cf279d9a09bdab971309135c7aea22fb3
并不是特别有帮助。我尝试在我的搜索中添加了一个bq参数:
&bq=media:DVD^2
是的,这是一份电影索引!但是我发现当我不断添加更多时:
&bq=media:DVD^2&bq=media:BLU-RAY^1.5
我发现负面结果-例如那些只有DVD而并非蓝光的电影会受到分数的负面影响。最终所有的一切似乎都会均衡化,我的分数与我开始提高之前相同。
我应该做错了,我想知道"boost"函数是否适用。有没有关于正确使用"boost"的想法?