【发布时间】:2018-11-04 15:36:54
【问题描述】:
在阅读有关使用 Java 处理 Apache Beam 中的流媒体元素时,我遇到了DoFn<InputT, OutputT>,然后遇到了SimpleFunction<InputT, OutputT>。
这两个和我看起来很相似,我很难理解其中的区别。
谁能用通俗的说法解释一下区别?
【问题讨论】:
标签: java apache-beam
在阅读有关使用 Java 处理 Apache Beam 中的流媒体元素时,我遇到了DoFn<InputT, OutputT>,然后遇到了SimpleFunction<InputT, OutputT>。
这两个和我看起来很相似,我很难理解其中的区别。
谁能用通俗的说法解释一下区别?
【问题讨论】:
标签: java apache-beam
从概念上你可以认为SimpleFunction 是DoFn 的一个简单案例:
SimpleFunction<InputT, OutputT>:
@Overrideapply()方法;MapElements.via(simpleFunction) 一个一个地转换/修改元素,为每个元素生成一个输出;DoFn<InputT, OutputT>:
ParDo执行;您可以找到ParDos in the dev guide 的更多具体示例和用例。
This part 提到了MapElements,这是SimpleFunctions 的用例
【讨论】: