es聚合数据丢失

Elasticsearch | 作者 cjzhangfu | 发布于2018年09月10日 | 阅读数:1247

es使用时间直方图聚合的时候,求count时数据缺少,sum_other_doc_count是100多,然后调大聚合的返回size就可以了,想问一下这个问题的最终解决方法是啥,不可能每次都得预判这个size吧。
已邀请:

medcl - 今晚打老虎。

赞同来自:

在没有得到 size 是多少的情况下,保守一点比较好,不要一下子设置很大的 size。

ghnjk

赞同来自:

时间直方图聚合的功能没使用过, 不过,看起来说的应该是ES普通的聚合查询因为是先分布式查询每个shard的top size个值后, 在协调节点再重新汇总选择top size个结果集返回。这个过程导致, 当size值小于term的基数时,结果是近似的。
6.2后好像出了一个 Composite aggregation获取所有term的可能(没有具体用过)。
原因:
Document counts are approximateedit
As described above, the document counts (and the results of any sub aggregations) in the terms aggregation are not always accurate. This is because each shard provides its own view of what the ordered list of terms should be and these are combined to give a final view. Consider the following scenario:

 

要回复问题请先登录注册