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 usada. DCUs, aceleradores e armazenamento de embaralhamento são faturados 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 8 gigabyte por vCPU conta como 0,1 DCU, e cada gigabyte de RAM acima de 8 G gigabyte por vCPU conta como 0,2 DCU. A memória usada por drivers e executores do Spark e o uso de memória do sistema são contabilizados para o uso da DCU.
Por padrão, cada lote do Dataproc sem servidor para carga de trabalho interativa 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 dois executores usa 4 vCPUs e 16 GB de RAM e 4 DCUs. É possível personalizar o número de vCPUs e a quantidade de memória por vCPU definindo propriedades do Spark. Nenhuma cobrança extra de VMs ou Persistent Disk do Compute Engine será aplicada.
Preços da unidade de computação de dados (DCU)
A taxa da DCU mostrada abaixo é por hora. Ela é proporcional e faturada por segundo, com uma cobrança mínima de um minuto.
A carga de trabalho interativa do Dataproc sem servidor para Spark é cobrada no nível Premium.
Preços do armazenamento de embaralhamento
A taxa de armazenamento de embaralhamento mostrada abaixo é uma taxa mensal. Ela é proporcional e cobrado por segundo, com uma cobrança mínima de um minuto para o armazenamento de embaralhamento padrão e uma cobrança mínima de cinco minutos para o 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 é uma taxa por hora. Ela é proporcional e faturada 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 de 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:
- O exemplo pressupõe um mês de 30 dias. Como a duração da carga de trabalho em lote é de um dia, a taxa de armazenamento de embaralhamento mensal é dividida por 30.
Se a carga de trabalho em lote do Dataproc sem servidor para Spark for executada com 12 DCUs e duas 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 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.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:
- O exemplo pressupõe um mês de 30 dias. Como a duração da carga de trabalho em lote é de um dia, a taxa de armazenamento de embaralhamento mensal é 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 aleatório, o
cálculo de 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:
- O exemplo pressupõe um mês de 30 dias. Como a duração da carga de trabalho em lote é de um dia, a taxa de armazenamento de embaralhamento mensal é dividida por 30.
Exemplo de estimativa de preços
Quando uma carga de trabalho em lote é concluída, o Dataproc sem servidor para Spark calcula
UsageMetrics,
que contêm uma aproximação do total dos recursos de armazenamento de DCU, aceleradores 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 e estimar o custo de execução.
Exemplo:
O Dataproc sem servidor para Spark executa uma carga de trabalho em um cluster temporário com
um mestre e dois workers. Cada nó consome quatro DCUs (o padrão é quatro 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 1 GPU, totalizando
2 em todo o 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 do Dataproc sem servidor para Spark pode utilizar opcionalmente os recursos a seguir, cada um faturado nos próprios preços, incluindo, mas não se limitando a:
A seguir
- Leia a documentação do Dataproc sem servidor.
- Começar a usar o Dataproc sem servidor.
- Use a calculadora de preços.