Como uma equipe de três engenheiros reestruturou os pipelines de dados da Octopus Energy para lidar com um aumento de 48x no volume de dados - e reduziu os custos em 50x no processo.
A rede de energia do Reino Unido está no meio de sua transformação estrutural mais significativa em décadas. À medida que as energias renováveis, como eólica e solar, ganham uma participação maior na geração de eletricidade, a intermitência se torna um problema de primeira classe: a energia é barata quando o sol brilha e cara quando não brilha.
O modelo de liquidação existente - construído com base em leituras mensais de medidores e perfis de consumo médios - não consegue precificar esse sinal com precisão. E se você não consegue precificá-lo com precisão, não consegue repassar o sinal aos consumidores, e a demanda nunca muda para corresponder à oferta.
A Liquidação Meia-Horária em toda a rede (MHHS - Market-wide Half-Hourly Settlement) é a resposta regulatória. Cada residência na Grã-Bretanha passa de duas leituras de medidor por mês para 48 leituras por dia. Isso não é uma mudança incremental. Para um fornecedor como a Octopus Energy, que atende a mais de 8 milhões de clientes, é um aumento de 48 vezes nos pontos de dados que impulsionam cada cálculo de margem, cada obrigação de liquidação e cada decisão comercial.
A implicação de engenharia de dados é direta: sem re-arquitetura, o custo da infraestrutura para executar os pipelines de margem da Octopus Energy foi projetado para disparar em US$ 1 milhão todos os anos.
O instinto quando os volumes de dados aumentam 48 vezes é provisionar mais infraestrutura. Para a equipe de dados de margem da Octopus Energy, esse instinto foi rapidamente validado como insustentável. O custo projetado por data de liquidação sob a arquitetura legada era de US$ 23,63 - um aumento de 33 vezes em relação às normas históricas. Multiplique isso pelas janelas de liquidação, e a conta se acumula rapidamente.
No entanto, o problema mais profundo não era o custo de processamento - era a incompatibilidade da arquitetura. O pipeline legado foi construído em torno de um único grão: mensal. A faturação era mensal. A liquidação era mensal. Todo o pipeline era monolítico por design.
O MHHS introduziu uma divisão fundamental. Os dados de custo da indústria agora chegam com granularidade de meia hora - 48 pontos de dados por cliente por dia. Clientes com tarifas inteligentes, com veículos elétricos e bombas de calor, precisam de cálculos de receita de meia hora. Clientes com tarifas padrão ainda liquidam mensalmente. Executar os três através de um único pipeline monolítico significava processar todo o conjunto de dados em cada execução, independentemente do que realmente havia mudado.
Como Saad Ali, Líder da Equipe de Dados de Margem na Octopus Energy, resumiu: "Você não pode simplesmente jogar mais capacidade de processamento em um problema como este. Você tem que reconstruir e repensar sua lógica do zero."
A equipe re-arquitetou em torno de três fluxos especializados, cada um otimizado independentemente para seu grão natural:
Liquidação - Granularidade de meia hora para liquidação regulatória e alocação de custos. Encargos da indústria em 48 pontos de dados por dia; este fluxo corresponde exatamente a esse grão.
Meia-Hora - Processamento de meia hora para clientes com tarifas inteligentes: motoristas de veículos elétricos, usuários de bombas de calor e produtos de uso do tempo, onde o sinal de preço de meia hora é toda a proposta comercial.
Mensal - Processamento mensal para clientes com tarifas padrão, inalterado em grão, mas agora reconciliável com os dados de meia hora.
Um padrão de orquestração "Job of Jobs" gerencia dependências e execução paralela em todos os três fluxos. Cada fluxo é ajustável independentemente - o que funciona como uma otimização do Spark para Liquidação não é necessariamente certo para NHH.
Sustentando todos os três está a camada de consumo downstream: uma fonte de verdade unificada e multi-grão que consolida leituras de medidores, dados de medidores inteligentes e fluxos da indústria em escala de vários terabytes. Esta camada é a ponte de reconciliação entre a faturaç ão mensal e a liquidação de meia hora - e tornou-se o local da otimização de maior alavancagem única no projeto.
A abordagem ingênua para as tabelas de consumo upstream - reprocessando todo o conjunto de dados de vários terabytes a cada execução - teria significado custos de processamento insustentáveis no novo volume.
O Change Data Feed (CDF) do Delta Lake tornou o processamento incremental real viável nesse grão. Em vez de sobrescritas completas, o pipeline agora lê apenas os registros que realmente mudaram desde a última execução. O resultado: linhas processadas por execução caíram de 25 bilhões para 300 milhões - uma redução de 98,8%.
A atualidade dos dados melhorou de semanal para diária. Para a equipe comercial, essa mudança significa visibilidade da margem no grão em que as decisões de precificação são realmente tomadas - todas as manhãs, não uma vez por semana.
Nota: os valores de economia anualizada de US$ 1 milhão citados abaixo excluem as economias adicionais desta mudança para processamento incremental em tabelas upstream. O ganho total de eficiência é maior.
Com 48 vezes mais dados fluindo pelo sistema, a equipe aplicou otimizações direcionadas validadas por medição em quatro categorias:
Redução de linhagem e I/O
Ajuste de junção e partição
Confiança no otimizador
Este último ponto merece ênfase: remover operações de computação injustificadas foi tão impactante quanto adicionar novas otimizações. Se você está executando Z-ordering ou ANALYZE sem medir seu efeito, eles podem estar custando mais do que economizando.
O Databricks Serverless tornou a janela de entrega de três meses viável. O tempo zero de inicialização de cluster significou que a equipe pôde iterar rapidamente - escrever, executar, medir, ajustar - sem esperar que a infraestrutura fosse provisionada.
A interface do usuário do Serverless permitiu comparações lado a lado de execuções, tornando prático isolar o efeito de otimizações individuais.
Nas palavras da própria equipe: "O processo de teste e desenvolvimento não poderia ter sido feito sem o serverless. Usar a interface do usuário do serverless nos ajudou a identificar gargalos e fazer comparações fáceis entre diferentes execuções."
| Métrica | Antes | Depois | Mudança |
| Linhas processadas por execução | 25 bilhões | 300 milhões | Redução de 98,8% |
| Custo por data de liquidação (MHHS projetado) | US$ 23,63 | US$ 0,48 | Redução de ~50x |
| Custo por data de liquidação (vs legado) | US$ 0,71 | US$ 0,48 | 2x mais eficiente |
| Economia por execução de fim de mês | - | ~US$ 83.000 | vs projeção não otimizada |
| Evitação de custos anualizada | - | ~US$ 1.000.000 | exclui economias upstream |
| Atualidade dos dados | Semanal | Diária | Melhora de 7x |
| Tempo de build | - | 3 meses | Equipe de três pessoas |
Os US$ 0,48 por data de liquidação não são apenas uma redução de 50x do custo projetado do MHHS - são 2x mais baratos do que o sistema legado jamais foi, apesar de processar 48 vezes mais pontos de dados. A re-arquitetura entregou conformidade regulatória e tornou o sistema materialmente mais eficiente do que aquele que substituiu.
O MHHS é uma regulamentação do setor de energia do Reino Unido. No entanto, o padrão que ele representa - um evento regulatório ou de negócios que multiplica o volume de dados em um grão mais fino - não é exclusivo do setor de energia. Sempre que um sistema passa de mensal para diário, de diário para em tempo real, ou de agregado para transacional, as mesmas dinâmicas se aplicam.
Quatro lições transferíveis da experiência da Octopus Energy:
Nas palavras de Saad: "Ao tornar nossos sistemas mais rápidos e eficientes, podemos oferecer tarifas mais inteligentes que ajudam nossos clientes a usar energia quando ela é mais barata e mais limpa."
A base de custo reduzida faz algo específico: remove a barreira econômica para o processamento de dados de alta frequência. Isso torna o balanceamento da rede viável como um produto. Isso torna as tarifas inteligentes comercialmente sustentáveis. É assim que a engenharia de dados em escala se conecta à transição energética - não como um overhead de infraestrutura, mas como a base comercial para ela.
A conformidade com o MHHS foi o mandato. Tornar a energia sustentável a opção acessível é a missão. A engenharia de dados é o que conecta os dois.
———
Saad Ali é Líder da Equipe de Dados de Margem na Octopus Energy. Ismail Makhlouf, David Poulet e Daniel Taylor são Arquitetos de Soluções na Databricks.
(Esta publicação no blog foi traduzida utilizando ferramentas baseadas em inteligência artificial) Publicação original
Assine nosso blog e receba os posts mais recentes diretamente na sua caixa de entrada.