A plataforma de dados interna da Cloudflare, Town Lake, registrou 91.760 consultas relacionadas a faturamento de 324 funcionários em uma única janela de medição — 53% de todo o tráfego da plataforma. A descoberta de um post de engenharia de maio de 2026 por Brian Brunner, Dmitry Alexeenko e Matt Moen reformula o que significa "infraestrutura de observabilidade" em escala: a atribuição de custos é a carga de trabalho dominante, não logs ou traces.
Uma década de proliferação de dados impulsionou o problema. Em uma empresa processando mais de um bilhão de eventos por segundo, um engenheiro investigando um problema de cliente precisava de Postgres para metadados de conta, ClickHouse para eventos de análise, BigQuery para rollups de uso, R2 para logs brutos e Kafka para sinais em tempo real. Cada sistema exigia credenciais separadas, linguagem de consulta e política de retenção. O pipeline de análise fazia downsampling de 700M+ eventos por segundo — aceitável para latência de dashboard, catastrófico para faturamento, onde contagens exatas são necessárias, não aproximações.
Town Lake usa uma stack lakehouse: Apache Trino como mecanismo de consulta, Apache Iceberg em R2 para armazenamento e DataHub para catálogo de metadados. Uma única consulta Trino une uma tabela Postgres, tabela ClickHouse e tabela Iceberg em R2 sem materializar resultados intermediários. O exemplo do post: "top 100 clientes pagadores por requisições Workers esta semana" compila em um plano que empurra filtros para ClickHouse, une a dimensão de conta em Postgres e classifica contra rollups de faturamento em R2 — tudo em uma execução. Iceberg trata evolução de schema, time travel e compactação de partição; linhas por minuto envelhecem para horária, depois diária, com Parquet em R2 substancialmente mais barato que armazenamento OLAP.
O modelo de governança é fechado por padrão. Todo novo dataset integrado permanece inacessível até que dois processos sejam concluídos: Skimmer (um scanner PII contínuo construído em Workers AI) executa classificação de coluna de dois passos e revisores humanos validam ou substituem antes da abertura de acesso. Lifeguard armazena regras de acesso em D1, puxa membros de grupo de identidade interna e renderiza uma política JSON que Trino lê via HTTP. Usuários bloqueados encontram a porta de entrada, não o tempo de consulta — uma distinção crítica quando consultas tocam tabelas de faturamento com PII misturado. Uma nova coluna não revisada permanece oculta de DESCRIBE e SHOW COLUMNS sem quebrar dashboards existentes no resto de uma tabela aprovada.
Skipper, um agente IA construído na própria stack da Cloudflare (Workers, Workers AI, Durable Objects, D1, R2, Workflows, KV), funciona sobre Town Lake. Atualmente roteando através de Anthropic Claude via Claude Managed Agents, a arquitetura é agnóstica de modelo. Skipper usa cinco camadas de contexto para reduzir alucinações: metadados de schema e uso de DataHub, anotações humanas, lógica de transformação SQL e linhagem de definições Transformer ELT, documentos de modelo de dados curados e consultas de introspecção ao vivo. Rollups SQL de receita legados de 200–300 linhas agora têm cinco linhas. "Top 100 clientes por receita" é executado em aproximadamente três segundos.
Três lições emergem do post de engenharia. Prompts mais simples melhoraram a precisão sobre prompts elaborados. Consolidar ferramentas sobrepostas reduziu seleção incorreta de ferramentas. Injetar lógica de transformação SQL e linhagem de dados no contexto do agente — não apenas metadados de schema — permitiu ao agente entender semântica de negócios. A infraestrutura IA interna servindo 3.683 usuários processou 241 bilhões de tokens através de AI Gateway; sinais operacionais estão ao vivo, não são teóricos.
Conclusão do arquiteto: se você está construindo uma plataforma de análise multi-tenant onde a precisão de faturamento é um requisito, as restrições de governança e fidelidade para atribuição de custos definirão sua arquitetura de consulta — não seus casos de uso de observabilidade.
Escrito e editado por agentes de IA · Methodology