Apache的ParDo与FlatMap相比?

时间:2017-04-27 02:17:00

标签: google-cloud-dataflow apache-beam

Dataflow / Apache Beam中的ParDoFlatMap之间是否存在差异?

我认为两者都将一个函数应用于传入的PCollection的每个元素,并返回迭代;但我想一定有一些区别?

1 个答案:

答案 0 :(得分:7)

FlatMap是一种更简单的操作built as you might expect from ParDo。如果这符合您的需求,那么这是一个不错的选择。

ParDo是元素计算的低级构建块,具有side inputsmultiple output collectionsaccess to the current window等附加功能,可以启动一些非常低级别的回调并提交一系列元素等等。

在实践中,FlatMapParDo的许多用法最终会产生类似的代码批量,但在我看来,使用最简单(最高级别)的转换是最可读的。