Preços do Dataflow
Nesta página estão os preços do Dataflow. Para saber os preços de outros produtos, leia a documentação de preços.
Visão geral de preços
Embora a taxa de preços seja por hora, o uso do serviço do Dataflow será cobrado em incrementos por segundo para cada job. Ele é apresentado em horas (30 minutos são expressos como 0,5 hora, por exemplo) para aplicar o preço por hora ao uso de segundo a segundo. Os workers e jobs podem consumir recursos, conforme descrito nas seções a seguir.
Workers e recursos de workers
Cada job do Dataflow usa pelo menos um worker do Dataflow. Há dois tipos deles: em lote e por streaming, Os workers em lote e por streaming têm taxas de serviço separadas.
Os workers do Dataflow consomem os recursos a seguir, todos cobrados por segundo.
- vCPU
- Memória
- Armazenamento: Persistent Disk
- GPU (opcional)
Os workers em lote e por streaming são recursos especializados que utilizam o Compute Engine. No entanto, um job do Dataflow não gera cobranças relacionadas aos recursos do Compute Engine gerenciados pelo serviço do Dataflow. Na verdade, as taxas de serviço do Dataflow incluem o uso desses recursos.
É possível modificar a contagem de workers padrão de um job. Se você estiver usando o escalonamento automático, especifique o número máximo de workers a serem alocados para um job. Os workers e os respectivos recursos são adicionados e removidos automaticamente com base na atuação do escalonamento automático.
Além disso, é possível usar opções de pipeline para modificar as configurações padrão de recursos que são alocados em cada worker e que usam GPUs. Esses recursos incluem o tipo de máquina, além do tipo e tamanho do disco.
Serviços do Dataflow
A operação do Dataflow Shuffle particiona e agrupa os dados por chave de maneira escalonável, eficiente e tolerante a falhas. Para informações sobre preços, consulte Detalhes de preços neste documento.
Pipelines em lote
Para pipelines em lote, o Dataflow fornece um recurso altamente escalonável, o Dataflow Shuffle. Ele embaralha os dados fora dos workers. Para mais informações, consulte Dataflow Shuffle.
O Dataflow Shuffle cobra pelo volume de dados processados durante a reprodução aleatória. Para detalhes de preços, consulte Detalhes de preços do Dataflow Shuffle neste documento.
Pipelines de streaming
Para pipelines de streaming, por padrão, o Dataflow usa uma implementação de embaralhamento que é executada totalmente em máquinas virtuais de worker e consome CPU, memória e armazenamento em disco permanente do worker.
Como alternativa, é possível usar o Streaming Engine. Quando você usa o Streaming Engine, o Dataflow Streaming Engine migra o embaralhamento do streaming e o processamento do estado das VMs de worker para o back-end do serviço do Dataflow. Para usar o Streaming Engine nos pipelines de streaming, especifique o parâmetro de pipeline do Streaming Engine.
O uso do Streaming Engine é cobrado pelo volume dos dados de streaming processados, o que depende do volume de dados processados em seu pipeline de streaming e da complexidade e do número de estágios de pipeline. Alguns exemplos do que conta como um byte processado: fluxos de entrada de fontes de dados, fluxos de dados de um estágio combinado do pipeline para outro estágio combinado, fluxos de dados persistidos em estados definidos pelo usuário ou usados com janelas e mensagens de saída para coletores de dados, como o Pub/Sub e o BigQuery. Para detalhes sobre preços, consulte Detalhes de preços neste documento.
FlexRS
O Dataflow também oferece uma opção de preço com desconto para CPU e memória no processamento em lote. O Flexible Resource Scheduling (FlexRS) combina VMs preemptivas e comuns em um único pool de workers do Dataflow. Isso oferece aos usuários acesso a recursos de processamento mais baratos. O FlexRS também atrasa a execução de um job em lote do Dataflow em uma janela de seis horas para identificar o melhor momento para iniciar o job com base nos recursos disponíveis.
O Dataflow utiliza uma combinação de workers para executar um job do FlexRS, mas a cobrança é feita por uma taxa de desconto uniforme em comparação com os preços comuns do Dataflow, seja qual for o tipo de worker. Especifique o parâmetro do FlexRS para instruir o Dataflow a usar o FlexRS nos pipelines de lote com escalonamento automático.
Snapshots
Para ajudá-lo a gerenciar a confiabilidade de pipelines de streaming, os snapshots do Dataflow permitem salvar e restaurar o estado do pipeline. O uso do snapshot é cobrado pelo volume dos dados armazenados, que dependem do volume de dados processados no seu pipeline de streaming, da lógica de gestão de janelas e do número de estágios de pipeline. É possível tirar um snapshot do seu job de streaming usando a IU da Web do Dataflow ou a CLI do Google Cloud. Não há custo extra para criar um job a partir do snapshot para restaurar o estado do pipeline. Para mais informações, consulte Como usar snapshots do Dataflow.
Dataflow prime
O Dataflow Prime é uma nova plataforma de processamento de dados que se baseia no Dataflow e traz melhorias na utilização de recursos e no diagnóstico distribuído.
Um job que executa o Dataflow Prime é cobrado pelo número de unidades de processamento do Dataflow (DPUs) que o job consome. As DPUs representam os recursos de computação alocados para executar o pipeline.
O que é uma unidade de processamento do Dataflow?
Uma unidade de processamento do Dataflow (DPU, na sigla em inglês) rastreia a quantidade de recursos consumidos pelo job. As DPUs rastreiam o uso de vários recursos, incluindo computação, memória, armazenamento em disco, dados embaralhados (no caso de jobs em lote) e dados de streaming processados (no caso de jobs de streaming). Jobs que consomem mais recursos terão mais uso de DPU se comparados aos jobs que consomem menos recursos. Não há mapeamento um para um entre os diversos recursos que o job consome e o DPU, mas um DPU é comparável com os recursos usados por um job do Dataflow executado por uma hora em um worker de 1 vCPU e 4 GB com um disco permanente de 250 GB.
Como otimizo o número de unidades de processamento do Dataflow usadas pelo meu job?
Não é possível definir o número de DPUs dos jobs. As DPUs são contadas pelo Dataflow Prime. No entanto, você pode reduzir o número de DPUs consumidos se concentrando nos seguintes aspectos do job:
- Reduzir o consumo de memória.
- Como reduzir a quantidade de dados processados em etapas de embaralhamento usando filtros, combinadores e codificadores eficientes.
Use a interface de monitoramento do Dataflow e a interface de detalhes de execução para identificar essas otimizações.
Como as unidades de processamento do Dataflow são cobradas?
Você é cobrado por segundo pelo número total de DPUs consumidos pelo job durante uma hora específica. O preço de uma única DPU varia de acordo com o tipo de job: lote ou streaming.
Como posso limitar o número de unidades de processamento do Dataflow que meu job consome?
O número total de DPUs que seu job pode consumir é limitado pelo número máximo de recursos que seu job pode consumir. Também é possível definir o número máximo de workers para o job, o que limita o número de DPUs que o job pode consumir.
Qual é a diferença entre os preços do Dataflow Prime e do modelo do Dataflow?
No modelo do Dataflow, a cobrança é feita pelos diferentes recursos que seus jobs consomem: vCPUs, memória, armazenamento e a quantidade de dados processados pelo Dataflow Shuffle ou pelo Streaming Engine.
As unidades de processamento do Dataflow consolidam esses recursos em uma única unidade de medição. Depois, você será cobrado pelo número de DPUs consumidos com base no tipo de job: lote ou streaming. A dissociação das DPUs de recursos físicos facilita a comparação de custos entre jobs e rastreia o uso do Dataflow ao longo do tempo. Para mais informações, consulte Como usar o Dataflow Prime.
O que acontece com os jobs atuais que usam o modelo de preços do Dataflow?
Os jobs em lote e de streaming atuais continuarão a ser faturados pelo modelo do Dataflow. Quando você atualiza seus jobs para usar o Dataflow Prime, eles são cobrados pelas DPUs que consomem.
Recursos complementares do job
Além do uso de recursos do worker, um job pode consumir os seguintes recursos, cada um faturado de acordo com seus preços, incluindo, mas não se limitando a:
Detalhes do preço
As próximas versões do Dataflow poderão ter taxas de serviço diferentes ou o agrupamento de serviços relacionados.
Consulte a página Regiões e zonas do Compute Engine para mais informações sobre as regiões disponíveis e as respectivas zonas.
Preços de recursos de workers
Outros preços de recursos
Os recursos a seguir são faturados com a mesma taxa para jobs de streaming, lote e FlexRS.
1 Padrões do worker em lote: 1 vCPU, 3,75 GB de memória, disco permanente de 250 GB
2 Padrões do worker no FlexRS: 2 vCPUs, 7,50 GB de memória, disco permanente de 25 GB por worker, com um mínimo de dois workers
3 Padrões do worker no streaming: 4 vCPUs, 15 GB de memória, disco permanente de 400 GB
4 Esse recurso está disponível em todas as regiões em que o Dataflow foi lançado. Para ver os territórios disponíveis, consulte Locais do Dataflow.
Os preços do Dataflow Shuffle são baseados nos ajustes de volume aplicados à quantidade de dados processados durante operações de leitura e gravação no embaralhamento do seu conjunto de dados. Para mais informações, consulte detalhes de preços do Dataflow Shuffle.
5 Esse recurso está disponível em todas as regiões em que o Dataflow foi lançado. Para ver os territórios disponíveis, consulte Locais do Dataflow.
Detalhes de preços do Dataflow Shuffle
As cobranças são calculadas por cada job do Dataflow, por meio de ajustes de volume aplicados ao total de operações processadas durante o Dataflow. O faturamento real dos dados processados no Dataflow Shuffle equivale ao preço total cobrado por uma quantidade menor de dados, e não ao total processado por um job do Dataflow. Essa diferença resulta em uma métrica de dados faturável menor do que a métrica de dados totais do Dataflow Shuffle.
Na tabela a seguir, explicamos como esses ajustes são aplicados:
Dados processados por um job | Ajuste de serviço |
Primeiros 250 GB | Redução de 75% |
Próximos 4.870 GB | Redução de 50% |
Dados restantes em 5.120 GB (5 TB) | nenhuma |
Por exemplo, se o pipeline resultar em 1.024 GB (1 TB) de dados processados totais do Dataflow Shuffle, o valor faturável é calculado da seguinte forma: 250 GB * 25% + 774 GB * 50% = 449,5 GB * taxa de processamentos de dados do Dataflow Shuffle. Se o pipeline resultar em 10.240 GB (10 TB) de dados processados totais do Dataflow Shuffle, o valor faturável de dados será 250 GB * 25% + 4.870 GB * 50% + 5.120 GB = 7.617,5 GB.
Preços de snapshots
Os snapshots do Dataflow ficarão disponíveis em outras regiões após disponibilidade geral.
Como ver o uso
Para ver os recursos totais de vCPU, memória e disco permanente associados a um job, acesse o Console do Google Cloud ou use a ferramenta de linha de comando gcloud. É possível acompanhar as métricas reais e cobráveis dos dados embaralhados e de streaming processados na interface de monitoramento do Dataflow. É possível usar os dados embaralhados processados reais para avaliar o desempenho de seu pipeline e os dados embaralhados processados sujeitos à cobrança para determinar os custos do job do Dataflow. Para dados de streaming processados, as métricas reais e cobráveis são as mesmas.
Calculadora de preços
Use a calculadora de preços do Google Cloud para entender o cálculo de sua conta.
A seguir
- Leia a documentação do Dataflow.
- Primeiros passos com o Dataflow.
- Use a calculadora de preços.
- Saiba mais sobre soluções e casos de uso do Dataflow.