Share via


Considerações de produção para o Streaming Estruturado

Esse artigo contém recomendações para configurar facilmente cargas de trabalho de processamento incremental de produção com o Streaming Estruturado no Azure Databricks para atender aos requisitos de latência e custo para aplicativos em tempo real ou em lotes. Entender os principais conceitos de Streaming Estruturado no Azure Databricks pode ajudar você a evitar armadilhas comuns à medida que você aumenta o volume e a velocidade dos dados e passa do desenvolvimento para a produção.

O Azure Databricks introduziu as Tabelas Dinâmicas Delta para reduzir as complexidades do gerenciamento da infraestrutura de produção para cargas de trabalho de Streaming Estruturado. O Databricks recomenda o uso das Tabelas Dinâmicas Delta para novos pipelines de Streaming Estruturado. Confira O que são as Tabelas Dinâmicas Delta?.

Observação

O dimensionamento automático de computação tem limitação ao reduzir o tamanho do cluster para cargas de Fluxo Estruturado. O Databricks recomenda usar o Delta Live Tables com o Dimensionamento Automático Aprimorado para cargas de trabalho de fluxo. Consulte Otimizar a utilização de cluster dos pipelines do Delta Live Tables com Dimensionamento Automático Avançado.

Usar notebooks para cargas de trabalho de Streaming Estruturado

O desenvolvimento interativo com notebooks do Databricks exige que você anexe seus notebooks a um cluster para executar consultas manualmente. Você pode agendar notebooks do Databricks para implantação automatizada e recuperação automática de falha de consulta usando fluxos de trabalho.

É possível visualizar consultas de Streaming Estruturado em notebooks durante o desenvolvimento interativo ou para monitoramento interativo de cargas de trabalho de produção. Você só deverá visualizar uma consulta de Streaming Estruturado em produção se a saída do notebook for monitorada regularmente. Embora os parâmetros trigger e checkpointLocation sejam opcionais, como uma melhor prática, o Databricks recomenda que você sempre especifique-os em produção.

Controlar o tamanho e a frequência do lote para o Streaming Estruturado no Azure Databricks

O Streaming Estruturado no Azure Databricks tem opções aprimoradas para ajudar a controlar os custos e a latência durante o streaming com o Carregador Automático e o Delta Lake.

O que é streaming com estado?

Uma consulta de Streaming Estruturado com estado requer atualizações incrementais para informações de estado intermediário, enquanto uma consulta de Streaming Estruturado sem estado rastreia apenas informações sobre quais linhas foram processadas da origem para o coletor.

As operações com estado incluem agregação de streaming, dropDuplicates de streaming, junções fluxo-fluxo, mapGroupsWithState e flatMapGroupsWithState.

As informações de estado intermediário necessárias para consultas de Streaming Estruturado com estado poderão levar a problemas inesperados de latência e produção se não estiverem configuradas corretamente.

No Databricks Runtime 13.3 LTS e superior, você pode habilitar o ponto de verificação do changelog com RocksDB para reduzir a duração do ponto de verificação e a latência de ponta a ponta para cargas de trabalho de streaming estruturado. O Databricks recomenda habilitar o ponto de verificação do changelog para todas as consultas com estado de Streaming Estruturado. Confira Habilitar o ponto de verificação do log de alterações.