如何计算 collection/index 中的所有标记数

How to count all tokens count in an collection/index

我使用 Lucene 5.3.1,我已经为一些文档编制了索引,现在正试图找到一个内置函数来计算 所有标记计数(在 collection/index)

我知道我可以遍历所有文档并对它们的长度求和。但是由于我的复杂算法会增加 运行 时间,所以我试图避免这种方法。我认为 lucene 可能对此有 api...

毕竟,我用谷歌搜索了这个函数(或任何类似的函数),但我找不到任何有用的东西link。

现在的问题是:是否有任何内置函数 returns 集合中所有令牌的数量(即整个索引)??如果没有,还有其他优化方法吗?

感谢任何帮助,谢谢。

最终我找到了解决方案。

我按以下方式使用CollectionStatistics

CollectionStatistics collectionStats = indexSearcher.collectionStatistics("Body");
long token_count = collectionStats.sumTotalTermFreq();

sumTotalTermFreq() 方法 returns 集合中的所有令牌。它适用于任何查询。