Comment une équipe de trois ingénieurs a réarchitecturé les pipelines de données d'Octopus Energy pour gérer une augmentation de volume de données de 48x - et a réduit les coûts de 50x dans le processus.
par Saad Ali, David Poulet, Daniel Taylor et Ismail Makhlouf
Le réseau énergétique du Royaume-Uni traverse sa transformation structurelle la plus importante depuis des décennies. Alors que les énergies renouvelables comme l'éolien et le solaire prennent une part plus importante de la production d'électricité, l'intermittence devient un problème majeur : l'énergie est bon marché quand le soleil brille et chère quand il ne brille pas.
Le modèle de règlement existant - basé sur des relevés de compteurs mensuels et des profils de consommation moyens - ne peut pas évaluer ce signal avec précision. Et si vous ne pouvez pas l'évaluer avec précision, vous ne pouvez pas le transmettre aux consommateurs, et la demande ne s'adapte jamais à l'offre.
Le règlement semih-horaire à l'échelle du marché (MHHS) est la réponse réglementaire. Chaque foyer de Grande-Bretagne passe de deux relevés de compteur par mois à 48 relevés par jour. Ce n'est pas un changement incrémental. Pour un fournisseur comme Octopus Energy, qui dessert plus de 8 millions de clients, c'est une augmentation de 48 fois des points de données qui pilotent chaque calcul de marge, chaque obligation de règlement et chaque décision commerciale.
L'implication en matière d'ingénierie des données est directe : sans ré-architecture, le coût d'infrastructure pour exécuter les pipelines de marge d'Octopus Energy devait augmenter d'un million de dollars chaque année.
L'instinct, lorsque les volumes de données augmentent de 48 fois, est de provisionner plus d'infrastructure. Pour l'équipe de données de marge d'Octopus Energy, cet instinct s'est rapidement avéré intenable. Le coût projeté par date de règlement sous l'architecture héritée était de 23,63 $ - une augmentation de 33 fois par rapport aux normes historiques. Multipliez cela sur les fenêtres de règlement, et la facture s'accumule rapidement.
Cependant, le problème plus profond n'était pas le coût de calcul, mais l'inadéquation de l'architecture. Le pipeline hérité avait été construit autour d'un seul grain : mensuel. La facturation était mensuelle. Le règlement était mensuel. L'ensemble du pipeline était monolithique par conception.
Le MHHS a introduit une séparation fondamentale. Les données de coûts de l'industrie arrivent désormais avec une granularité semih-horaire - 48 points de données par client par jour. Les clients avec des tarifs intelligents, des VE et des pompes à chaleur ont besoin de calculs de revenus semih-horaires. Les clients avec des tarifs standard règlent toujours mensuellement. L'exécution des trois via un seul pipeline monolithique signifiait le traitement de l'ensemble du jeu de données à chaque exécution, indépendamment de ce qui avait réellement changé.
Comme l'a formulé Saad Ali, responsable de l'équipe de données de marge chez Octopus Energy : « Vous ne pouvez pas simplement augmenter la puissance de calcul pour résoudre un problème comme celui-ci. Vous devez reconstruire et repenser votre logique à partir de zéro. »
L'équipe a ré-architecturé autour de trois flux spécialisés, chacun optimisé indépendamment pour son grain naturel :
Règlement - Granularité semih-horaire pour le règlement réglementaire et l'allocation des coûts. Les frais industriels à 48 points de données par jour ; ce flux correspond exactement à ce grain.
Semi-horaire - Traitement semih-horaire pour les clients à tarif intelligent : conducteurs de VE, utilisateurs de pompes à chaleur et produits à tarification horaire où le signal de prix semih-horaire est la proposition commerciale entière.
Mensuel - Traitement mensuel pour les clients à tarif standard, inchangé en grain mais désormais conciliable avec les données semih-horaires.
Un modèle d'orchestration « Job of Jobs » gère les dépendances et l'exécution parallèle sur les trois flux. Chaque flux est réglable indépendamment - ce qui fonctionne comme une optimisation Spark pour le règlement n'est pas nécessairement adapté au NHH.
Sous-jacent aux trois se trouve la couche de consommation en aval : une source de vérité unifiée et multi-grain consolidant les relevés de compteurs, les données de compteurs intelligents et les flux industriels à l'échelle multi-téraoctets. Cette couche est le pont de réconciliation entre la facturation mensuelle et le règlement semih-horaire - et elle est devenue le site de l'optimisation à plus fort effet de levier du projet.
L'approche naïve des tables de consommation en amont - retraiter l'ensemble du jeu de données multi-téraoctets à chaque exécution - aurait entraîné des coûts de calcul insoutenables avec le nouveau volume.
Le Change Data Feed (CDF) de Delta Lake a rendu le traitement incrémental réel viable à ce grain. Au lieu d'écrasements complets, le pipeline ne lit désormais que les enregistrements qui ont réellement changé depuis la dernière exécution. Le résultat : les lignes traitées par exécution sont passées de 25 milliards à 300 millions - une réduction de 98,8 %.
La fraîcheur des données est passée de hebdomadaire à quotidienne. Pour l'équipe commerciale, ce changement signifie une visibilité des marges au grain où les décisions de tarification sont réellement prises - chaque matin, pas une fois par semaine.
Remarque : le million de dollars d'économies annualisées cité ci-dessous exclut les économies supplémentaires réalisées grâce à ce passage au traitement incrémental sur les tables en amont. Le gain d'efficacité complet est plus important.
Avec 48 fois plus de données circulant dans le système, l'équipe a appliqué des optimisations ciblées validées par des mesures dans quatre catégories :
Réduction de la lignée et des E/S
Réglage des jointures et du partitionnement
Faire confiance à l'optimiseur
Ce dernier point mérite d'être souligné : la suppression des opérations de calcul injustifiées a eu autant d'impact que l'ajout de nouvelles optimisations. Si vous utilisez Z-ordering ou ANALYZE sans mesurer leur effet, ils pourraient vous coûter plus cher qu'ils ne vous rapportent.
Databricks Serverless a rendu la fenêtre de livraison de trois mois réalisable. Le temps de démarrage nul des clusters a permis à l'équipe d'itérer rapidement - écrire, exécuter, mesurer, ajuster - sans attendre le provisionnement de l'infrastructure.
L'interface utilisateur Serverless a permis des comparaisons côte à côte des exécutions, rendant pratique l'isolement de l'effet des optimisations individuelles.
Selon les mots de l'équipe : « Le processus de test et de développement n'aurait pas pu être réalisé sans serverless. L'utilisation de l'interface utilisateur serverless nous a aidés à identifier les goulots d'étranglement et à faire des comparaisons faciles entre différentes exécutions. »
| Métrique | Avant | Après | Changement |
| Lignes traitées par exécution | 25 milliards | 300 millions | Réduction de 98,8 % |
| Coût par date de règlement (MHHS projeté) | 23,63 $ | 0,48 $ | ~50x réduction |
| Coût par date de règlement (vs hérité) | 0,71 $ | 0,48 $ | 2x plus efficace |
| Économies par exécution de fin de mois | - | ~83 000 $ | vs projection non optimisée |
| Évitement des coûts annualisés | - | ~1 000 000 $ | exclut les économies en amont |
| Fraîcheur des données | Hebdomadaire | Quotidienne | Amélioration de 7x |
| Temps de construction | - | 3 mois | Équipe de trois personnes |
Les 0,48 $ par date de règlement ne sont pas seulement une réduction de 50 fois par rapport au coût projeté du MHHS - ils sont 2 fois moins chers que le système hérité ne l'a jamais été, malgré le traitement de 48 fois plus de points de données. La ré-architecture a assuré la conformité réglementaire et a rendu le système matériellement plus efficace que celui qu'elle a remplacé.
Le MHHS est une réglementation britannique sur l'énergie. Cependant, le schéma qu'il représente - un événement réglementaire ou commercial qui multiplie le volume de données à un grain plus fin - n'est pas unique à l'énergie. Chaque fois qu'un système passe du mensuel au quotidien, du quotidien au temps réel, ou de l'agrégat au transactionnel, les mêmes dynamiques s'appliquent.
Quatre enseignements transférables de l'expérience Octopus Energy :
Selon Saad : « En rendant nos systèmes plus rapides et plus efficaces, nous pouvons proposer des tarifs plus intelligents qui aident nos clients à utiliser l'énergie lorsqu'elle est la moins chère et la plus propre. »
La réduction de la base de coûts fait quelque chose de spécifique : elle supprime la barrière économique au traitement des données à haute fréquence. Cela rend l'équilibrage du réseau viable en tant que produit. Cela rend les tarifs intelligents commercialement durables. C'est ainsi que l'ingénierie des données à grande échelle se connecte à la transition énergétique - non pas comme une charge d'infrastructure, mais comme le fondement commercial de celle-ci.
La conformité MHHS était le mandat. Rendre l'énergie durable l'option abordable est la mission. L'ingénierie des données est ce qui relie les deux.
———
Saad Ali est responsable de l'équipe de données de marge chez Octopus Energy. Ismail Makhlouf, David Poulet et Daniel Taylor sont architectes de solutions chez Databricks.
(Cet article de blog a été traduit à l'aide d'outils basés sur l'intelligence artificielle) Article original
Abonnez-vous à notre blog et recevez les derniers articles directement dans votre boîte mail.