我们有一个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
答案 0 :(得分:0)
我建议将facet方法设置为枚举。
facet.method=enum
此参数指示在面对字段时要使用的算法/方法类型。
枚举 - 枚举字段中的所有字词,计算集合 与该术语匹配的文档的交集 匹配查询。这是分面的默认(也是唯一)方法 Solr 1.4之前的多值字段。
fc (代表字段缓存)方面计数由计算 迭代与查询匹配的文档并对术语求和 出现在每个文档中。这是单一的默认方法 Solr 1.4之前的有价值字段。
fcs (代表每段的字段缓存)与fc的工作方式相同 底层缓存数据结构是为每个段构建的 单独索引