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 作业,但与 Dataflow 常规价格相比,您只需按 CPU 和内存费用的统一折扣价(约 40%)付费,而无需考虑工作器类型。您可以通过指定 FlexRS 参数,指示 Dataflow 对自动扩缩的批量处理流水线使用 FlexRS。
处理的 Dataflow Shuffle 数据
对于批处理流水线,Dataflow 提供了一个伸缩能力极强的 Dataflow Shuffle 功能,该功能可在工作器之外对数据进行重排。 如需了解详情,请参阅 Dataflow Shuffle。
Dataflow Shuffle 按照 Shuffle 期间处理的数据量收取费用。
Streaming Engine 价格
对于流式处理流水线,Dataflow Streaming Engine 会将流式处理 Shuffle 和状态处理从工作器虚拟机移到 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 Persistent Disk(如果不使用 Dataflow Shuffle)或 25 GB Persistent Disk(如果使用 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 Persistent Disk(如果不使用 Streaming Engine)或 30 GB Persistent Disk(如果使用 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) 的部分 | 无 |
例如,如果您的流水线总共处理了 1024 GB (1 TB) 的 Dataflow Shuffle 数据,则计费数额的计算方式如下:
250 GB * 25% + 774 GB * 50% = 449.5 GB * regional Dataflow Shuffle data processing rate
如果您的流水线总共处理了 10240 GB (10 TB) 的 Dataflow Shuffle 数据,则计费的数据量如下:
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。1 个 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 资源
存储空间、GPU、快照和其他资源的计费方式对 Dataflow 和 Dataflow Prime 而言是相同的。
存储资源价格
对于流式插入、批处理和 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 Monitoring 界面中跟踪以下指标:
- vCPU 总运行时长
- 总内存使用时长
- 永久性磁盘总使用时间
- 处理的流式传输数据总量
- 处理的 Shuffle 数据总量
- 处理的计费 shuffle 数据
您可以使用已处理的总 Shuffle 数据量指标来评估流水线的性能,并使用已处理的计费 Shuffle 数据量指标来确定 Dataflow 作业的费用。
对于 Dataflow Prime,您可以在资源指标下的作业信息面板中查看作业消耗的 DCU 总数。
价格计算器
使用 Google Cloud 价格计算器来帮助了解账单费用的计算方式。
如果您使用非美元货币付费,请参阅 Cloud Platform SKU 上以您的币种列出的价格。
后续步骤
- 阅读 Dataflow 文档。
- 开始使用 Dataflow。
- 试用价格计算器。
- 了解 Dataflow 解决方案和使用场景。