首页 > 解决方案 > 在数据流作业中没有接触到目标工作人员的后果是什么?

问题描述

在此处输入图像描述

我的 apache Beam scio 数据流工作要求比我目前的配额更多的工人。作业成功完成,但仅限于 575 名工作人员。不给它所需的 RAM 会有什么后果。更多中间步骤的磁盘 IO?较慢的接收器 IO?这取决于工作的进展情况吗?特别是,我的工作非常简单,实际上有两个步骤:

-aggregateByKey 
-DO IO per key

我可以进行自己的实验,但我也对这项工作的成本感兴趣,因为它不是对时间非常敏感的操作(也就是说,如果它更便宜,我可以让它运行更长时间)......

标签: google-cloud-platformgoogle-cloud-dataflowapache-beam

解决方案


在这种情况下,您的作业将比配额更高时具有更高的运行时间,但所有工作人员执行工作所花费的总时间应该大致相同。

Dataflow 会根据每个 CPU、内存和存储单元的分配时间向您收费。如果总 CPU 小时数、RAM GB 小时数和存储 GB 小时数大致相同,那么您的工作成本应该大致相同。

注意:如果您使用 shuffle 服务,Dataflow 还会按 shuffle 的字节数收费。这也不应该受到工人数量的影响。


推荐阅读