Google Cloud Preços do Serverless para Apache Spark
Os preços do Serverless para Apache 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 shuffle usado. As DCUs, os aceleradores e o armazenamento de embaralhamento são cobrados por segundo, com uma cobrança mínima de 1 minuto para DCUs e armazenamento de embaralhamento e uma cobrança mínima de 5 minutos para aceleradores.Cada vCPU do Dataproc conta como 0,6 DCU. A RAM é cobrada de forma diferente abaixo e acima de 8 GB. Cada gigabyte de RAM abaixo de 8 GB por vCPU conta como 0,1 DCU, e cada gigabyte de RAM acima de 8 GB 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 contados no uso de DCUs.
Por padrão, cada carga de trabalho em lote e interativa do Serverless para Apache 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. Você pode personalizar o número de vCPUs e a quantidade de memória por vCPU definindo as propriedades do Spark. Não há cobranças adicionais de VM do Compute Engine ou Persistent Disk.
Preços da unidade de computação de dados (DCU)
A taxa de DCU mostrada abaixo é uma taxa horária. Ele é rateado e faturado por
segundo, com uma cobrança mínima de 1 minuto.
A carga de trabalho interativa do Serverless para Apache Spark é cobrada no nível Premium.
Preços do armazenamento de embaralhamento
A taxa de armazenamento aleatório mostrada abaixo é uma taxa mensal. Ele é rateado e cobrado por segundo, com uma cobrança mínima de 1 minuto para o armazenamento de embaralhamento padrão e uma cobrança mínima de 5 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 Accelerator
A taxa de acelerador mostrada abaixo é uma taxa horária. Ele é rateado e faturado por
segundo, com uma cobrança mínima de 5 minutos.
Exemplo de preço
Se a carga de trabalho em lote do Serverless para Apache 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 shuffle, 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 considera 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 Serverless para Apache 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 de embaralhamento, o cálculo de 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 considera 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 Serverless para Apache 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 shuffle, 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 considera 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ço
Quando uma carga de trabalho em lote é concluída, o Serverless para Apache Spark calcula as
UsageMetrics,
que contêm uma aproximação do total de DCUs, aceleradores e recursos de armazenamento
de shuffle consumidos pela carga de trabalho concluída. Depois de executar uma carga de trabalho,
você pode executar 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
dela.
Exemplo:
O Serverless para Apache Spark executa uma carga de trabalho em um cluster efêmero 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 de shuffle
(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 no cluster.
O usuário executa gcloud dataproc batches describe BATCH_ID --region REGION
para receber 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 Serverless para Apache Spark pode usar os seguintes recursos, cada um faturado de acordo com os próprios preços, incluindo, entre outros:
A seguir
- Leia a documentação do Serverless para Apache Spark.
- Comece a usar o Serverless para Apache Spark.
- Use a calculadora de preços.