我正在构建一个系统,我只想显示过去几天索引的结果。此外,如果我只想返回几天(数千个文档)的结果,我不想维护一个包含一百万个文档的巨大索引。
另一方面,我的系统在很大程度上依赖于存储在索引中的文档中出现的术语具有真实的分布(因此:真实的 IDF)。
也就是说,我想使用一个小索引来返回结果,但我想使用来自更大索引(甚至外部源)的 IDF 来计算文档分数。
Similarity API 似乎不允许我这样做。idf方法不接收正在使用的术语作为参数。
另一种可能性是使用 TrieRangeQuery 确保显示的文档在最近几天内。同样,我宁愿不维护更大的索引。这种查询也不便宜。