Share via


Considerações de produção para a Transmissão em Fluxo Estruturada

Este artigo contém recomendações para configurar cargas de trabalho de processamento incremental da produção com Transmissão em Fluxo Estruturada no Azure Databricks para cumprir os requisitos de latência e custo para aplicações tempo real ou em lote. Compreender os principais conceitos de Streaming Estruturado no Azure Databricks pode ajudá-lo a evitar armadilhas comuns à medida que aumenta o volume e a velocidade dos dados e passa do desenvolvimento para a produção.

O Azure Databricks introduziu o Delta Live Tables para reduzir as complexidades do gerenciamento da infraestrutura de produção para cargas de trabalho de Streaming Estruturado. A Databricks recomenda o uso de Delta Live Tables para novos pipelines de Streaming Estruturado; consulte O que é Delta Live Tables?.

Nota

O dimensionamento automático de computação tem limitações para reduzir o tamanho do cluster para cargas de trabalho de Streaming Estruturado. O Databricks recomenda a utilização do Delta Live Tables com Dimensionamento Automático para cargas de trabalho de transmissão em fluxo. Consulte Otimizar a utilização de cluster de pipelines Delta Live Tables com dimensionamento automático aprimorado.

Usando blocos de anotações para cargas de trabalho de Streaming Estruturado

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

Você pode visualizar consultas de Streaming Estruturado em blocos de anotações durante o desenvolvimento interativo ou para monitoramento interativo de cargas de trabalho de produção. Você só deve visualizar uma consulta de Streaming Estruturado em produção se um ser humano monitorar regularmente a saída do notebook. Embora os trigger parâmetros e checkpointLocation sejam opcionais, como prática recomendada, o Databricks recomenda que você sempre os especifique na produção.

Controlando o tamanho do lote e a frequência do 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 Auto Loader e o Delta Lake.

O que é streaming stateful?

Uma consulta de Streaming Estruturado com monitoração de 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, streaming dropDuplicates, mapGroupsWithStatestream-stream joins e flatMapGroupsWithState.

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

No Databricks Runtime 13.3 LTS e superior, você pode habilitar o ponto de verificação do changelog com o RocksDB para reduzir a duração do ponto de verificação e a latência de ponta a ponta para cargas de trabalho do Structured Streaming. O Databricks recomenda ativar o ponto de verificação do registo de alterações para todas as consultas com monitorização de estado de Transmissão em Fluxo Estruturada. Consulte Ativar ponto de verificação do changelog.