Cloud Dataflow 价格

true

本页面介绍了 Dataflow 的价格。如需查看其他产品的价格,请参阅价格文档

价格概览

虽然费率是按小时,但 Dataflow 服务的用量是以为单位,每个作业分开计算的。在结算时,用量会以小时来表示(例如 30 分钟表示为 0.5 小时),以便对按秒计算的用量应用小时定价。工作器和作业可能通过以下部分所述的方式消耗资源。

工作器和工作器资源

每个 Dataflow 作业使用至少一个 Dataflow 工作器。Dataflow 服务提供两种工作器类型:批量和流式。批量和流式工作器的服务费用分开计算。

Dataflow 工作器会使用以下资源,每项资源都按秒计费。

批量和流式工作器都是使用 Compute Engine 的专门资源。不过,Dataflow 作业不会为由 Dataflow 服务管理的 Compute Engine 资源发布 Compute Engine 帐单。Dataflow 服务费用将包含这些 Compute Engine 资源的使用费。

您可以替换作业的默认工作器数量。如果您使用自动扩缩,可以指定可分配给某个作业的工作器数量上限。系统将根据容量状况,自动添加和移除工作器及相关资源。

此外,您可以使用流水线选项来替换分配给每个工作器的默认资源设置(机器类型、磁盘类型和磁盘大小)。

Cloud Dataflow 服务

Dataflow Shuffle 操作能够以可扩缩、高效且可容错的方式,根据键对数据进行分区和分组。默认情况下,Dataflow 会使用完全在工作器虚拟机上运行的重排实现,消耗工作器 CPU、内存和永久性磁盘存储空间等资源。

Dataflow 另外还提供了一个扩缩能力极强的可选功能:Dataflow Shuffle。此功能仅可用于批量流水线,并且在工作器之外对数据进行重排。Shuffle 按照处理的数据量收取费用。您可以通过指定 Shuffle 流水线参数来指示 Dataflow 使用 Shuffle。

与 Shuffle 类似,Dataflow Streaming Engine 将流式数据重排和状态处理从工作器虚拟机移到 Dataflow 服务后端进行。您可以通过指定 Streaming Engine 流水线参数来指示 Dataflow 将 Streaming Engine 用于流式流水线。Streaming Engine 的使用量按处理的流式数据量计费,这取决于提取到流式流水线中的数据量以及流水线暂存区的复杂性和数量。将计入处理数据量的数据包括:来自数据源的输入数据流、从一个融合流水线暂存区流入另一个融合暂存区的数据流、始终维持用户定义状态的数据流或用于窗口化的数据流,以及向数据接收器(比如 Pub/Sub 或 BigQuery)发送的输出消息。

Dataflow 还为批处理提供了 CPU 和内存折扣价格选项。Flexible Resource Scheduling (FlexRS) 将常规和抢占式虚拟机组合到单个 Dataflow 工作器池中,使用户可以使用更便宜的处理资源。FlexRS 还会在 6 小时的窗口期内推迟 Dataflow 批量作业的执行,以根据可用资源确定启动作业的最佳时间点。虽然 Dataflow 使用不同工作器的组合执行 FlexRS 作业,但您只需按一个统一折扣价(而非 Dataflow 常规价格)付费,且无需考虑工作器类型。您可以通过指定 FlexRS 参数来指示 Dataflow 对自动扩缩的批量流水线使用 FlexRS。

其他作业资源

除了工作器资源用量外,作业还可能使用以下资源(均按各自的价格计费),包括但不限于:

价格详情

Dataflow 今后的版本可能采用不同的服务费用并/或提供不同的相关服务套装。

如需详细了解可用的区域及其地区,请参阅 Compute Engine 区域和地区页面。

1 批量工作器默认配置:1 个 vCPU、3.75 GB 内存、250 GB 永久性磁盘

2 FlexRS 工作器默认配置:2 个 vCPU、7.50 GB 内存、每个工作器 25 GB 永久性磁盘,最少两台工作器

3 流处理工作器默认配置:4 个 vCPU、15 GB 内存、420 GB 永久性磁盘

4 用于批量流水线的 Dataflow Shuffle 目前在下列区域提供:

  • us-central1(爱荷华)
  • us-east1(南卡罗来纳)
  • us-west1(俄勒冈)
  • europe-west1(比利时)
  • europe-west4(荷兰)
  • asia-east1(台湾)
  • asia-northeast1(东京)

此服务将来会向其他区域推广。

5 Dataflow Streaming Engine 使用“处理的流式传输数据量”作为价格单位。Streaming Engine 目前可在下列区域使用:

  • us-central1(爱荷华)
  • us-east1(南卡罗来纳)
  • us-west1(俄勒冈)
  • europe-west1(比利时)
  • europe-west4(荷兰)
  • asia-east1(台湾)
  • asia-northeast1(东京)
此服务将来会向其他区域推广。

6 2018 年 5 月 3 日之前,Dataflow Shuffle 采用的计费方式是:重排的数据量乘以重排这些数据与将其存储在 Shuffle 内存中所用的总时间;价格是每 GB 每小时 $0.0216。2018 年 5 月 3 日以后,我们将时间因素完全排除,仅按数据集重排过程中 Dataflow 服务基础架构所读取和写入的数据量计算 Shuffle 费用;价格单位是 GB。拥有大型或超大型数据集的用户的总 Shuffle 费用预计会大幅度下降。
为了进一步鼓励用户采用基于服务的 Shuffle,我们推出了前 5 TB Shuffle 数据处理费用减半的优惠。例如,如果您的流水线实际处理了 1 TB 的 Shuffle 数据,则系统仅会按该数据量的 50% (0.5 TB) 计费。如果您的流水线实际处理了 10 TB 的 Shuffle 数据,由于前 5 TB 的数据量按 50% 计费,因此最终将按 7.5 TB 计费。

查看用量

您可以通过 Google Cloud Consolegcloud 命令行工具查看特定作业使用的 vCPU、内存和永久性磁盘资源总量。您可以在 Dataflow Monitoring 界面上跟踪已处理的 Shuffle 数据量和流式数据量的相关指标(实际数据量和计费数据量)。您可以使用实际的 Shuffle 处理数据量评估流水线的性能,使用计费的 Shuffle 处理数据量确定该项 Dataflow 作业的费用。对于处理的流式数据量,实际数据量和计费数据量指标是相同的。

价格计算器

您可以使用 Google Cloud 价格计算器来帮助了解帐单费用的计算方式。