Recommandation de placement de données pour les traitements dans des lacs de données Smartgrids
Auteur / Autrice : | Asma Zgolli |
Direction : | Genoveva Vargas-Solar, Christine Collet, Christophe Bobineau |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 23/08/2021 |
Etablissement(s) : | Université Grenoble Alpes |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, sciences et technologies de l'information, informatique (Grenoble ; 1995-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire d'informatique de Grenoble (2007-....) |
Equipe de recherche : Scalable information discovery and exploitation (Grenoble) | |
Jury : | Président / Présidente : Frédérique Laforest |
Examinateurs / Examinatrices : Nicolas Travers | |
Rapporteur / Rapporteuse : Ioana Gabriela Manolescu Goujot, Ladjel Bellatreche |
Mots clés
Mots clés contrôlés
Mots clés libres
Résumé
Cette thèse porte sur l’optimisation de l’accès aux masses de données générées et/ou exploitées dans la gestion des réseaux de distribution électriques intelligents ou smart grids. Ces masses de données (mesures brutes, données raffinées, historiques, etc.) sont en pratique représentées dans des modèles de données très variés (relationnel, clé-valeur, documents, graphes, etc.) et stockées dans des systèmes Big Data très hétérogènes. En effet ces systèmes offrent des fonctionnalités variés (par exemple, certains ne peuvent effectuer une jointure), des structures de données (pour le stockage, l’indexation), des algorithmes et des performances très différentes.L’objectif de cette thèse est d’aborder l’optimisation de workflow de traitements sur ces ensembles de données par la recommandation de placement des données sur les systèmes les plus appropriés de façon à minimiser le temps total d’exécution et en se basant sur des métadonnées décrivant les ensembles de données, les workflows et les systèmes de stockage et de traitement. Le temps total d’exécution est composé du temps de transformation et de déplacement des données, et du temps d’exécution des requêtes réécrites en fonction de ces transformations. En effet, nous explorons également la possibilité de déplacer les données d’un système à un autre s’il offre des caractéristiques intéressantes pour favoriser l’exécution des requêtes des workflows.L’étude des techniques utilisées dans les systèmes de gestion de masses de données et des systèmes d’intégration/de médiation de masses de données nous a convaincus de l’impossibilité de définir un modèle d’estimation de coût d’exécution de plans de requêtes universel qui permette de comparer les performances des différents systèmes. Une approche intéressante est d’utiliser des techniques d’apprentissage automatique pour cela.Nous proposons donc une approche, nommé DWS – pour Data, Workloads and Systems –, qui explore les différentes combinaisons de systèmes pour exécuter un workflow en éliminant les solutions où les systèmes ne peuvent exécuter tous les opérateurs d’une requête (condition de faisabilité) et qui respecte les règles métier quant au point de stockage des données initiales, intermédiaires ou finales (condition de conformité). L’estimation du temps d’exécution des différentes requêtes (de transformation de données ou extraites du workflow) se base sur l’injection de statistiques dans les systèmes, pour simuler l’exécution et ainsi récupérer les plans optimaux et éventuellement les estimations de coût, et l’estimation du temps d’exécution par apprentissage en incluant toutes les métadonnées utiles concernant les jeux de données, les workloads et les systèmes.Pour ce faire, nous présentons dans ce document (i) un modèle de métadonnées unifié sur les données (tailles, distribution de valeurs, disponibilité, emplacement, schémas, tailles, statistiques, etc.), sur les workloads (requêtes, opérateurs, applications, statistiques, etc.) et sur les systèmes (APIs, modèles de données, modèles de distributions, modèles de stockage, etc.) ; (ii) Une architecture et des algorithmes pour le support de la recommandation de placement de données pour des workloads ; et (iii) les résultats des expérimentations effectuées à l’aide de notre prototype.