Google cloud dataflow 谷歌云数据流自动缩放不起作用

Google cloud dataflow 谷歌云数据流自动缩放不起作用,google-cloud-dataflow,Google Cloud Dataflow,我正在运行一个有800K个文件要处理的数据流作业。 工作id为2018-08-23_07_07_46-4958738268363865409 它报告已成功列出800K文件,但出于某些奇怪的原因,autoscaler仅为其分配了一个工作进程。因为它的处理速度是2/秒,这需要很长时间。 我没有触摸默认的缩放设置,据我所知,这意味着它可以自由缩放到100个工人。 为什么它不能扩展 谢谢 托默 更新: 根据Neri的建议,我开始了一项新的工作(id 2018-08-29_13_47_04-1454220

我正在运行一个有800K个文件要处理的数据流作业。 工作id为2018-08-23_07_07_46-4958738268363865409

它报告已成功列出800K文件,但出于某些奇怪的原因,autoscaler仅为其分配了一个工作进程。因为它的处理速度是2/秒,这需要很长时间。 我没有触摸默认的缩放设置,据我所知,这意味着它可以自由缩放到100个工人。 为什么它不能扩展

谢谢

托默

更新: 根据Neri的建议,我开始了一项新的工作(id 2018-08-29_13_47_04-1454220104656653184),并将autoscaling_算法设置为基于吞吐量,尽管根据文档,它应该默认为基于吞吐量。同样的行为。处理速度是每秒1个元素,而我只有一个工人

如果无法扩展,在云中运行有什么用?

为了实现这一点,请确保使用autoscalingAlgorithm=基于吞吐量的

如果使用“autoscalingAlgorithm”:“NONE”,那么即使数据流作业可以自动缩放,它也会被卡住。否则,您需要在numWorkers上指定所需的工作人员数量

此外,要按您想要的工人数量进行缩放,请确保指定(对于numWorkers和maxNumWorkers)一个等于或低于您的配额的数字,请使用以下方法检查您的配额:

gcloud compute project-info describe

在Stackdriver日志记录中,您看到autoscalingAlgorithm、numWorkers和maxNumWorkers的值是什么?在worker启动中:autoscalingAlgorithm=None。我在带有numWorkers/maxNumWorkers的DataFowStep的日志中没有找到任何条目。我不明白的是为什么它被设置为None。我没有明确地设置它。根据文档,默认值是吞吐量_BASEDHmm,这似乎很奇怪。根据文档,对于批处理过程,只有在使用早期版本的SDK时才会发生这种情况。您使用的是最新的SDK版本(版本1或版本2)吗?您的作业不是流式作业?SDK版本是最新的(2.5.0)。这来自驱动程序日志:INFO:root:从PyPi下载SDK的源发行版INFO:root:执行命令:['python.exe'、'-m'、'pip'、'download'、'-dest'、'…'、'apachebeam==2.5.0'、'-no-deps'、'-no-binary'、':all:']使用缓存保存的c:\users\…\apache-beam-2.5.0收集apache beam==2.5.0。SDK版本不应该是问题,我看到您的新作业只使用一个工作进程,尽管它设置了自动缩放算法。您的作业是在批处理模式还是流式模式下运行?我想是批处理模式,但我真的不知道。我怎么知道?我只是以下几点下面是一个例子