Pular para o conteúdo principal

conceitos de transmissão estruturada

O Apache Spark Structured Streaming permite criar aplicações de transmissão e pipelines com as mesmas APIs Spark que você usa para processamento em lotes. No Databricks, ele suporta dois modos de processamento:

  • Modo em tempo real (RTM) : Projetado para cargas de trabalho operacionais de sub-segundo, como detecção de fraudes e personalização em tempo real. O RTM processa os registros à medida que chegam, com uma latência de ponta a ponta de até cinco milissegundos. Consulte Conceitos do modo em tempo real.
  • Modo de micro-lotes : projetado para pipelines analíticos e cargas de trabalho de extração, transformação e carregamento (ETL). O modo de micro-lotes processa transmissões em pequenos lotes, equilibrando o custo de compute com os requisitos de latência medidos em segundos ou minutos. O processamento em micro-lotes é o modo default.

Ambos os modos usam as mesmas APIs do Structured Streaming. Para query compatíveis com ambos os modos, você pode alternar entre eles por meio da configuração de trigger e compute. Consulte Configurar o modo em tempo real.

O Structured Streaming também possibilita a transmissão em LakeFlow Pipelines, criados em pipelines declarativos do Apache Spark™. Os pipelines gerenciam a orquestração, os checkpoints e a recuperação, e você define transformações em SQL ou Python.

Para obter um tutorial passo a passo, consulte execução de sua primeira carga de trabalho de transmissão estruturada.

Leitura de uma transmissão de dados​

Use transmissão estruturada para ingerir dados incrementalmente de fontes de dados suportadas.

Gravar em um coletor de dados​

Configure como a transmissão estruturada entrega dados aos sistemas de destino.

    • Pontos de controle
    • Armazenar o estado de processamento para permitir tolerância a falhas e semântica de entrega exatamente uma vez.
    • Modo de saída
    • Escolha entre os modos de anexação, atualização e conclusão para consultas de transmissão com estado.
    • Intervalos de disparo
    • Defina intervalos de disparo para equilibrar a latência e o custo de acordo com suas necessidades de processamento.

Processamento com e sem estado​

Consultas sem estado processam linhas sem reter nenhum estado. Consultas com estado mantêm um estado intermediário para agregações, junções e desduplicação.

    • Marcas d'água
    • Controle quanto tempo a transmissão estruturada aguarda por dados atrasados em operações com estado.
    • Transmissão com estado
    • gerenciamento de agregações, junção transmissão-transmissão e desduplicação usando operadores stateful.

Monitorar e gerenciar​

Acompanhe o desempenho das consultas, aplique otimizações e controle o acesso aos dados para cargas de trabalho estruturadas de transmissão de produção.