Preços do Dataproc sem servidor
Os preços do Dataproc sem servidor para Spark são baseados no número de unidades de computação de dados (DCUs), no número de aceleradores usados e na quantidade de armazenamento de embaralhamento usado. DCUs, aceleradores e armazenamento de embaralhamento são cobrados por segundo, com uma cobrança mínima de um minuto para DCUs e armazenamento de embaralhamento e uma cobrança mínima de cinco minutos para aceleradores.
Cada vCPU do Dataproc conta como 0,6 DCU. A RAM é cobrada de maneira diferente abaixo e acima de 8 GB. Cada gigabyte de RAM abaixo de 8G gigabyte por vCPU conta como 0,1 DCU, e cada gigabyte de RAM acima de 8G gigabyte por vCPU conta como 0,2 DCU. A memória usada por drivers e executores do Spark e o uso da memória do sistema são contabilizados no uso da DCU.
Por padrão, cada carga de trabalho interativa e em lote do Dataproc sem servidor para Spark consome um mínimo de 12 DCUs durante a carga de trabalho: o driver usa 4 vCPUs e 16 GB de RAM e consome 4 DCUs, e cada um dos 2 executores usa 4 vCPUs e 16 GB de RAM e consome 4 DCUs. É possível personalizar o número de vCPUs e a quantidade de memória por vCPU configurando as propriedades do Spark. Nenhuma cobrança extra de VM ou Persistent Disk do Compute Engine se aplica.
Preços da unidade de computação de dados (DCU)
A taxa de DCU mostrada abaixo é uma taxa por hora. É proporcional e cobrado por segundo, com uma cobrança mínima de um minuto.
A carga de trabalho interativa do Dataproc Serverless para Spark é cobrada no Premium.
Preços do armazenamento do embaralhamento
A taxa de armazenamento de embaralhamento abaixo é uma taxa mensal. Ela é proporcional e faturada por segundo, com uma cobrança mínima de um minuto pelo armazenamento de embaralhamento padrão e uma cobrança mínima de cinco minutos pelo armazenamento de embaralhamento Premium. O armazenamento de embaralhamento premium só pode ser usado com a unidade de computação premium.
Preços do acelerador
A taxa do acelerador mostrada abaixo é por hora. É proporcional e cobrado por segundo, com uma cobrança mínima de cinco minutos.
Exemplo de preço
Se a carga de trabalho em lote do Dataproc sem servidor para Spark for executada com 12 DCUs
(spark.driver.cores=4
,spark.executor.cores=4
,spark.executor.instances=2
)
por 24 horas na região us-central1 e consumir 25 GB de armazenamento de embaralhamento, o cálculo do preço será o seguinte.
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
Observações:
- No exemplo, consideramos um mês de 30 dias. Como a duração da carga de trabalho em lote é de um dia, a taxa mensal de armazenamento de embaralhamento é dividida por 30.
Se a carga de trabalho em lote Dataproc Serverless para Spark for executada com 12 DCUs e 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
,
spark.dataproc.executor.resource.accelerator.type=l4
) por 24 horas na região us-central1 e consumir 25 GB de armazenamento aleatório, o cálculo do preço
será o seguinte.
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
Observações:
- No exemplo, consideramos um mês de 30 dias. Como a duração da carga de trabalho em lote é de um dia, a taxa mensal de armazenamento de embaralhamento é dividida por 30.
Se a carga de trabalho interativa do Dataproc sem servidor para Spark for executada com 12 DCUs
(spark.driver.cores=4
,spark.executor.cores=4
,spark.executor.instances=2
)
por 24 horas na região us-central1 e consumir 25 GB de armazenamento de embaralhamento, o cálculo do preço será o seguinte:
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
Observações:
- No exemplo, consideramos um mês de 30 dias. Como a duração da carga de trabalho em lote é de um dia, a taxa mensal de armazenamento de embaralhamento é dividida por 30.
Exemplo de estimativa de preços
Quando uma carga de trabalho em lote é concluída, o Dataproc Serverless para Spark calcula
UsageMetrics,
que contém uma aproximação do total de recursos de armazenamento de DCU, acelerador e embaralhamento
consumidos pela carga de trabalho concluída. Depois de executar uma carga de trabalho, execute o comando gcloud dataproc batches describe BATCH_ID
para visualizar as métricas de uso da carga de trabalho para estimar o custo de execução dela.
Exemplo:
O Dataproc Serverless para Spark executa uma carga de trabalho em um cluster temporário com
um mestre e dois workers. Cada nó consome 4 DCUs (o padrão é 4 DCUs por
núcleo (consulte spark.dataproc.driver.disk.size
)
e 400 GB de armazenamento embaralhado
(o padrão é 100 GB por núcleo, consulte
spark.driver.cores
).
O tempo de execução da carga de trabalho é de 60 segundos. Além disso, cada worker tem uma GPU
para um total de duas no cluster.
O usuário executa gcloud dataproc batches describe BATCH_ID --region REGION
para acessar as métricas de uso. A resposta ao comando inclui o seguinte snippet
(milliDcuSeconds
: 4 DCUs x 3 VMs x 60 seconds x 1000
=
720000
, milliAcceleratorSeconds
: 1 GPU x 2 VMs x 60 seconds x 1000
=
120000
e shuffleStorageGbSeconds
: 400GB x 3 VMs x 60 seconds
= 72000
):
runtimeInfo: approximateUsage: milliDcuSeconds: '720000' shuffleStorageGbSeconds: '72000' milliAcceleratorSeconds: '120000'
Uso de outros recursos do Google Cloud
Sua carga de trabalho Dataproc Serverless para Spark pode usar os seguintes recursos, cada um faturado de acordo com os próprios preços, incluindo, mas não se limitando a:
A seguir
- Leia a documentação do Dataproc sem servidor.
- Comece a usar o Dataproc sem servidor.
- Use a calculadora de preços.