【发布时间】:2018-01-29 03:34:27
【问题描述】:
背景: 我们有一个非常简单的管道,它从 BigQuery 中读取一些数据(通常约为 300MB)过滤/转换它并将其放回 BigQuery。在 99% 的情况下,此管道会在 7-10 分钟内完成,然后再次重新启动以处理新批次。
问题: 最近,这项工作开始时不时地超过 3 小时,在 2000 次运行中可能一个月 2 次。当我查看日志时,我看不到任何错误,实际上这只是第一步(从 BigQuery 读取)需要这么长时间。
有没有人对如何调试这种情况有任何建议?特别是因为它实际上是从 BQ 读取的,而不是我们的任何转换代码。我们正在使用适用于 Python 0.6.0 的 Apache Beam SDK(也许这就是原因!?)
是否可以为作业定义超时?
【问题讨论】:
-
请附上 Dataflow 作业 ID,以便 Dataflow 团队中的某个人可以查看它并帮助调试性能。
-
感谢@jkff,有问题的慢 job_id 是“2018-01-24_21_26_22-2131680617017922084”。这是同一管道的 ID,但预计执行时间约为 10 分钟:“2018-01-24_23_31_21-15706979146276820485”
-
这里是另一个缓慢的工作示例“2018-01-16_11_06_28-7923202670027546242”(我最终不得不取消)。
标签: google-cloud-dataflow apache-beam