优化 Apache 中的重复转换 Beam/DataFlow

Optimizing repeated transformations in Apache Beam/DataFlow

我想知道 Apache Beam.Google DataFlow 是否足够智能以识别数据流图中的重复转换并且 运行 它们只识别一次。例如,如果我有 2 个分支:

两者都将涉及在底层按键对元素进行分组。执行引擎是否会识别出 GroupByKey() 在两种情况下都具有相同的输入并且 运行 只有一次?或者我是否需要手动确保 GroupByKey() 在这种情况下继续使用它的所有分支?

您可能已经推断,此行为取决于跑步者。每个跑步者实现自己的优化逻辑。

  • Dataflow Runner 目前不支持此优化。