搜索时,有没有办法禁用任何查询的评分?
场景是用户通过尝试不同的单词,短语等组合来细化他的查询,并且需要对点击次数的实时(好的,合理地至少快)响应。
当由于得分而有数百万次点击时,搜索时间会减慢很多,但用户实际上并不关心所有这些文档。一旦他看到有1M +点击,他就会开始在查询中添加额外的单词。 “按相关性排序”选项可以让他快速完成此操作,同时在点击次数合理时将评分重新打开。
这可能吗?
我正在使用Lucene.NET 2.9.2,但AFAIK它与Java版本相同。
答案 0 :(得分:4)
试试ConstantScoreQuery。这只会返回命中,而不会对其进行评分。
答案 1 :(得分:0)
在Lucene 2.9中,您可以使用可以执行您想要的自定义收集器(在没有得分的情况下获得命中)。