BASE DE DONNÉES DE GRAPHES POUR L’ANALYSE DU RÉSEAU ÉLECTRIQUE Big Data Paris - 2015 EDF Recherche & Développement Département MIRE Projet SINAPSE 11 mars 2015 CONTEXTE EDF R&D Projet SINAPSE 2014/2015 PRÉSENTATION DE EDF R&D Une R&D pour tous les métiers du groupe EDF. Production Management d’énergie Commerce Energies renouvelables Réseaux électriques Technologies de l’information Base graphe pour le réseau électrique | 03/2015 | 3 LE RÉSEAU ÉLECTRIQUE Le réseau de distribution électrique français. 2 240 postes sources. 1,3 million de kilomètres de lignes. 750 400 postes de transformation HTA/BT. 232 636 sites de production raccordés au réseau. 35 millions de clients desservis. Base graphe pour le réseau électrique | 03/2015 | 4 LE PROJET SINAPSE Activités prospectives d’étude et recherche de solutions de stockage et de traitement des données pour le réseau électrique. Solutions innovantes liées au Big Data et aux Data Analytics. Historisation de données en vue de traitement à posteriori. Base graphe pour le réseau électrique | 03/2015 | 5 LA PLATEFORME DATA ANALYTICS Schéma cible de la plateforme Data Analytics du projet SINAPSE. Exploration de plusieurs solutions de stockage synchronisées entre elles. Concept de persistance polyglotte : une solution adaptée à chaque type de données. Base graphe pour le réseau électrique | 03/2015 | 6 BASE DE DONNÉES DE GRAPHES POUR LE RÉSEAU ÉLECTRIQUE EDF R&D Projet SINAPSE 2014/2015 BASE DE DONNÉES DE GRAPHES POUR LE RÉSEAU ÉLECTRIQUE Base de données de graphes vs base relationnelle pour le réseau électrique. Le réseau électrique constitue naturellement un graphe. La topologie du réseau n’est pas fixe, elle varie en fonction des changements de configuration du réseau électrique. La base de données graphe permet de déduire les informations topologiques à partir de la configuration du réseau électrique (au lieu de stocker « en dur » ces informations topologiques dans une base relationnelle). Une base relationnelle exporte la structure du réseau électrique pour le traiter par des codes de calcul externes. Ces traitements peuvent être réalisés directement sur la base orientée graphe. Choix de Neo4j pour l’expérimentation du projet SINAPSE. Base de graphe reconnue, dynamique, beaucoup d’outils proposés (API…). Solution libre dans sa version communautaire. Formation disponible sur le produit et ses outils. Base graphe pour le réseau électrique | 03/2015 | 8 BASE DE DONNÉES DE GRAPHES POUR LE RÉSEAU ÉLECTRIQUE Le réseau électrique constitue naturellement un graphe. Réseau simple, 1 poste source avec 2 départs, 2 postes clients. Base graphe pour le réseau électrique | 03/2015 | 9 BASE DE DONNÉES DE GRAPHES POUR LE RÉSEAU ÉLECTRIQUE Chargement dans Neo4j. Classes du modèle électrique (CIM) utilisées comme des labels sur les nœuds. Création de propriétés (identifiant, état…). 3 types de relations : CONNECTEDTO, CONTAINS et MEASUREDBY. Base graphe pour le réseau électrique | 03/2015 | 10 BASE DE DONNÉES DE GRAPHES POUR LE RÉSEAU ÉLECTRIQUE Conversion d’un modèle de classes vers un modèle nœuds-relations. Utilisation du modèle standard CIM (Common Information Model) de la CEI (Commission Electrotechnique Internationale). Base graphe pour le réseau électrique | 03/2015 | 11 FONCTIONS RÉSEAUX EDF R&D Projet SINAPSE 2014/2015 FONCTIONS RÉSEAUX DANS NEO4J Utilisation de requêtes Cypher. Exemples : Retourne un nœud « Breaker » nommé « BRK_1 », ainsi que les noeuds (équipements électriques) qui lui sont connectés. MATCH (startnode:Breaker {name: "BRK_1"})-[CONNECTEDTO]-(endnodes) RETURN startnode, endnodes Utilisation de l’API Java Traversal pour les parcours de graphe. Un parcours est définit notamment à partir des éléments suivants. • Starting node : nœud de départ du parcours. • Expander : quels nœuds et quelles relations doivent être parcourue. • Evaluator : décide quand il faut stopper ou continuer le parcours, et quoi retourner. • Order : sens du parcours (profondeur ou largeur). • Uniqueness : parcours des nœuds et des relations une seule fois. Base graphe pour le réseau électrique | 03/2015 | 13 DÉTERMINER LE SCHÉMA ÉLECTRIQUE DU RÉSEAU Permet d’associer les mesures en différents points du réseau. Recherche des postes alimentés par un départ électrique. Un seul Traversal (ConnectedConsumerEvaluator). Base graphe pour le réseau électrique | 03/2015 | 14 LIMITER LE TEMPS DE COUPURE DES CLIENTS Recherche des départs pouvant « secourir » le départ en incident. Un seul Traversal (TransferBreakerEvaluator). Base graphe pour le réseau électrique | 03/2015 | 15 IDENTIFIER LES CONTRAINTES ÉLECTRIQUES SUR LE RÉSEAU Calcul simplifié des transits de puissance et des chutes de tension sur le réseau. Un premier Traversal pour les transits de puissance (PowerFlowEvaluator). Le parcours en profondeur accède aux consommations (puissances active et réactive). Le chemin est remonté pour cumuler ces puissances en amont. Base graphe pour le réseau électrique | 03/2015 | 16 IDENTIFIER LES CONTRAINTES SUR LE RÉSEAU Améliorer la qualité de fourniture sur le réseau. Un second Traversal pour les chutes de tension (VoltageDropTraversal). Le parcours en profondeur accède aux ligne électriques. Lorsqu’une ligne électrique est atteinte, la chute de tension propre à cette ligne est calculée, à partir de ses caractéristiques techniques et de la puissance qui transite sur cette ligne. La chute de tension est également cumulée avec celle calculée en amont du réseau. Base graphe pour le réseau électrique | 03/2015 | 17 SYNTHÈSE EDF R&D Projet SINAPSE 2014/2015 SYNTHÈSE Avantages de la base de données de graphes Neo4j. Permet d’avoir les traitements topologiques au plus proche des données, au lieu d’exporter ces données vers des traitements externes. Limite le nombre des interfaces entre la base de données et ces traitements externes. Permet de ne pas stocker des informations topologiques souvent modifiées, mais plutôt de les déduire à partir d’autres informations. Base graphe pour le réseau électrique | 03/2015 | 19 SYNTHÈSE Contexte de l’expérimentation EDF R&D. Choix des données à stocker dans Neo4j (uniquement les données topologiques, ou ajout de quelques données métiers nécessaires aux fonctions). • Le modèle Neo4j est flexible pour accueillir de nouvelles données liées à de nouveaux besoins. L’intérêt fonctionnel d’une base orientée graphe a été montré. Prochaines étapes & perspectives. Généraliser l’expérimentation à l’ensemble du réseau électrique. • Moyenne Tension (MT) et Basse Tension (BT). • Aujourd’hui, expérimentation sur un graphe de 360.000 nœuds (~ 1/30 du réseau MT français). Passer de l’expérimentation à un cas réel d’exploitation sur le réseau électrique. Gérer l’historique du réseau : pouvoir traiter des topologies du réseau dans le passé. Autres fonctions prévues à étudier avec le métier (simulation d’un plan de reprise sur incident…). Utilisation d’un cluster de server pour tester la disponibilité des données (passage à la version Enterprise de Neo4j). Base graphe pour le réseau électrique | 03/2015 | 20 SYNTHÈSE Caractéristiques de la base utilisée pour l’expérimentation. Base graphe pour le réseau électrique | 03/2015 | 21 MERCI Julie TISSERAND [email protected] Jérôme FREMONT [email protected] Stéphane GOUGEON [email protected] EDF Labs Clamart 1 avenue du Général De Gaulle 92141 Clamart cedex