为什么flink现在不能在Reduce / Fold / Aggregate上支持RichFunction?

时间:2018-02-24 02:43:32

标签: streaming apache-flink

我在github存储库中搜索了RichAggregateFunction,只是在下面找到了。

.aggregate() does not support [[RichAggregateFunction]], since the reduce function is used internally in a [[org.apache.flink.api.common.state.AggregatingState]].

这是否意味着Flink无法在组窗口中合并元素的状态?

1 个答案:

答案 0 :(得分:1)

取决于你的意思"合并"在这里,当您拨打stream.aggregate时,通常会在ProcessWindowFunction中执行此操作。 PWF将是您的第二个参数,它将接收您可以执行其他操作的聚合。

如果您需要以其他方式将聚合元素组合在一起,您可以从aggregate获取流,并对它们执行其他操作(例如ProcessFunction)。