本文源码基于flink1.14 上一篇文章分析了<flink的minibatch微批处理>的源码 乘热打铁分析一下两阶段聚合的源码,因为使用两阶段要先开启minibatch,至于为什么后面会分析到 两阶段聚合的原理,还是简单提一下 如下图,当聚合发生热点的时候,可以在聚合前,先进行一个本地的聚合,先减小数据量,后接正常的数据交换以后聚合,来达到一个解热点的目的, 先来看下两阶段聚合的Calcite优化rule 看下什么情况会匹配上 并且在onmatch方法中会判断开启了minibatch,以及…