Dataflow 价格

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

价格概览

虽然费率按小时计算,但 Dataflow 服务的用量却是以为单位,且每个作业分开计算。为了便于将按秒计算的用量转换为以小时结算,我们会以小时来表示用量(例如 30 分钟表示为 0.5 小时)。工作器和作业消耗资源的方式详见以下部分所述。

工作器和工作器资源

每个 Dataflow 作业至少使用一个 Dataflow 工作器。Dataflow 服务提供两种工作器类型:批量处理和流式处理。批量处理和流式处理工作器的服务费用分别收取。

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

批量处理和流式处理工作器都是使用 Compute Engine 的特殊资源。不过,Dataflow 作业不会因为使用 Dataflow 服务管理的 Compute Engine 资源而产生 Compute Engine 使用费。Dataflow 服务费用将包含这些 Compute Engine 资源的使用费。

您可以替换作业的默认工作器数量。如果您使用自动扩缩,还可以指定可分配给某个作业的最大工作器数量。系统将根据自动扩缩激发机制,自动添加和移除工作器及相关资源。

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

Dataflow 服务

Dataflow Shuffle 操作能够以可扩缩、高效且可容错的方式,按键值对数据进行分区和分组。默认情况下,Dataflow 使用的重排操作完全是在工作器虚拟机上运行,此操作会使用工作器 CPU、内存和 Persistent Disk 存储空间等资源。

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 Persistent Disk

2 FlexRS 工作器默认配置:2 个 vCPU、7.50 GB 内存、每个工作器 25 GB Persistent Disk,最少两个工作器

3 流式处理工作器默认配置:4 个 vCPU、15 GB 内存、420 GB Persistent Disk

4 目前在下列地区,批量处理流水线可使用 Dataflow Shuffle:

  • us-west1(俄勒冈)
  • us-central1(爱荷华)
  • us-east1(南卡罗来纳)
  • us-east4(北弗吉尼亚)
  • northamerica-northeast1(蒙特利尔)
  • europe-west2(伦敦)
  • europe-west1(比利时)
  • europe-west4(荷兰)
  • europe-west3(法兰克福)
  • asia-southeast1(新加坡)
  • asia-east1(台湾)
  • asia-northeast1(东京)
  • australia-southeast1(悉尼)

此服务将来会陆续向其他地区推广。

Dataflow Shuffle 价格根据用量调整幅度(应用到在数据集重排过程中执行读写操作期间处理的数据量)计算。如需了解详情,请参阅 Dataflow Shuffle 价格详情

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

  • us-west1(俄勒冈)
  • us-central1(爱荷华)
  • us-east1(南卡罗来纳)
  • us-east4(北弗吉尼亚)
  • northamerica-northeast1(蒙特利尔)
  • europe-west2(伦敦)
  • europe-west1(比利时)
  • europe-west4(荷兰)
  • europe-west3(法兰克福)
  • asia-southeast1(新加坡)
  • asia-east1(台湾)
  • asia-northeast1(东京)
  • australia-southeast1(悉尼)
此服务将来会陆续向其他地区推广。

Dataflow Shuffle 价格详情

费用按 Dataflow 作业计算,以用量调整幅度为基础(应用到在 Dataflow Shuffle 操作期间处理的数据总量)。处理的 Dataflow Shuffle 数据的实际帐单费用等于调整后数据量(小于 Dataflow 作业处理的实际数据量)的全价费用。这种差异会导致 Dataflow 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 * 地区 Dataflow Shuffle 数据处理速率。如果您的流水线总共处理了 10240 GB (10 TB) 的 Dataflow Shuffle 数据,则计费的数据量如下:250 GB * 25% + 4870 GB * 50% + 5120 GB = 7617.5 GB。

查看用量

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

价格计算器

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