在单独的fq中与单个fq参数中具有不同查询条件之间的Solr差异

时间:2018-05-08 13:35:10

标签: solr

我希望以优化的方式使用Solr Filter Query Cache。 在此link中,提到每个fq都单独缓存并单独评估。但是在同一个示例中,作者使用单独的fq参数来添加每个过滤器查询。 例如: fq=color:black &fq=model:Lamborghini &fq=year:[2014 TO *]

所以,我的问题基本上是,而不是上面的例子,如果我这样做:

fq=color:black AND model:Lamborghini AND year:[2014 TO *]

在缓存查询方面,它是否与上述相同?它是否仍会独立缓存每个查询并单独评估它们而不是整个查询(包括AND)?

最后,如果我在filter()部分中使用q方法,那么如何实现相同的结果呢?

1 个答案:

答案 0 :(得分:2)

如果你这样做,只会使用一个条目缓存,缓存的文档将是符合所有3个条款的文档。

如果你的字段的基数很大,并且查询有几个ANDS,那么你可能会注意到,如果你使用'fq整个事情'的方法可能会有更少的缓存命中(因为它不太可能两个q将使用在所有字段中的相同组合),因此在这种情况下,将每个字段放在其自己的fq中可能是首选。