Uma companhia aérea recebia continuamente os eventos do ciclo de vida dos seus bilhetes por meio de um GDS. Emissões, trocas, reembolsos, anulações, taxas e formas de pagamento chegavam por uma fila de mensagens, dentro de uma estrutura XML profundamente aninhada.
A consolidação dependia de uma implementação artesanal de Spark Streaming. Escritas manuais, triggers fixos e regras distribuídas por notebooks tornavam a operação difícil de testar e reprocessar. A análise comercial recebia a informação consolidada com latência de dias.
Nosso mandato cobriu a substituição de ponta a ponta, da integração com a fila ao modelo de negócio. Antes de desenhar a arquitetura, questionamos onde a baixa latência realmente mudaria uma decisão. Essa pergunta evitou espalhar complexidade de streaming por camadas que não precisavam dela.
Tempo real só se paga quando existe, do outro lado, uma decisão que não pode esperar pelo processamento da noite.