我正在浏览Apache Flink源代码,发现SingleOutputStreamOperator类是DataStream类的扩展。 从名称本身来看,它看起来像一个运算符,然后为什么不是从StreamOperator扩展而是从DataStream类扩展。 这种设计的动机是什么?
答案 0 :(得分:0)
SingleOutputStreamOperator
表示用一种预定义的输出类型应用于DataStream
的用户定义的转换。从这个意义上讲,它是DataStream
的一种特殊化,因为结果也是数据流,但它是转换的结果。
DataStream
还有两种不同的子类型:KeyedStream
代表为其定义键的流,而SplitStream
包含多个拆分流,您可以从中选择。