我正在试图找出在Flink中合并多个流时构成障碍的正确方法。
因此,假设我有4个键控流,每个流计算一些数据的聚合统计数据。接下来,我想将这4个流的结果合并为一个流(Y),并对收到的4个摘要执行一些额外的计算。
问题是如何让 Y 节点等到它收到所有X = N的摘要,然后再继续X = N + 1。 在图片节点 3 发送其摘要X = N晚于节点 4 发送其X = N + 1 所以节点 Y 必须等到它收到节点 3 摘要,同时以某种方式从其他节点缓存X = N + 1的摘要。
我在文档中找不到类似内容,所以我真的很感激任何提示。
答案 0 :(得分:0)
我发现这个任务可以通过简单地执行以下操作来解决:
.keyBy(X)
.countWindow(4)
.fold(...)