数据流/Apache Beam中的ParDo
和FlatMap
之间有区别吗?
我认为两者都对传入的PCollection
的每个元素都应用了一个函数,并返回了iterable;但我想一定有区别吗?
最佳答案
FlatMap
是一个更简单的操作built as you might expect from ParDo
。如果这符合您的需求,这是一个不错的选择。ParDo
是元素级计算的较低级构建块,具有其他功能,例如side inputs,multiple output collections,access to the current window,一些用于启动和提交元素束的非常低级的回调等。
实际上,FlatMap
和ParDo
的许多使用最终都具有类似的代码量,但是在我看来,使用最简单的(最高级别)转换是最易读的。