为什么数据流使用额外的磁盘?

时间:2018-03-28 04:20:51

标签: google-cloud-dataflow

当我看到数据流计算引擎实例的详细信息时,我可以看到正在使用的两类磁盘 - (1)引导磁盘和本地磁盘,以及(2)其他磁盘。

我可以看到我使用diskSizeGb选项指定的大小决定了“引导磁盘和本地磁盘”类别下单个磁盘的大小。我不那么繁重的工作是使用8个额外的40GB磁盘。

使用的附加磁盘是什么,是否可以限制其大小/数量?

2 个答案:

答案 0 :(得分:1)

Dataflow将为您的作业创建Compute Engine VM实例,也称为workers

处理输入数据并存储临时数据each worker may require up to 15 additional Persistent Disks

每个永久磁盘的默认大小在批处理模式下为250 GB,在流模式下为400 GB。 40GB与默认值相差很远

在这种情况下,Dataflow服务将为您的工作人员提供更多磁盘。如果要在工作人员和磁盘之间保持1:1的比例,please increase the ‘diskSizeGb’ field.

答案 1 :(得分:0)

现有的答案说明了多少个磁盘以及有关磁盘的信息-但是并不能回答主要问题:为什么每个工作人员有那么多磁盘?

为什么,每个工作人员数据流是否需要几个磁盘?

Dataflow为流作业进行负载平衡的方式是将一系列密钥分配给每个磁盘。每个密钥的持久状态存储在这些磁盘中。

如果分配给其永久性磁盘的范围的容量非常大,则可能会使工作程序超载。为了实现负载平衡,Dataflow可以通过将永久磁盘转移到另一个工作器来将范围从一个工作器移动到另一个工作器。

所以这就是Dataflow每个工作人员使用多个磁盘的原因:因为这允许它通过将磁盘从工作人员移动到工作人员来进行负载平衡和自动扩展。