![]() |
1
1
用这个怎么样
如果有许多存储桶,复合聚合将帮助您使用
|
![]() |
2
1
检查你的弹性折旧日志文件。您可能会收到如下警告:
search.max_buckets是一个动态集群设置,默认为7.0中的10000个buckets。 现在,这在任何地方都没有记录,但在我的经验中:分配超过10000个存储桶会导致查询终止,但是在那一刻之前,您将得到已经获得的结果。这就解释了结果中缺少的数据 使用复合聚合将有助于提高最大存储桶数。小心点,这样可以使整个集群崩溃,因为每个桶(RAM)都有成本。不管您是否实际使用了所有分配的存储桶,您只能使用空的存储桶崩溃。 见: https://www.elastic.co/guide/en/elasticsearch/reference/master/breaking-changes-7.0.html#_literal_search_max_buckets_literal_in_the_cluster_setting https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket.html https://github.com/elastic/elasticsearch/issues/35896 |
![]() |
3
0
结果表明,问题不是由于子聚集,而是弹性搜索的一个实际特征。我们使用5个碎片,当使用碎片时,聚合只返回近似结果。 我们已将此问题复制,并将其发布到 Elastic discuss forum . 在那里,我们了解到聚合并不总是返回所有的数据,它有一个指向 documentation 这里更详细地解释了这一点。
我们还了解到,仅使用1个碎片就可以解决问题,当这不可能时,参数
|
![]() |
Dinosaurius · 如何计算“value”大于0的桶总数? 7 年前 |
![]() |
David Ambler · 进一步过滤聚合 7 年前 |
![]() |
Sriram · Elasticsearch数组值计数聚合 8 年前 |