Lucene 哪个更好:许多查询还是大量 OR 查询?

Lucene Which would be better: many queries or massive OR query?

问题我有一个很大的关键字列表,我想查看它们是否包含在一个或多个文档中。 (我的用户想知道文档何时发布,是否有任何已保存的关键字)

现在假设有 1,000 多个关键词。

(我倾向于 OR 版本,但我担心如果我走得太远会达到一些查询长度(性能)限制)


一旦我有足够的数据,我将运行一些比较并报告回来。

不过,现在和之后的任何提示都会很棒。

Single Giant Query Pro:您可以通过 Lucene 的评分算法对所有关键字进行排名。

单一巨型查询缺点:您让 Lucene 使用大量内存,因为它需要记住每个子查询的结果(或部分结果)以便为您提供考虑所有关键字的良好排名。 OR 查询越大,Lucene 需要的内存越多,执行起来就越慢。

我想说,如果可能的话,请将其分解,因为 OR 查询是魔鬼(尽管有时有必要处理它们);但基准测试应该比随机询问人们的意见更好:P