使用Lucene提升新文档

yan*_*isf 6 java lucene information-retrieval

Lucene是否提供了一种提升新文档的方法?

例如,假设Lucene文档包含日期字段.是否有可能在没有用户改变她的查询的情况下,以更高的分数呈现最新的文档?

我不想采用粗略的"按日期排序"解决方案,因为它将完全取消评分算法.

Xod*_*rap 6

你可以看到Lucene in Action.在第二版中,pg.187他们提供了一种方法.基本上,您将要编写自己的扩展查询CustomScoreQuery,并添加一个提升.


rfe*_*eak 3

将文档放入索引时使用 Document.setBoost(float value)。

您可以不断地重新调整现有文档上的值,或者使用随日期递增的浮点值,以便您只需将其应用于插入文档的时间。

例如,从第 1 天文档的提升值 0 开始。每天增加1。这是一个浮点值,每年增加365将持续很长时间。

您可能需要尝试增强的强度才能获得您想要的效果。