Apache flink AggregateFunction如何影响Flink中的状态大小?

Apache flink AggregateFunction如何影响Flink中的状态大小?,apache-flink,complex-event-processing,Apache Flink,Complex Event Processing,在Flink中,如果我们在窗口上应用FoldFunction或ReduceFunction,则 急切地聚合元素,每个窗口只存储一个值 有关详细信息,请参阅 对于一个应用程序来说也是如此,因为它似乎也允许您热切地聚合元素并存储它们 是的,AggregateFunction在每个窗口存储一个累加器。谢谢Fabian!我正在使用Trigger函数在全局窗口上应用AggregateFunction。我知道GlobalWindow将保留它摄取的所有元素。因此,我希望通过应用AggregateFunctio

在Flink中,如果我们在窗口上应用FoldFunction或ReduceFunction,则

急切地聚合元素,每个窗口只存储一个值

有关详细信息,请参阅


对于一个应用程序来说也是如此,因为它似乎也允许您热切地聚合元素并存储它们

是的,
AggregateFunction
在每个窗口存储一个累加器。

谢谢Fabian!我正在使用Trigger函数在全局窗口上应用AggregateFunction。我知道GlobalWindow将保留它摄取的所有元素。因此,我希望通过应用AggregateFunction,它将允许每个窗口只保留一个元素,从而减少状态大小。请让我知道我的假设是否正确。谢谢您对
GlobalWindow
的假设不正确。如果定义一个
GlobalWindow
,则一个键的所有元素都将分配给一个窗口(相比之下,时间窗口将导致每个键有多个窗口)。但是,它们不一定要存储,但可以使用
ReduceFunction
AggregateFunction
进行预聚合。如果使用
窗口函数
,所有事件都将被存储。因此,存储所有值不是
GlobalWindow
的属性,而是应用于窗口的函数类型。谢谢。这对我来说现在有意义了!