我使用 Lucene 5.3.1,并且已经对一些文档建立了索引,现在正在尝试找到一个内置函数来计算所有标记计数(整个集合/索引)
我知道我可以遍历所有文档并对它们的长度进行求和。但由于我的复杂算法会增加运行时间,因此我试图避免这种方法。我认为 lucene 可能有一个 api 用于此...
毕竟,我用谷歌搜索了这个函数(或任何类似的函数),但我找不到任何有用的链接。
现在的问题是:是否有任何内置函数可以返回集合中所有 token 的数量(即整个索引)?如果没有,还有其他最佳方法吗?
感谢任何帮助,谢谢。
最佳答案
最终我找到了解决方案。
我按以下方式使用CollectionStatistics
:
CollectionStatistics collectionStats = indexSearcher.collectionStatistics("Body");
long token_count = collectionStats.sumTotalTermFreq();
sumTotalTermFreq()
方法返回集合中的所有 token 。它可以修复任何查询。
关于java - 如何计算集合/索引中的所有 token 计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40775700/