在阅读使用Java处理apache beam中的流元素时,我遇到了DoFn<InputT, OutputT>
,然后是SimpleFunction<InputT, OutputT>
。
这两个看起来与我相似,我发现很难理解差异。
有人可以解释外行人的差异吗?
答案 0 :(得分:5)
从概念上讲,您可以认为SimpleFunction
是DoFn
的简单案例:
SimpleFunction<InputT, OutputT>
:
@Override
方法apply()
; MapElements.via(simpleFunction)
逐个转换/修改元素,为每个元素生成一个输出; DoFn<InputT, OutputT>
:
ParDo
; 您可以找到ParDos
in the dev guide的更具体的示例和用例。
This part提及MapElements
,这是SimpleFunctions