Nota técnica
Nota
plataforma
Real-Time Ops Monitor: operação em streaming
Evolução do pipeline batch para visão quase tempo real: fila, atrasos e alertas com Kafka e Spark Streaming — posicionamento forte em engenharia.
7 min de leitura media planejamento
Stack: Apache Kafka Spark Structured Streaming Python Kubernetes ou managed
Visão geral
Segunda fase da plataforma delivery: em vez de apenas batch diário, ingerir eventos em fluxo para monitorar pedidos entrando, fila crescendo e violações de SLA enquanto acontecem.
Problema
- Batch de hora em hora não salva pico de 20 minutos.
- Operação precisa de alerta imediato (fila, loja offline, atraso em cascata).
- Carreira: domínio de streaming diferencia engenheiro de analista apenas consumindo relatório.
Funcionalidades-alvo
- Contagem de pedidos por minuto por loja.
- Lag entre evento na origem e processamento.
- Alerta quando SLA projetado ultrapassa limite (heurística simples antes de ML).
- Visualização ao vivo (WebSocket + front leve ou Grafana).
Arquitetura de referência
API / CDC → Kafka topics (orders, status) → Spark Streaming
→ agregações em janela (5 min) → sink (Redis/Postgres) → alertas
- Idempotência e exactly-once são decisões explícitas; para MVP, at-least-once + dedup pode bastar.
Relação com o case atual
- O mock API pode publicar em Kafka em paralelo ao batch Parquet.
- Mesmas regras de auditoria podem rodar em modo janela (versão simplificada).
MVP incremental
- Um único topic + consumidor que persiste último estado por pedido.
- Regra: “mais de N pedidos em preparo há M minutos” → alerta.
- Sem UI complexa: Slack ou e-mail.
Riscos
- Complexidade operacional (Kafka, estado, replay).
- Custo de infra em nuvem — começar com cluster gerenciado ou Redpanda local.
Próximo passo
Prototipar produtor Kafka ao lado do FastAPI mock e um consumidor Python que imprime contagem por loja a cada 1 minuto.