Pular para o conteúdo principal

tutorial: execução a tempo real de carga de trabalho de transmissão

O modo tempo real permite transmissões com latência ultrabaixa, de ponta a ponta, de apenas cinco milissegundos, tornando-o ideal para cargas de trabalho operacionais como detecção de fraudes e personalização em tempo real. Este tutorial orienta você na configuração da sua primeira consulta de transmissão real de tempo usando um exemplo simples.

Para obter informações conceituais sobre o modo em tempo real, quando usá-lo e recursos compatíveis, consulte Conceitos do modo em tempo real. Para requisitos de configuração, consulte Configurar o modo em tempo real.

Requisitos​

Antes de começar, certifique-se de ter permissões para criar um cluster compute clássico que utilize a configuração especificada em Configurar o modo real do Tempo. Como alternativa, entre em contato com o administrador do seu workspace para que ele crie um cluster Tempo em modo real para você.

Passo 1: Criar um caderno​

Os notebooks oferecem um ambiente interativo para desenvolver e testar consultas de transmissão. Você usa este Notebook para escrever sua consulta tempo real e ver os resultados serem atualizados continuamente.

Para criar um Notebook:

  1. Clique em Novo na barra lateral e, em seguida, clique em Ícone Notebook . Notebook .
  2. No menu suspenso compute , selecione o cluster de modo real tempo desejado.
  3. Selecione Python ou Scala como linguagem default .

o passo 2: execução de uma consulta em modo real de tempo​

Copie e cole o seguinte código em uma célula do Notebook e execute-o. Este exemplo utiliza uma fonte de taxa, que gera linhas a uma taxa especificada e exibe os resultados em tempo real.

nota

A função display com gatilho realTime está disponível no Databricks Runtime 17.1 e versões superiores.

Python
inputDF = (
spark
.readStream
.format("rate")
.option("numPartitions", 2)
.option("rowsPerSecond", 1)
.load()
)
display(inputDF, realTime="5 minutes", outputMode="update")

Após executar o código, você verá uma tabela que é atualizada em tempo real à medida que novas linhas são geradas. A tabela exibe uma coluna timestamp e uma coluna value que incrementa a cada linha.

Entendendo o código​

O código acima demonstra os componentes essenciais de uma consulta de transmissão de tempo real. As tabelas a seguir explicam os key parâmetros e o que eles controlam:

Parâmetro

Descrição

format("rate")

Utiliza a fonte de taxa, uma fonte integrada que gera linhas a uma taxa configurável. Isso é útil para testes sem dependências externas.

numPartitions

Define o número de partições para os dados gerados.

rowsPerSecond

Controla quantas linhas são geradas por segundo.

realTime="5 minutes"

Ativa o modo em tempo real. O intervalo especifica a frequência com que os pontos de verificação da consulta progridem. Intervalos mais longos significam verificações menos frequentes, mas também tempos de recuperação potencialmente mais longos após falhas.

outputMode="update"

O modo em tempo real requer o modo de saída de atualização.

Parâmetro

Descrição

format("rate")

Utiliza a fonte de taxa, uma fonte integrada que gera linhas a uma taxa configurável. Isso é útil para testes sem dependências externas.

numPartitions

Define o número de partições para os dados gerados.

rowsPerSecond

Controla quantas linhas são geradas por segundo.

realTime="5 minutes"

Ativa o modo em tempo real. O intervalo especifica a frequência com que os pontos de verificação da consulta progridem. Intervalos mais longos significam verificações menos frequentes, mas também tempos de recuperação potencialmente mais longos após falhas.

outputMode="update"

O modo em tempo real requer o modo de saída de atualização.

o passo 3: Validar resultados​

Ao executar a consulta, a função display cria uma tabela que é atualizada em tempo real à medida que a fonte de dados gera novas linhas. Cada linha contém:

  • Um registro de data e hora que indica quando a linha foi gerada pela fonte de taxa.
  • Um contador que aumenta monotonicamente a cada nova linha.

A tabela é atualizada continuamente com latência mínima, demonstrando como o modo em tempo real processa os dados assim que eles ficam disponíveis. Essa é a principal vantagem do modo Tempo Real: a capacidade de visualizar e agir sobre os dados imediatamente, em vez de esperar pelo processamento de lotes.

Recursos adicionais​

Agora que você executou sua primeira consulta real, explore estes recursos para criar aplicativos de transmissão de produção com Kafka, Kinesis e outras fontes compatíveis: