数据流作业似乎卡住了,因为在最近1小时内未发现任何工人活动

时间:2018-08-27 02:05:28

标签: google-cloud-dataflow

我的数据流批处理作业没有在5小时后结束。仍在取消。

我每10分钟在调度程序中运行一次此类作业。

通常在10分钟内完成。

但是花了5个小时以上!

我的工作是

  

2018-08-26_13_30_17-11724702784238200200

错误日志在这里

Stackdriver
2018-08-27 (06:33:14) Workflow failed. Causes: The Dataflow job appears to be stuck because no worker activity has been se... 2018-08-27 (08:34:08) Workflow failed. Causes: The Dataflow job appears to be stuck because no worker activity has been se... 2018-08-27 (10:34:58) Workflow failed. Causes: The Dataflow job appears to be stuck because no worker activity has been se... Workflow failed. Causes: The Dataflow job appears to be stuck because no worker activity has been seen in the last 1h. You can get help with Cloud Dataflow at https://cloud.google.com/dataflow/support.

4 个答案:

答案 0 :(得分:1)

通常The Dataflow job appears to be stuck because no worker activity has been seen in the last 1h可能是由于设置进度太长所致。只需增加工作人员资源(通过--machine_type参数即可解决该问题。

在我的情况下,我正在安装几个需要构建轮子的依赖项(pystanfbprophet),而在具有1个vCPU和3.75的最小计算机(n1-standard-1)上花费了一个多小时GB RAM)。使用功能更强大的实例(资源多4倍的n1-standard-4)解决了我的问题。

单个作业可能不会卡住,但可能会帮助其他人遇到相同的错误。

答案 1 :(得分:1)

在三种主要情况下可能会发生这种情况: a)某些任务需要一个多小时才能完成。 b)一些任务卡住了。

这通常是由于处理时间太长或进入阻塞状态所致。

调试的最佳方法是检查以前的日志,看看是否有任何错误或意外状态。您似乎已尝试重新运行该作业,但仍然失败。在这种情况下,您可以向被卡住的步骤添加额外的日志,并查看被卡住的数据。

c)Apache Beam /数据流端发生故障。 这是一种罕见的情况。如果您认为这是问题所在,请创建支持记录。

答案 2 :(得分:1)

我刚刚从这个问题中恢复过来。

如其他回复中所述,此错误是由于设置进度过长所致。这可能是 pip 无法解析 @echo off setlocal EnableDelayedExpansion for %%a in (folder\*) do ( echo Processing file = %%~nxa echo Processing file extension %%~xa echo Processing file name = %%~na SET file_extension = %%~xa echo !file_extension! echo %%~xa ) pause 文件中的依赖项。它不会失败;它“永远”试图找到合适的版本,但徒劳无功,导致超时。

  1. 使用必要的包在本地重新创建环境。
  2. 标记满足依赖项的版本。
  3. setup.py明确定义这些版本。

答案 3 :(得分:0)

我不知道为什么这行得通,但是更新setup.py中的程序包依赖关系使工作得以运行。

dependencies = [
    'apache-beam[gcp] == 2.25.0',
    'google-cloud-storage == 1.32.0',
    'mysql-connector-python == 8.0.22',
]```