
Nubank
Dos microsserviços Clojure à análise com Spark: as bases de dados por trás de um banco digital.
Números que importam
Stack técnica
A arquitetura em um dashboard interativo
A ideia é essa: aprender lendo o diagrama. Cada caixa e cada seta conta uma parte da história — clique pra abrir.
Cor indica o papel: cliente, streaming, storage, compute, ML, serving. Clique em qualquer caixa pra ver o que é, por que é usada e como funciona ali.
OpcionalLer o deep dive completo em textoAs mesmas ideias do diagrama, com mais contexto — recomendado depois de explorar as etapas.
Ferramentas canônicas reduzem a complexidade acidental
O artigo The value of canonicity, de 2020, cita Clojure para serviços de produção, Kafka para comunicação assíncrona, Datomic para dados de negócio de alto valor e Scala para análise.
A lição é tanto organizacional quanto técnica: ferramentas compartilhadas permitem reutilizar práticas e conhecimento entre equipes, sem proibir outra tecnologia quando o problema realmente exige.
Datomic, Clojure e a aquisição da Cognitect
O Nubank adquiriu a Cognitect, empresa por trás de Clojure e Datomic, em julho de 2020. O anúncio relatou 600 desenvolvedores Clojure, 500 microsserviços e mais de 2.000 servidores Datomic no Nubank — números daquela data.
O Datomic preserva o histórico em vez de sobrescrever o passado, o que ajuda a analisar fatos financeiros que mudam.
A plataforma batch: S3, Scala e Spark
O artigo do Nubank sobre Scala/Spark, de 2024, descreve três etapas:
- Extração diária de microsserviços e fontes externas para o Amazon S3.
- Transformação por um repositório de consultas de datasets em Scala e Spark.
- Publicação no S3 e no Google Cloud, com acesso por ferramentas como Databricks e BigQuery.
O relato cita mais de 60.000 datasets e mais de mil colaboradores por mês. Nessa escala, dependências entre transformações e definições consistentes importam tanto quanto a execução distribuída.
ML precisa de bases batch e operação em tempo real
O artigo de 2025 sobre operações de ML separa previsões batch de modelos que respondem dentro de fluxos de serviço ao vivo, e aborda Model Server, latência, custo e testes em shadow mode.
Outro artigo descreve o Avalanche, que combina Kafka com aplicações Flink em Kubernetes para processamento em tempo real. Streaming é uma capacidade documentada — não um motivo para chamar o pipeline diário de Spark de tempo real.
Fontes e leituras curadas
As fontes públicas por trás desta análise, com nosso comentário sobre por que valem seu tempo.
Aprenda o que faz isso funcionar
As aulas do DataForge que cobrem as peças dessa arquitetura.
