看这个例子:
// We create sessions for each id with max timeout of 3 time units
DataStream<Tuple3<String, Long, Integer>> aggregated = source
.keyBy(0)
.window(GlobalWindows.create())
.trigger(new SessionTrigger(3L))
.sum(2);
谁能解释我为什么在这个例子中使用GlobalWindow
(created inside GlobalWindows#assignWindows
) 的一个实例?
似乎对于任何传入的事件 ID,都应该创建自己的窗口,即Window(a)
事件a
、Window(b)
事件b
等,因为据我了解,Flink 正在使用 Window 的实例来关联对应的事件,例如,所有a
事件都应该与之关联Window(a)
。在这种情况下,只有所有a
与Window(a)
a
b
GlobalWindow