Dataproc Serverless 价格
Dataproc Serverless for Spark 的价格基于 Dataproc 计算单元 (DCU) 的数量、使用的加速器数量和使用的 shuffle 存储空间量。DCU、加速器和 Shuffle 存储按秒计费,其中 DCU 和 Shuffle 存储的起步计费时间为 1 分钟,加速器的起步计费时间为 5 分钟。
每个 Dataproc vCPU 计为 0.6 DCU。8GB 以下和 8GB 以上的 RAM 收费标准不同。每个 vCPU 的 RAM 容量低于 8 GB 的每 GB 计为 0.1 DCU,每个 vCPU 的 RAM 容量高于 8 GB 的每 GB 计为 0.2 DCU。 Spark 驱动程序和执行器使用的内存以及系统内存用量都计入 DCU 用量。
默认情况下,每个 Dataproc Serverless for Spark 批处理和交互式工作负载在工作负载期间都消耗至少 12 个 DCU:驱动程序使用 4 个 vCPU 和 16GB RAM,消耗 4 个 DCU;2 个执行器中的每个执行器使用 4 个 vCPU 和 16GB RAM,消耗 4 个 DCU。您可以通过设置 Spark 属性来自定义 vCPU 数量和每个 vCPU 的内存量。 无需额外支付 Compute Engine 虚拟机或 Persistent Disk 费用。
数据计算单元 (DCU) 价格
下方显示的 DCU 费率是每小时费率。按秒预估并结算,起步计费时间为 1 分钟。
Dataproc Serverless for Spark 交互式工作负载按 Premium 收费。
Shuffle 存储空间价格
下方显示的随机存储费率是每月费率。按秒预估并结算,标准随机存储起步费用为 1 分钟,高级随机存储起步费用为 5 分钟。高级随机存储只能与高级计算单元搭配使用。
加速器价格
下方显示的加速器费率是按小时计算的费率。按比例并按秒计费,起步计费时间为 5 分钟。
价格示例
如果 Dataproc Serverless for Spark 批处理工作负载在 us-central1 区域使用 12 个 DCU(spark.driver.cores=4
、spark.executor.cores=4
、spark.executor.instances=2
)运行 24 小时,并使用 25GB 的 shuffle 存储空间,则价格计算如下。
Total compute cost = 12 * 24 * $0.060000 = $17.28 Total storage cost = 25 * ($0.040/301) = $0.03 ------------------------------------------------ Total cost = $17.28 + $0.03 = $17.31
注意:
- 该示例假设一个月有 30 天。由于批处理工作负载持续时间为一天,因此每月 shuffle 存储率除以 30。
如果 Dataproc Serverless for Spark 批处理工作负载使用 12 个 DCU 和 2 个 L4 GPU(spark.driver.cores=4
、spark.executor.cores=4
、spark.executor.instances=2
、spark.dataproc.driver.compute.tier=premium
、spark.dataproc.executor.compute.tier=premium
、spark.dataproc.executor.disk.tier=premium
、spark.dataproc.executor.resource.accelerator.type=l4
)在 us-central1 区域运行 24 小时,并使用 25GB 的 shuffle 存储空间,价格计算如下。
Total compute cost = 12 * 24 * $0.089000 = $25.632 Total storage cost = 25 * ($0.1/301) = $0.083 Total accelerator cost = 2 * 24 * $0.6720 = $48.39 ------------------------------------------------ Total cost = $25.632 + $0.083 + $48.39 = $74.105
注意:
- 该示例假设一个月有 30 天。由于批处理工作负载持续时间为一天,因此每月 shuffle 存储率除以 30。
如果 Dataproc Serverless for Spark 交互式工作负载在 us-central1 区域使用 12 DCU(spark.driver.cores=4
、spark.executor.cores=4
、spark.executor.instances=2
)运行 24 小时,并使用 25GB 的 shuffle 存储空间,则价格计算如下:
Total compute cost = 12 * 24 * $0.089000 = $25.632 Total storage cost = 25 * ($0.040/301) = $0.03 ------------------------------------------------ Total cost = $25.632 + $0.03 = $25.662
注意:
- 该示例假设一个月有 30 天。由于批处理工作负载持续时间为一天,因此每月 shuffle 存储率除以 30。
价格估算示例
批处理工作负载完成后,Dataproc Serverless for Spark 会计算 UsageMetrics,其中包含已完成的工作负载所消耗的总 DCU、加速器和 shuffle 存储资源的近似值。运行工作负载后,您可以运行 gcloud dataproc batches describe BATCH_ID
命令来查看工作负载使用指标,以帮助您估算运行工作负载的费用。
示例:
Dataproc Serverless for Spark 在一个包含一个主节点和两个工作器的临时集群上运行工作负载。每个节点消耗 4 个 DCU(默认情况下,每个核心消耗 4 个 DCU,请参阅 spark.dataproc.driver.disk.size
)和 400 GB 的 shuffle 存储空间(默认情况下,每个核心消耗 100 GB,请参阅 spark.driver.cores
)。工作负载运行时间为 60 秒。此外,每个工作器都有 1 个 GPU,整个集群共有 2 个 GPU。
用户运行 gcloud dataproc batches describe BATCH_ID --region REGION
以获取使用情况指标。命令输出包含以下代码段(milliDcuSeconds
:4 DCUs x 3 VMs x 60 seconds x 1000
= 720000
、milliAcceleratorSeconds
:1 GPU x 2 VMs x 60 seconds x 1000
= 120000
和 shuffleStorageGbSeconds
:400GB x 3 VMs x 60 seconds
= 72000
):
runtimeInfo: approximateUsage: milliDcuSeconds: '720000' shuffleStorageGbSeconds: '72000' milliAcceleratorSeconds: '120000'
使用其他 Google Cloud 资源
您的 Dataproc Serverless for Spark 工作负载可以选择使用以下资源(均按各自的价格收费),包括但不限于:
后续步骤
- 阅读 Dataproc Serverless 文档。
- 开始使用 Dataproc Serverless。
- 试用价格计算器。