我试图了解Flink实际在做什么,但是目前有点困惑。
让我们看一下使用DataSetAPI进行的简单混合哈希联接,其中DataSource 2的每条记录与DataSource 1的一条记录联接,而我们仅计算输出:
我记录了8个TaskManager集群的网络流量:
根据我的理解,加入的混洗阶段是唯一会产生网络流量的事情。因此,我无法理解DataSource 2完成之后的峰值。
此假设似乎是正确的,因为传输的数据总量(25709.0 MB)与两个数据源的总和完全匹配。
另外,传输的数据总和在0-73之间,与数据源1的大小匹配;在73-120之间,与数据源2的大小匹配。
DataSource 2是否有可能在仪表板上将数据标记为已完成后立即开始发送数据?
这对我来说没有多大意义?