SOLR在巨大的数据集上进行多层次的透视

时间:2016-02-18 20:34:03

标签: solr facet faceted-search

我有一个要求,我需要转向4个字段。两个字段包含接近50的构面值。其他2个字段具有5000和8000个值。对4个字段进行透视会导致服务器崩溃。

有更好的方法来获取数据吗?

示例查询参数如下所示: &安培; facet.pivot =国家,州,PART_NUMBER,part_code

1 个答案:

答案 0 :(得分:0)

我在这里回答我的问题。如果您找到更好的答案,请提供帮助。 我们可以在索引时连接具有最大数量的facet值的字段。在这种情况下,我们可以加入最后2个具有5000和8000的字段的值,并将其存储在总面数= 5000x8000的新字段中。

现在我们仍然可以使用pivot facet,但可以将最后一个字段限制为我们想要的计数。

示例:& facet.pivot = field1,field2,joined_field3_4& f.joined_field3_4.facet.limit = 100

通过这种方式,组合降低到50x50x100而不是50x50x5000x8000。

以类似的方式,您甚至可以通过更多联接来提高性能。 加入所有字段时的示例(最佳效果):& facet.field = joined_field1_2_3_4& facet = true& facet.limit = 100