在solr 6.4.2中复制期间的Facet查询速度很慢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在solr 6.4.2中复制期间的Facet查询速度很慢相关的知识,希望对你有一定的参考价值。

我们有一个solr核心,我们每30分钟复制一次数据。我正面临一个关于搜索者的问题。每次复制发生时,简单查询都按预期执行,但构面查询需要很长时间才能执行。我启用了冷搜索器设置。

示例构面查询:

2017-12-22 04:40:25.801 INFO(qtp834133664-539)[x:cdaapp] oascSRequest [cdaapp] webapp = / solr path = / select params = {q = sJID:8664459&facet.field = sS&facet.field = sHQLID&facet .field = sFCLID&facet.field = sASIDN&facet.field = sNEx&qt = edismax&facet.mincount = 1&rows = 0&facet = on&wt = json} hits = 15 status = 0 QTime = 14651

2017-12-22 04:40:25.823 INFO(qtp834133664-569)[x:cdaapp] oascSRequest [cdaapp] webapp = / solr path = / select params = {q = sJID:8641232&facet.field = sS&facet.field = sHQLID&facet .field = sFCLID&facet.field = sASIDN&facet.field = sNEx&qt = edismax&facet.mincount = 1&rows = 0&facet = on&wt = json} hits = 13 status = 0 QTime = 11226

答案

我建议将facet方法设置为枚举。

facet.method=enum

此参数指示在面对字段时要使用的算法/方法类型。

枚举 - 枚举字段中的所有术语,计算与术语匹配的文档的集合交集与匹配查询的文档。这是在Solr 1.4之前对多值字段进行分面的默认(且唯一)方法。

fc(代表字段缓存)通过迭代与查询匹配的文档并对每个文档中出现的术语求和来计算构面计数。这是Solr 1.4之前单值字段的默认方法。

fcs(代表每段的字段高速缓存)与fc的工作方式相同,只是为索引的每个段构建基础高速缓存数据结构

以上是关于在solr 6.4.2中复制期间的Facet查询速度很慢的主要内容,如果未能解决你的问题,请参考以下文章

Solr高级查询Facet

Solr聚合查询

8.2Solr API使用(Facet查询)

solr facet 如何不分词

Solr分组聚合查询之Facet

solr如何区间查询