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 utilizados y la cantidad de almacenamiento aleatorio utilizado. Las DCUs, los aceleradores y el almacenamiento aleatorio se facturan por segundo, con un cargo mínimo de 1 minuto para las DCUs y el almacenamiento aleatorio, y un cargo mínimo de 5 minutos para los aceleradores.
Cada vCPU de Dataproc cuenta como 0,6 DCU. La carga de la RAM es diferente a la de 8 GB o más. Cada gigabyte de RAM inferior a 8 GB por vCPU cuenta como 0,1 DCU, y cada gigabyte de RAM por encima de 8 GB por vCPU cuenta como 0,2 DCU. La memoria utilizada por los controladores y ejecutores de Spark, así como el uso de la memoria del sistema, se tiene en cuenta en lo que respecta al uso de la DCU.
De forma predeterminada, cada carga de trabajo interactiva y por lotes de Dataproc Puedes personalizar el número de vCPUs y la cantidad de memoria por vCPU configurando las propiedades de Spark. No se aplican cargos adicionales por las máquinas virtuales de Compute Engine ni los discos persistentes.
Precios de las unidades de computación de datos (DCU)
La tarifa de DCU que se muestra a continuación es una tarifa por horas. Se prorratea y factura según
segundo, con una carga mínima de un minuto.
El modelo sin servidor de Dataproc para las cargas de trabajo interactivas de Spark se cobra por el servicio Premium.
Precios de almacenamiento de Shuffle
La tasa de almacenamiento aleatorio que se muestra a continuación es una tarifa mensual. Se prorratea y se factura por segundo, con un cargo mínimo de 1 minuto por el almacenamiento estándar de reproducción aleatoria y un cargo mínimo de 5 minutos por el almacenamiento aleatorio premium. El almacenamiento aleatorio premium solo se puede usar con la unidad de computación premium.
Precios de Accelerator
La frecuencia del acelerador que se muestra a continuación es una tarifa por horas. Se prorratea y factura según
con una carga mínima 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
y spark.executor.instances=2
) durante 24 horas en la región us‐central1 y consume 25 GB de almacenamiento aleatorio, calcularemos 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 supone un mes de 30 días. Dado que la duración de la carga de trabajo por lotes es de un día, la tasa mensual de almacenamiento aleatorio se divide entre 30.
Si la carga de trabajo por lotes de Dataproc 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 aleatorio, calcularemos 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 supone un mes de 30 días. Dado que la duración de la carga de trabajo por lotes es de un día, la tasa mensual de almacenamiento aleatorio se divide entre 30.
Si la carga de trabajo interactiva de Dataproc sin servidor para Spark se ejecuta con 12 DCUs (spark.driver.cores=4
, spark.executor.cores=4
y spark.executor.instances=2
) durante 24 horas en la región us-central1 y consume 25 GB de almacenamiento aleatorio, calcularemos 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 supone un mes de 30 días. Dado que la duración de la carga de trabajo por lotes es de un día, la tasa mensual de almacenamiento aleatorio se divide entre 30.
Ejemplo de estimación de precios
Cuando se completa una carga de trabajo por lotes, Dataproc Serverless for Spark calcula UsageMetrics, que contiene una aproximación del total de recursos de DCU, acelerador y almacenamiento aleatorio 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 ver las métricas de uso de la carga de trabajo y, de esa forma, estimar el coste que supone ejecutarla.
Ejemplo:
Dataproc sin servidor para Spark ejecuta una carga de trabajo en un clúster efímero con una maestra y dos trabajadores. Cada nodo consume 4 DCUs (el valor predeterminado es 4 DCUs por núcleo, consulta spark.dataproc.driver.disk.size
) y 400 GB de almacenamiento en orden aleatorio (el valor predeterminado es de 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 una GPU, lo que hace un total de dos en todo el clúster.
El usuario ejecuta gcloud dataproc batches describe BATCH_ID --region REGION
para obtener métricas de uso. El resultado de los comandos 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
Si quieres, puedes usar los siguientes recursos de Dataproc sin servidor para Spark (cada uno de los cuales cuenta con sus propios precios), entre los que se incluyen:
Siguientes pasos
- Lee la documentación de Dataproc Serverless.
- Comienza a usar Dataproc Serverless.
- Prueba la calculadora de precios.