Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Cari2020 dembele

18 vues

Publié le

Vers le traitement et optimisation écologique des requêtes

Publié dans : Données & analyses
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Cari2020 dembele

  1. 1. Vers le Traitement et Optimisation Écologique des Requêtes Simon Pierre Dembele1, Ladjel Bellatreche1, Ordonez Carlos2 1LIAS/ISAE-ENSMA, Futuroscope, France 2Universite de Houston, USA Laboratoire d’Informatique et d’Automatique pour les Systèmes
  2. 2. 2 Notre planète change Les impacts IncendiesInondations Pénuries d’eau Hausse de la Mortalité Montée des eaux, … Contexte
  3. 3. 3 � 23 Sept. 2019, «Vous avez volé mes rêves et mon enfance» � 23 Juil. 2019, Elle a recommandé aux législateurs du Parlement Français d’écouter les scientifiques sur la question du changement climatique et d’agir maintenant pour éviter une catastrophe. Sensibilisation au réchauffement climatique Greta Thunberg …”the world’s most valuable resource is no longer oil, but data”, May 2017 … ’’Data isn’t the new oil, it’s the new CO2’’, Blog entry of the Martin Tisné, July 2019 Prévision de la consommation mondiale des Data Centers entre 2010-2030 (KWh) Conséquences directes select nation, o_year, sum(amount) as sum_profit from ( select n_name as nation, extract(year from o_orderdate) as o_year, l_extendedprice * (1 - l_discount) - ps_supplycost * l_quantity as amount from part, supplier, lineitem, partsupp, orders, nation where s_suppkey = l_suppkey and ps_suppkey = l_suppkey and ps_partkey = l_partkey and p_partkey = l_partkey and o_orderkey = l_orderkey and s_nationkey = n_nationkey and p_name like '%indian%' ) ; Exemple de requête SQL Traitement vert Résultats (usager vert) Institutions nationales et internationales  COP (ex. COP21: Paris) ScientifiquesIndividuels Contexte
  4. 4. 4 Répartition de la Consommation électrique dans un Datacenter Les SGBD sont les plus gros consommateurs d’énergie électrique Contexte
  5. 5. IT: Flash, etc. 5 Solutions vertes
  6. 6. 6  État de l’art  Approches  Expérimentation  Conclusion Agenda
  7. 7. 7 Concepts de base  État de l’art  Approches  Experimentation  Conclusion Dans l’univers, l’énergie se transforme : elle «vit», puis «meurt» en chaleur..
  8. 8. 8 Puissance: est la quantité d’énergie d’un système par unité de temps. Elle se mesure en watts. 𝑃 𝑡 = Τ𝑑 𝑑𝑡𝐸(𝑡) Energie: l’énergie est généralement définie comme la capacité d’un système à réaliser un travail. La quantité d’énergie que possède un système représente la quantité de travail qu’il peut réaliser . Elle se mesure en Joules 𝑬(𝒕) = න 𝟎 𝒕 𝒑 𝝉 𝒅𝝉 Concepts de base Puissance Pic: représente la puissance maximale. Puissance moyenne: représente la valeur moyenne de la puissance calculée lors du traitement des requêtes.  État de l’art  Approches  Experimentation  Conclusion
  9. 9. 9 Nouveaux équipements moins énergivores (SSD, Flash, GPU, CPU) Solutions matérielles Solutions logicielles  État de l’art  Approches  Experimentation  ConclusionInformatique Verte Efficacité Énergétique Technique de l’ajustement dynamique de la performance (DVFS) sur les composants Technique du Co-processing du CPU et GPU Technique de Cloud computing Conception verte des programmes Conception de nouveaux modèles de données et algorithmes efficientes Promouvoir la technique de virtualization applicative Utilisation verte du système informatique Redéfinition des concepts de SGBD (éco- traitement, éco-indexation
  10. 10. Energie Sort Index Scan Bitmap Scan Hash Join Seq. scan  Dynamic Energy Estimation of Query Plans in Database Systems [Zichen Xu, Yi-Cheng Tu, Xiaorui Wang] en 2013 Plan Energie de chaque opération est estimée 7 3 5 8 5 28 Modèle de coût énergétique La formule générale pour calculer l’énergie d’un opérateur est: 10  État de l’art  Approches  Experimentation  Conclusion État de l’art ෠𝐸 𝑥 = 𝑊𝑐𝑝𝑢 ∗ 𝑁𝑡𝑢𝑝𝑙𝑒𝑠 𝑚 ∗ 𝑁𝑡𝑢𝑝𝑙𝑒𝑠 + 𝑊𝐼/𝑂 ∗ 𝑁 𝑝𝑎𝑔𝑒𝑠 où 𝑊𝑐𝑝𝑢 et 𝑊𝐼/𝑂 sont les coefficients de la consommation d'énergie d'un tuple traité par le CPU (𝑁𝑡𝑢𝑝𝑙𝑒𝑠), et le coefficient statique d'une page traitée en I/O(Npages), et m est un coefficient du modèle pour la consommation d'énergie du processeur (m = 0.5).
  11. 11. Peak Power Plays in Database Engines [Mayuresh Kunjir Puneet K. Birwa Jayant R. Haritsa] en 2012 Plan E = 12 E=20 E=5 E=10 11  État de l’art  Approches  Experimentation  Conclusion Modèle de coût énergétique Les auteurs ont utilisé la technique de régression multiple affine par morceaux pour construire leurs modèle de coût. Pour un nœud de base B (par exemple : un scan séquentiel), le débit est calculé comme: 𝑇𝑎𝑢𝑥 𝐵 = 𝐸𝑛𝑡𝑟𝑒 𝐵 𝑇𝑒𝑚𝑝𝑠𝐷𝑖𝑠𝑞𝑢𝑒 𝐵 Où 𝐸𝑛𝑡𝑟𝑒 𝐵 indique la taille des données extraites du disque par B et 𝑇𝑒𝑚𝑝𝑠𝐷𝑖𝑠𝑞𝑢𝑒 𝐵 est le temps de transfert du disque. État de l’art
  12. 12.  Eco-Processing of OLAP Complex Queries [Amine ROUKH, Ladjel BELLATRECHE ] en 2015 12  État de l’art  Approches  Experimentation  Conclusion Segmentation en pipeline CPU=12 IO=… CPU=12 IO=.. CPU=12 IO=.. CPU=18 IO=.. CPU=18 IO=1 CPU=5 IO=1 CPU=23 IO=2 PL4 PL3 PL2 PL1 Modèle de coût énergétique les auteurs ont proposé un modèle de coûts pour prédire consommation d'énergie d’une requête isolée en cours d'exécution. 𝑃𝑜𝑤𝑒𝑟(𝑄) = σ 𝑗=1 𝑝 𝑃𝑜𝑤𝑒𝑟 𝑃𝐿𝑗 ∗ 𝑇𝑖𝑚𝑒(𝑃𝐿𝑗) 𝑇𝑖𝑚𝑒(𝑄) Où 𝑇𝑖𝑚𝑒(𝑃𝐿𝑗) et 𝑇𝑖𝑚𝑒(𝑄) représentent respectivement le temps d’exécution du pipeline j et de la requête Q. 𝑃𝑜𝑤𝑒𝑟 𝑃𝐿𝑗 = 𝛽𝑐𝑝𝑢 ∗ ෍ 𝑘=1 𝑛 𝑗 𝐶𝑃𝑈_𝐶𝑂𝑆𝑇 𝐾 + 𝛽𝑖𝑜 ∗ ෍ 𝑘=1 𝑛 𝑗 𝐼𝑂_𝐶𝑂𝑆𝑇𝑘 État de l’art
  13. 13.  Think big, start small: a good initiative to design green query optimizers [ Asimon Pierre Dembele, Ladjel BELLATRECHE, Carlos Ordonez, Amine ROUKH ] en 2019 13  État de l’art  Approches  Experimentation  Conclusion Segmentation en pipeline CPU=12 IO=… Dop=… CPU=12 IO=.. CPU=18 IO=.. CPU=18 IO=1 CPU=5 IO=1 CPU=23 IO=2 PL4 PL3 PL2 PL1 Modèle de coût énergétique les auteurs ont proposé un modèle de coûts pour prédire consommation d'énergie d’une requête isolée en mode parallèle. Le plan est segmenté un ensemble de pipelines, les pipelines non parallélisables 𝑃𝑙𝑖 et les pipelines parallélisables 𝑃𝑃𝑙𝑖. Pour un pipeline séquentiel Pour un pipeline parallèle 𝑷𝒖𝒊𝒔𝒔𝒔𝒂𝒏𝒄𝒆 𝑷𝑳𝒋, 𝟏 = 𝜷 𝑪𝑷𝑼 ∗ ෍ 𝑲=𝟏 𝒏 𝑪𝑻 𝑪𝑷𝑼 𝒌 + 𝜸 𝑰𝑶 ∗ ෍ 𝑲=𝟏 𝒏 𝑪𝑻 𝑬𝑺 𝒌 𝑷𝒖𝒊𝒔𝒔𝒔𝒂𝒏𝒄𝒆 𝑷𝑷𝑳𝒋, 𝑷 = 𝒇 𝒄𝒑 + 𝟏 ∗ 𝜷 𝑪𝑷𝑼 ∗ ෍ 𝑲=𝟏 𝒏 𝑪𝑻 𝑪𝑷𝑼 𝒌 + 𝜸 𝑰𝑶 ∗ ෍ 𝑲=𝟏 𝒏 𝑪𝑻 𝑬𝑺 𝒌  𝐶𝑇𝐸𝑆 𝑘 : Nombre de I/O requis pour traiter l’opération k.  𝐶𝑇𝐶𝑃𝑈 𝑘 : Nombre de cycle CPU requis pour passer l’opération.  𝛽 𝐶𝑃𝑈, 𝛾𝐼𝑂: Les unités énergétiques 𝑓𝑐𝑝: Facteur énergétique de la puissance consommée lors du traitement en mode parallèle par rapport au traitement séquentiel État de l’art
  14. 14. 14  État de l’art  Approches  Experimentation  Conclusion  Proposer un modèle de coût caractérisant l’énergie lors de l’exécution de requêtes.  Ses Propriétés: précis, portable, robuste, adaptable Traitement de la requête Sélection des structures  Trois utilisations possibles Conception des benchmarks Système (Modèle) Paramètre en entrées Puissance Estimée Notre Vision
  15. 15. 15  État de l’art  Approches  Experimentation  Conclusion Construction du modèle de coût Méthodologie de modélisation
  16. 16. 16  État de l’art  Approches  Experimentation  Conclusion  Pour une requête Qi donnée, la puissance estimée est : 𝑃𝑢𝑖𝑠𝑠𝑎𝑛𝑐𝑒 𝑄𝑖 = σ 𝑗=1 𝑝 ൯𝑃𝑢𝑖𝑠𝑠𝑎𝑛𝑐𝑒 𝑃𝐿𝑗 ∗ 𝑇𝑒𝑚𝑝𝑠(𝑃𝐿𝑗 )𝑇𝑒𝑚𝑝𝑠(𝑄𝑖 𝑃𝑢𝑖𝑠𝑠𝑠𝑎𝑛𝑐𝑒 𝑃𝐿𝑗 = 𝑊𝑐𝑝𝑢 ∗ ෍ 𝑢=1 𝑛 𝐶𝑐𝑝𝑢 𝑢 + 𝑊𝑚𝑒𝑚 ∗ ෍ 𝑢=1 𝑛 𝐶 𝑚𝑒𝑚 𝑢 + 𝑊𝑑𝑖𝑜 ∗ ෍ 𝑢=1 𝑛 𝐶 𝑑𝑖𝑜 𝑢 Notre modèle de coût Pour le système PostgreSQL, la puissance dissipée lors du traitement de la requête est la combinaison des principales ressources consommant l'énergie (CPU, mémoire principale et disque). Elle est formulé par: 𝑊𝑐𝑝𝑢, 𝑊𝑚𝑒𝑚 et 𝑊𝑑𝑖𝑜 représentent les unités énergétiques d’une instructions, d’une opérations de lecture/écriture sur la mémoire et d’une opérations de lecture/écriture sur disque respectivement. Le 𝐶𝑐𝑝𝑢 𝑢 est le nombre d'instructions exécutées par le CPU. 𝐶 𝑚𝑒𝑚 𝑢 est le nombre de lecture/écriture sur la mémoire pour une opération donnée. 𝐶 𝑑𝑖𝑜 𝑢 est le nombre de lectures ou opérations d'écriture accédées sur le disque. 𝑛 est le nombre d'opérateurs dans le pipeline. 𝑢 est l'indice de sommation.
  17. 17. 17  État de l’art  Approches  Experimentation  Conclusion 𝑃𝑢𝑖𝑠𝑠𝑠𝑎𝑛𝑐𝑒 𝑂𝑃𝑗 𝑖 = 𝑊𝑐𝑝𝑢 ∗ 𝐶𝑐𝑝𝑢 𝑗 + 𝑊𝑚𝑒𝑚 ∗ 𝐶 𝑚𝑒𝑚 𝑗 + 𝑊𝑑𝑖𝑜 ∗ 𝐶 𝑑𝑖𝑜 𝑗 Notre modèle de coût Pour le système MonetDB, nous adoptons une approche de modélisation basée sur les opérations. La puissance dissipée est formulée par: 𝑂𝑃𝑗 𝑖 dénote l’operation j dans le plan de la requête  En appliquant la régression polynomiale sur nos modèle (Langage R version 3.5.2). En exemple pour PostgreSQL, nous avons
  18. 18. 18  État de l’art  Approches  Experimentation  Conclusion Évaluation du Modèle Système PostgreSQL
  19. 19. 19  État de l’art  Approches  Experimentation  Conclusion Évaluation du Modèle Système MonetDB
  20. 20. 20  Environnement  Intel Core-i5 3340M à 2,70 GHz (2coeurs-4 threads), 8GB DDR.  R language for regression  OS Ubuntu  Données  TPC-H banc d’essai  Facteur d’échelle = 1,5,10, 30  Wattmètre :  Watts UP? Pro ES power meter  1 hertz sampling frequency  État de l’art  Approches  Experimentation  Conclusion Paramètre du Système
  21. 21. 21  État de l’art  Approches  Experimentation  Conclusion Configuration du Système
  22. 22. 22  État de l’art  Approches  Experimentation  Conclusion Analyse des performances Temps d’exécution des requêtes sur un jeu données de 5 Go. Temps d’exécution des requêtes sur un jeu données de 30 Go.
  23. 23. 23  État de l’art  Approches  Experimentation  Conclusion Analyse de la consommation d’énergie Énergie consommée lors de l’exécution des requêtes sur un jeu données de 30 Go. Énergie consommée lors de l’exécution des requêtes sur un jeu données de 5 Go.
  24. 24. 24  État de l’art  Approches  Experimentation  Conclusion Analyse des entrées / sorties disques Analyse des défauts de caches de la mémoire centrale lors de l’exécution des requêtes sur un jeu données de 30 Go.
  25. 25. 25  État de l’art  Approches  Experimentation  Conclusion Erreur d’Estimation (ERR)  Pour quantifier la précision de nos modèles, nous utilisons la métrique définie par: EER = ൗ𝐸𝑅−𝐸𝐸 𝐸𝑅 ER désigne les valeurs réelles de l’énergie mesurée par le wattmètre, EE désigne l’énergie prédite par nos modèles.
  26. 26. 26  État de l’art  Approches  Experimentation  Conclusion Erreur d’Estimation (ERR) Taux d’erreur de prédiction sur le SGBD Postgresql SF5.
  27. 27. 27  État de l’art  Approches  Experimentation  Conclusion Erreur d’Estimation (ERR) Taux d’erreur de prédiction sur le SGBD MonetDB SF5.
  28. 28. Conclusion Challenge  Précision du modèle de coût  Intégration de nos modèles dans les systèmes très particulièrement pour MonetDB Experimentation  Le temps d’exécution et l’énergie consommée par le système orienté colonne (Monetdb) est plus meilleur que ceux obtenues pour le système orienté ligne (PostgreSQL). Les écarts d’estimation obtenus par nos modèles ne sont pas si considérables. 28  État de l’art  Approches  Experimentation  Conclusion
  29. 29. Perspectives  Prédiction de la consommation sur un système in-memory (Hyrise) en mode parallèle.  Exploitation du modèle proposé dans le système MonetDB  Sélection des indexes multi-niveaux sous la contrainte énergétique lors de la conception physique. 29 Conclusion  État de l’art  Approches  Experimentation  Conclusion
  30. 30. 30

×