【发布时间】:2015-04-14 23:15:31
【问题描述】:
如果我在 Dataflow 工作器上执行时更改管道选项会发生什么?
PipelineOptions 的公共文档是:https://cloud.google.com/dataflow/java-sdk/JavaDoc/com/google/cloud/dataflow/sdk/options/PipelineOptions
【问题讨论】:
如果我在 Dataflow 工作器上执行时更改管道选项会发生什么?
PipelineOptions 的公共文档是:https://cloud.google.com/dataflow/java-sdk/JavaDoc/com/google/cloud/dataflow/sdk/options/PipelineOptions
【问题讨论】:
PipelineOptions 可以安全地从多个线程访问,并且每个 Dataflow 工作线程都是全局的。您应该只从 PipelineOptions 获取值,而不是更新 PipelineOptions 或改变存储在 Dataflow Worker 上 PipelineOptions 中的任何值。这意味着放置在 PipelineOptions 中的任何对象都必须是线程安全的,因为它可以同时从多个线程访问。请注意,Java 中有许多类型,例如 SimpleDateFormat,它们似乎是线程安全的,但实际上并非如此。
【讨论】: