计算Lucene(java)中所有结果的最快方法

npe*_*low 9 java lucene performance search

在Lucene中计算给定查询的所有结果的最快方法是什么?

  1. TopDocs.totalHits
  2. 使用QueryFilter实现和管理过滤器
  3. 实现自定义'计数'收集器.这只是递增collect(int doc)方法中的计数,并为acceptsDocOutOfOrder()方法返回true.所有其他方法都是NOOPS.

由于1.将对所有文档进行评分,并且2.由于加载FieldCache可能会有前期命中,我认为答案是3.看起来奇怪的是Lucene没有提供开箱即用的这样的收集器?