join和coGroup转换可以读取2个输入数据集并输出一个(" Y" flux)(如果我错了,请纠正我。)
我想处理和更新2个数据集。为此,我计划使用2 coGroup
转换。
但是,出于性能目的,这些转换是否可以在一个(" H" flux)中完成?
此外,随着数据集的更新,我想迭代它们。如果目前无法实现,您是否计划在未来支持这种转型?
答案 0 :(得分:7)
所有Flink DataSet运算符仅支持单个输出,但运算符的输出可由两个或多个后续运算符使用。
有两种方法可以解决您的问题:
Tuple2<FirstType, SecondType>
的返回值。此解决方案如下所示:input1--\ /--> Filter_output1 CoGroup input2--/ \--> Filter_output2
input1 --> PartitionHash --> SortPartition -\-/-> CoGroup1 --> Output1 X input2 --> PartitionHash --> SortPartition -/-\-> CoGroup2 --> Output2
关于迭代,请查看Flink的iteration operators。