tempo real mode em transmissão estruturada
Esta página descreve os conceitos por trás do modo tempo real na transmissão estruturada, incluindo o que é, como ele atinge baixa latência e quando usá-lo.
O que é o modo em tempo real?
O modo tempo real é um tipo de gatilho para transmissão estruturada que permite o processamento de dados com latência ultrabaixa, com latência de ponta a ponta de apenas cinco milissegundos. Utilize o modo tempo real para cargas de trabalho operacionais que exigem resposta imediata aos dados transmitidos, como detecção de fraudes, personalização em tempo real e sistemas de tomada de decisão instantânea.
Como o modo em tempo real alcança baixa latência
O modo em tempo real aprimora a arquitetura de execução ao:
- Executar lotes de longa duração (o default é de cinco minutos), nos quais o sistema processa os dados à medida que ficam disponíveis na fonte.
- programar todas as etapas da consulta simultaneamente. Isso exige que o número de vagas de tarefas disponíveis seja igual ou maior que o número de tarefas de todos os estágios em um lote.
- A transmissão de dados entre estágios ocorre assim que os dados são produzidos, utilizando um mecanismo de embaralhamento de transmissão.
Ao final do processamento de um lote, e antes do início dos próximos lotes, a transmissão estruturada verifica o andamento e publica métricas. A duração dos lotes afeta a frequência dos checkpoints:
- Para lotes maiores, o checkpointing ocorre com menos frequência, o que significa replays mais longos em caso de falha e disponibilidade de métricas atrasada.
- Para lotes menores, o checkpointing ocorre com mais frequência, o que pode afetar a latência.
A Databricks recomenda comparar o modo em tempo real com sua carga de trabalho alvo para encontrar o intervalo de ativação apropriado.
Quando usar o modo em tempo real
Selecione o modo em tempo real quando o seu caso de uso assim o exigir:
- Latência inferior a um segundo : Aplicações que precisam responder a dados em milissegundos. Por exemplo, bloquear ou sinalizar uma transação com cartão de crédito em tempo real se a pontuação de fraude exceder um limite com base em localização incomum, valor elevado da transação ou padrões de gastos rápidos.
- Tomada de decisões operacionais : Sistemas que desencadeiam ações imediatas com base em dados recebidos. Por exemplo, exibir uma mensagem promocional quando os dados de fluxo de cliques mostrarem que um usuário está navegando em busca de um produto, oferecendo um desconto se ele comprar nos próximos 15 minutos.
- Processamento contínuo : cargas de trabalho em que os dados devem ser processados assim que chegam, em vez de em lotes periódicos.
Use o modo micro-lotes (o gatilho default da série estruturada) quando seu caso de uso exigir:
- Processamento analítico : pipeline ETL , transformações de dados e implementações de arquitetura medallion, onde os requisitos de latência são medidos em segundos ou minutos.
- Otimização de custos : cargas de trabalho onde a latência inferior a um segundo não é necessária, visto que o modo tempo real requer recursos compute dedicados.
- A frequência dos pontos de verificação é importante : Aplicações que se beneficiam de pontos de verificação mais frequentes para uma recuperação mais rápida.
Suporte e limitações de recursos
Para obter uma lista completa dos ambientes, linguagens, tipos compute , fontes, destinos, operadores e limitações conhecidas suportados, consulte a referência do modo real do Tempo.