在搜索时间内计算lucene得分的哪一部分?

时间:2011-06-21 04:33:31

标签: lucene

  1. 我试图了解lucene在搜索过程中所执行的评分是什么?我看到Lucene TermVector包含大量统计数据,当我搜索一个术语时,如何在查询时间内计算得分?

  2. 在搜索过程中是否使用TermVector及其统计信息?如果是这样的话?

1 个答案:

答案 0 :(得分:1)

Similarity班负责评分文件。

Collector遍历文档。它与Scorer结合使用以分配分数并按这些分数对文档进行排名。记分器实例计算特定条件下的分数。有十几种不同类型的得分手。例如,TermScorer计算原始分数如下:

getSimilarity().tf(f)*weightValue

权重值来自查询。如果在索引时打开规范化(以便查询之间的分数或多或少具有可比性),则在此之后应用规范化。标准化因子是预先计算和缓存的。