google-cloud-platform - 在数据流作业中没有接触到目标工作人员的后果是什么?
问题描述
我的 apache Beam scio 数据流工作要求比我目前的配额更多的工人。作业成功完成,但仅限于 575 名工作人员。不给它所需的 RAM 会有什么后果。更多中间步骤的磁盘 IO?较慢的接收器 IO?这取决于工作的进展情况吗?特别是,我的工作非常简单,实际上有两个步骤:
-aggregateByKey
-DO IO per key
我可以进行自己的实验,但我也对这项工作的成本感兴趣,因为它不是对时间非常敏感的操作(也就是说,如果它更便宜,我可以让它运行更长时间)......
解决方案
在这种情况下,您的作业将比配额更高时具有更高的运行时间,但所有工作人员执行工作所花费的总时间应该大致相同。
Dataflow 会根据每个 CPU、内存和存储单元的分配时间向您收费。如果总 CPU 小时数、RAM GB 小时数和存储 GB 小时数大致相同,那么您的工作成本应该大致相同。
注意:如果您使用 shuffle 服务,Dataflow 还会按 shuffle 的字节数收费。这也不应该受到工人数量的影响。
推荐阅读
- python-3.x - 如何将新文件放在硬盘驱动器上的某个位置(python)
- multithreading - 关于线程通信将任务从被调用的子线程发回主线程
- excel - 如果出现 MsgBox,则停止宏
- rust - 替换结构中的迭代器
- javascript - javascript中的函数参数
- c++ - 如何创建两个具有相同名称和不同返回类型并基于布尔参数运行的函数
- python - 使用产量生成器从列表中删除连续重复项?
- java - 向 Java HTTP 客户端提供自签名 SSL 证书
- aspectj - 方面不会在我的应用程序中围绕存储库触发
- git - 当我尝试推送时,TortoiseGit 要求我输入密码