Precios de Dataproc sin servidor
Los precios de Dataproc sin servidor para Spark se basan en el número de unidades de computación de datos (DCUs), el número de aceleradores que se utilizan y la cantidad de almacenamiento shuffle utilizado. Las DCUs, los aceleradores y el almacenamiento de shuffle se facturan por segundo, con un cargo mínimo de 1 minuto por las DCUs y el shuffle, y un mínimo de 5 minutos por los aceleradores.
Cada vCPU de Dataproc cuenta como 0,6 DCU. La RAM se cobra de forma diferente por debajo o por encima de 8 GB. Cada gigabyte de RAM de menos de 8 GB por vCPU cuenta como 0,1 DCU, y cada gigabyte de RAM de más de 8 GB por vCPU cuenta como 0,2 DCU. La memoria que usan los controladores y ejecutores de Spark, así como el uso de la memoria del sistema, se incluye en el uso de DCU.
De forma predeterminada, cada carga de trabajo interactiva y por lotes de Dataproc sin servidor para Spark consume un mínimo de 12 DCUs durante toda la carga de trabajo: el controlador utiliza 4 vCPUs y 16 GB de RAM, y consume 4 DCUs, y cada uno de los 2 ejecutores y 4 vCPUs utiliza 4 vCPU. Para personalizar el número de vCPUs y la cantidad de memoria por vCPU, configura las propiedades de Spark. No se aplican cargos adicionales por las máquinas virtuales de Compute Engine ni por el disco persistente.
Precios de unidades de computación de datos (DCU)
La tarifa de DCU que se muestra a continuación es una tarifa por hora. La tarifa se prorratea y se factura por segundo. Si se utiliza la reproducción aleatoria estándar, se te cobrará un mínimo de 1 minuto, y se aplicará un cargo mínimo de 5 minutos si se usa el almacenamiento premium de esta categoría.
La carga de trabajo interactiva de Dataproc sin servidor para Spark se cobra con el servicio premium.
Precios del almacenamiento aleatorio
La tasa de almacenamiento de reproducción aleatoria que se muestra a continuación es una tarifa mensual. Se prorratea y se facturan por segundo, con un cargo mínimo de 1 minuto por el almacenamiento aleatorio estándar y un cargo mínimo de 5 minutos por el de almacenamiento aleatorio premium. El almacenamiento shuffle premium solo se puede usar con la unidad de computación premium.
Precios de acelerador
La tarifa del acelerador que se muestra a continuación es una tarifa por hora. Se prorratea y se facturan por segundo, con un cargo mínimo de 5 minutos.
Ejemplo de precios
Si la carga de trabajo por lotes de Dataproc sin servidor para Spark se ejecuta con 12 DCUs (spark.driver.cores=4
,spark.executor.cores=4
,spark.executor.instances=2
) durante 24 horas en la región us-central1 y consume 25 GB de almacenamiento shuffle, se calcula el precio de la siguiente manera:
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
Notas:
- En el ejemplo se presupone un mes de 30 días. Como la duración de la carga de trabajo por lotes es de un día, la tasa de almacenamiento mensual de shuffle se divide entre 30.
Si la carga de trabajo por lotes de Dataproc para usar sin servidor para Spark se ejecuta con 12 DCUs y 2 GPUs L4 (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
y spark.dataproc.executor.resource.accelerator.type=l4
) durante 24 horas en la región us-central1 y consume 25 GB de almacenamiento shuffle, se calcula el precio de la siguiente manera:
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
Notas:
- En el ejemplo se presupone un mes de 30 días. Como la duración de la carga de trabajo por lotes es de un día, la tasa de almacenamiento mensual de shuffle se divide entre 30.
Si la carga de trabajo interactiva sin servidor para Spark de Dataproc se ejecuta con 12 DCUs (spark.driver.cores=4
,spark.executor.cores=4
,spark.executor.instances=2
) durante 24 horas en la región us-central1 y consume 25 GB de almacenamiento shuffle, se calcula el precio de la siguiente manera:
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
Notas:
- En el ejemplo se presupone un mes de 30 días. Como la duración de la carga de trabajo por lotes es de un día, la tasa de almacenamiento mensual de shuffle se divide entre 30.
Ejemplo de estimación de precios
Cuando se completa una carga de trabajo por lotes, Dataproc sin servidor para Spark calcula UsageMetrics, que contiene una aproximación de los recursos totales de DCU, acelerador y shuffle de almacenamiento que consume la carga de trabajo completada. Después de ejecutar una carga de trabajo, puedes ejecutar el comando gcloud dataproc batches describe BATCH_ID
para consultar sus métricas de uso y estimar el coste que conlleva ejecutarla.
Ejemplo:
Dataproc sin servidor para Spark ejecuta una carga de trabajo en un clúster efímero con un maestro y dos trabajadores. Cada nodo consume 4 DCUs (el valor predeterminado es 4 DCUs por núcleo; consulta la sección spark.dataproc.driver.disk.size
) y 400 GB de almacenamiento aleatorio (el valor predeterminado es 100 GB por núcleo; consulta spark.driver.cores
). El tiempo de ejecución de la carga de trabajo es de 60 segundos. Además, cada trabajador tiene 1 GPU, lo que equivale a un total de 2 en todo el clúster.
El usuario ejecuta gcloud dataproc batches describe BATCH_ID --region REGION
para obtener métricas de uso. El resultado del comando incluye el siguiente fragmento (milliDcuSeconds
: 4 DCUs x 3 VMs x 60 seconds x 1000
= 720000
, milliAcceleratorSeconds
: 1 GPU x 2 VMs x 60 seconds x 1000
= 120000
y shuffleStorageGbSeconds
: 400GB x 3 VMs x 60 seconds
= 72000
):
runtimeInfo: approximateUsage: milliDcuSeconds: '720000' shuffleStorageGbSeconds: '72000' milliAcceleratorSeconds: '120000'
Uso de otros recursos de Google Cloud
Tu carga de trabajo de Dataproc sin servidor para Spark puede utilizar, entre otros, los siguientes recursos (cada uno tiene su propio precio):
Siguientes pasos
- Lee la documentación de Dataproc Serverless.
- Empieza a usar Dataproc sin servidor.
- Prueba la calculadora de precios.