Solr中几个与一个过滤器查询的性能差异

时间:2014-06-05 21:03:01

标签: http search post solr filter

在提供多个过滤查询作为单独的fq参数与提供与AND加入的所有约束的单个过滤查询之间是否存在任何性能或其他差异?

E.g。 fq=field1:foo&fq=field2:barfq=(field1:foo) AND (field2:bar)

显然第一种方法更具可读性和可管理性,但我通过POST发送长查询(次优,但有理由),我使用的库不能很好地处理POST数组参数:它们来了出自fq[0]=...&fq[1]=...,而Solr无法识别。因此,我考虑将所有内容加入到单个fq参数中以避免这种情况,并想知道除了是一个丑陋的拐杖之外还有其他任何后果。

如果重要,Solr版本是4.5

1 个答案:

答案 0 :(得分:1)

对于2个查询,您将获得相同的结果:     E.g. fq=field1:foo&fq=field2:bar vs. fq=(field1:foo) AND (field2:bar)

但是对于性能问题,您应该更喜欢将您的请求拆分为多个fq! :)对我来说一直都比较快!我还要问你use solr Filters他们很高兴优化请求速度!享受solr! :)