Dataflow 价格
本页面介绍了 Dataflow 的价格。如需查看其他产品的价格,请参阅价格文档。
如需了解如何使用三年期节省 40% 的费用,或为一年期承诺节省 20%,请参阅我们的承诺使用折扣 (CUD) 页面。
概览
您需要为作业使用的资源支付 Dataflow 使用费。根据您使用的价格模式,资源的计量和计费方式有所不同。
Dataflow 计算资源 | Dataflow Prime 计算资源 |
|
数据计算单元 (DCU) (批量和流式) |
为所有作业付费的其他 Dataflow 资源包括 Persistent Disk、GPU 和快照。
其他服务的资源可能会用于 Dataflow 作业。与 Dataflow 搭配使用的服务可能包括 BigQuery、Pub/Sub、Cloud Storage 和 Cloud Logging 等。
虽然费率是按小时,但 Dataflow 的用量是以秒为单位,每个作业单独计费。用量按小时计算,以便对按秒计算的用量采用每小时价格。例如,30 分钟为 0.5 小时。工作器和作业可能会按照以下部分所述消耗资源。
Dataflow 今后的版本可能采用不同的服务费用或提供不同的相关服务套装。
Dataflow 计算资源
计算资源的 Dataflow 结算包括以下组成部分:
如需详细了解可用的区域及其可用区,请参阅 Compute Engine 区域和可用区页面。
工作器 CPU 和内存
每个 Dataflow 作业至少使用一个 Dataflow 工作器。Dataflow 服务提供两种工作器类型:批量处理和流式处理。批量处理和流式处理工作器的服务费用分开计算。
Dataflow 工作器会使用以下资源,每项资源都按秒计费:
- CPU
- 内存
批量处理和流式处理工作器都是使用 Compute Engine 的特殊资源。但是,Dataflow 作业不会针对由 Dataflow 服务管理的 Compute Engine 资源产生 Compute Engine 费用。Dataflow 服务费用包含这些 Compute Engine 资源的使用费。
您可以替换作业的默认工作器数量。如果您使用自动扩缩,则可以指定要分配给作业的工作器数量上限。系统将根据自动扩缩情况,自动添加和移除工作器及相关资源。
此外,您还可以使用流水线选项替换分配给每个工作器并使用 GPU 的默认资源设置,例如机器类型、磁盘类型和磁盘大小。
FlexRS
Dataflow 为批处理提供了 CPU 和内存折扣价格。Flexible Resource Scheduling (FlexRS) 在单个 Dataflow 工作器池中结合使用常规和抢占式虚拟机,让用户可以使用更便宜的处理资源。FlexRS 还会在 6 小时的窗口期内延迟执行 Dataflow 批量作业,以根据可用资源确定启动作业的最佳时间点。
虽然 Dataflow 使用一组工作器执行 FlexRS 作业,但无论工作器类型如何,您都需要按统一折扣费率(约 40%)支付 CPU 和内存费用(与 Dataflow 常规价格相比)。您可以通过指定 FlexRS 参数,指示 Dataflow 对自动扩缩的批量处理流水线使用 FlexRS。
处理的 Dataflow Shuffle 数据
对于批处理流水线,Dataflow 提供了一种伸缩极强的功能,即 Dataflow Shuffle。该功能在工作器之外对数据进行重排。如需了解详情,请参阅 Dataflow Shuffle。
Dataflow Shuffle 按照 shuffle 期间处理的数据量收费。
Streaming Engine 价格
对于流处理流水线,Dataflow Streaming Engine 将流式重排和状态处理从工作器虚拟机移至 Dataflow 服务后端。如需了解详情,请参阅 Streaming Engine。
Streaming Engine 计算单元
使用基于资源的结算方式时,Streaming Engine 资源以 Streaming Engine 计算单元为单位进行计量。Dataflow 会对每个作业使用的 Streaming Engine 资源进行计量,然后根据该作业使用的总资源计费。如需为作业启用基于资源的结算,请参阅使用基于资源的结算。当您使用基于资源的结算时,系统会自动应用现有折扣。
当您将 Dataflow Prime 与基于资源的结算搭配使用时,您需要根据每个作业使用的资源总量付费,但使用的是数据计算单元 (DCU) SKU,而不是 Streaming Engine 计算单元 SKU。
处理的 Streaming Engine 数据(旧版)
Dataflow 继续支持旧版数据处理式结算。除非您启用基于资源的结算,否则系统将使用数据处理式结算模式对作业进行计费。
Streaming Engine 数据处理结算按处理的流式数据量来衡量使用量,具体取决于以下因素:
- 注入流处理流水线的数据量
- 流水线的复杂性
- 执行 Shuffle 操作或有状态 DoFn 的流水线阶段的数量
系统会将以下内容计为一个字节处理示例:
- 来自数据源的输入流
- 从一个融合流水线阶段到另一个融合阶段的数据流
- 保持在用户定义的状态或用于数据选取的数据流
- 向数据接收器(例如 Pub/Sub 或 BigQuery)输出消息
Dataflow 计算资源价格 - 批处理和 FlexRS
下表包含工作器资源以及为批量和 FlexRS 作业处理的 Shuffle 数据的价格详情。
1 批处理工作器默认配置:1 个 vCPU、3.75 GB 内存、250 GB 永久性磁盘(如果未使用 Dataflow Shuffle)、25 GB 永久性磁盘(如果使用 Dataflow Shuffle)
2 FlexRS 工作器默认配置:2 个 vCPU、7.50 GB 内存、每个工作器 25 GB Persistent Disk,最少两个工作器
Dataflow 计算资源价格 - 流式处理
下表包含工作器资源、处理的 Streaming Engine 数据(旧版)以及流式作业的 Streaming Engine 计算单元的价格详情。
3 流处理工作器默认配置:4 个 vCPU、15 GB 内存、400 GB 永久性磁盘(如果未使用 Streaming Engine),则为 30 GB 永久性磁盘(如果使用 Streaming Engine)。在运行流处理作业时,Dataflow 服务目前限于每个工作器实例 15 个永久性磁盘。最低资源配额是工作器数量与磁盘数量之比为 1:1。
4 Dataflow Shuffle 价格基于数据量调整(应用于数据集重排期间读取和写入操作期间处理的数据量)。如需了解详情,请参阅 Dataflow Shuffle 价格详情。Dataflow Shuffle 价格不适用于使用基于资源的结算方式的 Streaming Engine 作业。
5 Streaming Engine 计算单元:适用于使用 Streaming Engine 和基于资源的结算模式的流式作业。这些作业在 shuffle 期间处理的数据不会产生费用。
处理的 Dataflow Shuffle 数据量调整
费用按 Dataflow 作业计算,具体为对 Dataflow Shuffle 操作期间处理的数据总量的调整量。处理的 Dataflow Shuffle 数据的实际账单费用等于调整后数据量(小于 Dataflow 作业处理的实际数据量)的全价费用。这种差异导致“处理的计费 Shuffle 数据量”指标小于“处理的 Shuffle 数据总数”指标。
下表说明了系统如何进行此类调整:
处理的 Dataflow Shuffle 数据 | 结算调整项 |
前 250 GB | 缩减 75% |
后续的 4870 GB | 缩减 50% |
超过 5120 GB (5 TB) 的部分 | 无 |
例如,如果您的流水线处理的总 Dataflow Shuffle 数据量为 1024 GB (1 TB),那么可计费量的计算方式如下:
250 GB * 25% + 774 GB * 50% = 449.5 GB * regional Dataflow Shuffle data processing rate
如果您的流水线处理的总 Dataflow Shuffle 数据量达到 10240 GB (10 TB),则计费数据量为:
250 GB * 25% + 4870 GB * 50% + 5120 GB = 7617.5 GB
Dataflow Prime 计算资源价格
Dataflow Prime 是一个基于 Dataflow 构建的数据处理平台,可改进资源利用率和分布式诊断。
Dataflow Prime 作业使用的计算资源按数据计算单元 (DCU) 数量计费。DCU 表示为运行流水线而分配的计算资源。Dataflow Prime 作业使用的其他 Dataflow 资源(例如 Persistent Disk、GPU 和快照)单独计费。
如需详细了解可用的区域及其可用区,请参阅 Compute Engine 区域和可用区页面。
数据计算单元
数据计算单元 (DCU) 是一个 Dataflow 用量计量单元,用于跟踪您的作业消耗的计算资源数量。DCU 跟踪的资源包括处理的 vCPU、内存、处理的 Dataflow Shuffle 数据(针对批量作业)和处理的 Streaming Engine 数据(针对流式作业)。与消耗较少资源的作业相比,消耗更多资源的作业的 DCU 用量更高。一个 DCU 相当于在 1 个 vCPU、4GB 工作器上运行一小时的 Dataflow 作业所使用的资源。
数据计算单元结算
系统会根据作业使用的 DCU 总数向您收费。单个 DCU 的价格因您的作业(批量作业还是流式作业)而异。当您将 Dataflow Prime 与基于资源的结算方式搭配使用时,系统会根据使用的资源总量(而非字节数)向您收取费用。
优化数据计算单元用量
您无法为作业设置 DCU 数量。DCU 由 Dataflow Prime 计数。但是,您可以通过管理作业的以下方面来减少使用的 DCU 数量:
- 减少内存消耗
- 使用过滤器、组合器和高效的编码器减少重排步骤中处理的数据量
如需识别这些优化,请使用 Dataflow 监控界面和执行详情界面。
Dataflow Prime 的价格与 Dataflow 价格有何不同?
在 Dataflow 中,您需要为作业使用的不同资源(例如 vCPU、内存、Persistent Disk 以及 Dataflow Shuffle 或 Streaming Engine 处理的数据量)付费。
数据计算单元会将除存储之外的所有资源整合到一个计量单元中。您需要为 Persistent Disk 资源以及根据作业类型(批量作业或流式作业)使用的 DCU 数量付费。如需了解详情,请参阅使用 Dataflow Prime。
使用 Dataflow 价格模式的现有作业会受到什么影响?
您现有的批量和流式作业会继续使用 Dataflow 模型计费。当您将作业更新为使用 Dataflow Prime 时,作业将采用 Dataflow Prime 价格模式,并针对 Persistent Disk 资源和所使用的 DCU 计费。
其他 Dataflow 资源
对于 Dataflow 和 Dataflow Prime,存储、GPU、快照和其他资源的计费方式相同。
存储资源价格
对于流式作业、批量作业和 FlexRS 作业,存储资源按相同的费率计费。您可以使用流水线选项更改默认磁盘大小或磁盘类型。Dataflow Prime 根据下表中的价格单独对 Persistent Disk 计费。
在运行流处理作业时,Dataflow 服务目前仅限每个工作器实例 15 个永久性磁盘。每个永久性磁盘都是单个 Compute Engine 虚拟机的本地磁盘。最低资源配额是工作器与磁盘之间的 1:1 比率。
使用 Streaming Engine 的作业使用 30 GB 启动磁盘。使用 Dataflow Shuffle 的作业使用 25 GB 启动磁盘。对于不使用这些产品的作业,每个永久性磁盘的默认大小为 250 GB(批处理模式)和 400 GB(流处理模式)。
Compute Engine 用量基于平均工作器数量,而 Persistent Disk 用量则基于 --maxNumWorkers
的确切值。系统会重新分配永久性磁盘,使每个工作器挂接的磁盘数量相同。
GPU 资源价格
GPU 资源以相同的费率计费,适用于流式作业和批量作业。FlexRS 目前不支持 GPU。如需了解 GPU 的可用区域和可用区,请参阅 Compute Engine 文档中的 GPU 区域和可用区可用性。
快照
为了帮助您管理流处理流水线的可靠性,您可以使用快照保存和恢复流水线状态。快照用量按存储的数据量计费,具体取决于以下因素:
- 注入流处理流水线的数据量
- 数据选取逻辑
- 流水线阶段的数量
您可以使用 Dataflow 控制台或 Google Cloud CLI 截取流处理作业的快照。使用快照创建作业来恢复流水线状态不会产生额外费用。如需了解详情,请参阅使用 Dataflow 快照。
快照价格
机密虚拟机
Dataflow 机密虚拟机会对工作器 Compute Engine 虚拟机上使用的数据进行加密。如需了解详情,请参阅机密虚拟机概览。
将机密虚拟机用于 Dataflow 会产生额外的每 vCPU 和每 GB 固定费用。
机密虚拟机价格
价格为全球价格,不会因 Google Cloud 区域而异。
非 Dataflow 资源
除了使用 Dataflow 之外,作业还可能使用以下资源(均按各自的价格收费),包括但不限于:
-
Dataflow 作业在流水线执行期间使用 Cloud Storage 来存储临时文件。为避免支付不必要的存储费用,请在 Dataflow 作业用于临时存储的存储桶上关闭软删除功能。如需了解详情,请参阅从存储桶中移除软删除政策。
-
您可以将日志路由到其他目标位置,或者从提取中排除日志。如需了解如何优化 Dataflow 作业的日志量,请参阅控制 Dataflow 日志量。
查看资源使用情况
您可以在资源指标下的作业信息面板中查看与作业关联的 vCPU、内存和 Persistent Disk 资源总数。您可以在 Dataflow 监控界面中跟踪以下指标:
- vCPU 总运行时长
- 总内存使用时间
- 永久性磁盘总使用时间
- 处理的流式传输数据总量
- 处理的 Shuffle 数据总量
- 处理的计费 Shuffle 数据
您可以使用处理的 Shuffle 数据总数指标评估流水线的性能,使用已处理的计费 Shuffle 数据指标来确定 Dataflow 作业的费用。
对于 Dataflow Prime,您可以在资源指标下的作业信息面板中查看作业使用的 DCU 总数。
价格计算器
使用 Google Cloud 价格计算器来帮助了解账单的计算方式。
如果您使用非美元货币付费,请参阅 Cloud Platform SKU 上以您的币种列出的价格。
后续步骤
- 阅读 Dataflow 文档。
- 开始使用 Dataflow。
- 试用价格计算器。
- 了解 Dataflow 解决方案和使用场景。