Streaming no Azure Databricks

Você pode usar o Azure Databricks para ingestão, processamento, aprendizado de máquina e IA de dados quase em tempo real para streaming de dados.

O Azure Databricks oferece várias otimizações para streaming e processamento incremental. Para a maioria das tarefas de streaming ou processamento incremental de dados ou ETL, a Databricks recomenda Delta Live Tables. Consulte O que é Delta Live Tables?.

A maioria das cargas de trabalho incrementais e de streaming no Azure Databricks são alimentadas pelo Structured Streaming, incluindo Delta Live Tables e Auto Loader. Consulte O que é Auto Loader?.

O Delta Lake e o Structured Streaming têm uma integração estreita para alimentar o processamento incremental no lago Databricks. Consulte Leituras e gravações de streaming de tabela Delta.

Para servir modelos em tempo real, consulte Model serving with Azure Databricks.

Para saber mais sobre como criar soluções de streaming na plataforma Azure Databricks, consulte a página do produto de streaming de dados.

O Azure Databricks tem recursos específicos para trabalhar com campos de dados semiestruturados contidos no Avro, buffers de protocolo e cargas úteis de dados JSON. Para saber mais, veja:

O que é Structured Streaming?

O Apache Spark Structured Streaming é um mecanismo de processamento quase em tempo real que oferece tolerância a falhas de ponta a ponta com garantias de processamento exatamente uma vez usando APIs Spark familiares. O Streaming Estruturado permite expressar a computação em dados de streaming da mesma forma que expressa uma computação em lote em dados estáticos. O mecanismo de streaming estruturado executa o cálculo de forma incremental e atualiza continuamente o resultado à medida que os dados de streaming chegam.

Se você é novo no Streaming Estruturado, consulte Executar sua primeira carga de trabalho de Streaming Estruturado.

Para obter informações sobre como usar o Streaming estruturado com o Unity Catalog, consulte Usando o catálogo Unity com o Structured Streaming.

Quais fontes e coletores de streaming são compatíveis com o Azure Databricks?

A Databricks recomenda o uso do Auto Loader para ingerir tipos de arquivos suportados do armazenamento de objetos em nuvem no Delta Lake. Para pipelines ETL, a Databricks recomenda o uso de Delta Live Tables (que usa tabelas Delta e Structured Streaming). Você também pode configurar cargas de trabalho incrementais de ETL transmitindo de e para tabelas Delta Lake.

Além do Delta Lake e do Auto Loader, o Structured Streaming pode se conectar a serviços de mensagens como o Apache Kafka.

Você também pode usar foreachBatch para gravar em coletores de dados arbitrários.

Recursos adicionais

O Apache Spark fornece um Guia de Programação de Streaming Estruturado com mais informações sobre Streaming Estruturado.

Para obter informações de referência sobre o Structured Streaming, o Databricks recomenda as seguintes referências da API do Apache Spark: