根据Apache Flink的文档:DataStream Transformations。
所有Reduce,Fold,Aggregations都代表从DataStream
转换为DataStream
而非从DataStream
转换为reduce
我想知道为什么?
据我了解,您仍然可以在(非键控)DataStream上执行fold
或min
或max
/ map
(聚合),例如{ {1}}或filter
。
答案 0 :(得分:1)
通常,我们希望根据某些keys
进行一些聚合。例如,假设流的输入是Tuple2(groupId:String,userId:String)。通过使用groupId
作为键的KeyedStream,API提供了计算每个组的用户数的便捷方式。
当然,如果我们只想获取所有输入数据的全局最小userId,我们可以简单地使用DataStream上的map来实现它。