DynaClose: Une approche de data mining pour la sélection des index de jointure binaires dans les entrepôts de données Université de Bab Ezzouar Alger -

Slides:



Advertisements
Présentations similaires
REFERENTIEL DE LA SERIE STG
Advertisements

26/ 04/ 2007 Auto-Jointure : SELECT * FROM Nom_relation R1 INNER JOIN Nom_relation R2 ON Condition_de_jointure; Problèmes Si des attributs de même nom.
L’optimiseur ORACLE L’optimiseur ORACLE suit une approche classique: Génération de plusieurs plans d’exécution. Estimation du coût de chaque plan généré.
Bases de Données Avancées: Bases de Données Relationnelles
Optimisation des requêtes
Benoît Piranda Équipe SISAR Université de Marne La Vallée Bases de données Algèbre relationnelle, opérations Requêtes SQL.
Évaluation des requêtes relationnelles
Règles d’association.
Découverte automatique de mappings fondée sur les requêtes dans un environnement P2P Présenté Par: Lyes LIMAM Encadré Par: Mohand-Said Hacid.
Fonctionnalités des SGBD
Optimisation algébrique de requêtes relationnelles
Formation au référentiel 1 STG (Sciences et technologie de la gestion)
Les requêtes Manière de dialoguer avec une base de donnée pour :
Optimisation de Requêtes
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Sélection automatique d’index et de vues matérialisées
Estella Annoni, Franck Ravat, Olivier Teste, Gilles Zurfluh
Initiation au système d’information et aux bases de données
Les BDAs (Les bases de données réparties)
Initiation au système d’information et aux bases de données
To Tune or not to Tune? To Tune or not to Tune? A Lightweight Physical Design Alerter Costa Jean-Denis Le Yaouanc Aurélie Mécanismes de SGBD 2007.
L’utilisation des bases de données
Chap 4 Les bases de données et le modèle relationnel
1 Bases de Données Distribuées Chapitre 22, Sections 22.6–22.14.
Bases de données et SGBD relationnels
SELECT {* | Expression [Alias] [,...] } FROM Table [WHERE Condition] [ORDER BY { Expression | Alias } [ ASC | DESC ] [NULLS FIRST | NULLS LAST ] [,...]
L’utilisation des bases de données
Algèbre relationnelle et SQL
MODELE RELATIONNEL concept mathématique de relation
Projet Acquisition de connaissances Réalisé par Anne-Laure B ERRÉE, Andra Maria B LAJ, Stéphanie C HARLET, Diana D RAGUSIN, Daphné D USSAUD, Emeline E.
Systèmes d'information décisionnels
Mise en œuvre du langage MDX
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
1 Evaluation des Operations Relationnelles Chapitre 14, Section 14.4.
Universté de la Manouba
EDA’05 La fragmentation dans les entrepôts de données : une approche basée sur les algorithmes génétiques Ladjel Bellatreche LISI/ENSMA - Université de.
Ontology Evolution and Source Autonomy in Ontology-based Data Warehouses Nguyen Xuan Dung Ladjel Bellatreche
Les concepts et les méthodes des bases de données
Management of Information Technology - e-business
Initiation aux bases de données et à la programmation événementielle
2 Analyse et Optimisation des Performances du moteur SQL Serveur 10 février 2011 Frédéric Pichaut EMEA SR ESCALATION ENGINEER Microsoft France.
OPTIMISATION DE BASE DE DONNEES ORACLE
Évolution de schémas par classification automatique dans les entrepôts de données 3ème journée francophone sur les Entrepôts de Données et l'Analyse en.
Vers l'échantillonnage d'un entrepôt de données
Algèbre Relationnelle : Implémentation
Bases de données   J-L Hainaut III. Méthodologie des bases de données [long] 1. Méthodologie des BD5. Conception physique 2. Le modèle Entité-association6.
Bases de données fédéréEs hétérogènes
#JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS.
Optimisation de requêtes
1 Alain Casali Christian Ernst Extraction de Règles de Corrélation Décisionnelles 29 Janvier 2009.
Crawlers Parallèles Présentation faite par: Mélanie AMPRIMO
1 G. Gardarin Optimisation de Requêtes  1. Introduction  2. Arbres relationnels  3. Restructuration algébrique  4. Modèle de coût  5. Choix du meilleur.
1 PHP 5 Notions fondamentales (cours #5) Formation continue – Cégep de Sainte-Foy.
Projet Acquisition de connaissances Réalisé par Anne-Laure B ERRÉE, Andra Maria B LAJ, Stéphanie C HARLET, Diana D RAGUSIN, Daphné D USSAUD, Emeline E.
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
Classification de données par l’algorithme FPSO-GA
1 J. PHILIPP d'après G. Gardarin SGBDR : la gestion des vues l 1. Contexte l 2. Vues externes l 3. Interrogation des vues l 4. Mises à jour des vues l.
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Intégration des Tableaux Multidimensionnels en Pig pour
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
Des fonctions d’oubli intelligentes dans les entrepôts de données
Vers l’exploitation de grandes masses de données Encadré par : Mme L.Lamarini Présenté par: Rhaz Yassine Smiri Safae Un article de: Raphaeil Féraud,Maroc.
Systèmes d'information décisionnels
Cours n°2 Implémentation et exploitation
Cours 11 Entrepôts de données
Modélisation et utilisation Aurélien Marion1 Aurélien Marion
De Arnault Chazareix :
Amin Mesmoudi. Les Besoins LSST en stockage et accès aux données (1/2) Stockage: 2 TableTaille#enregistrements#colonnes (arité) Object109 TB38 B470 Moving.
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
Transcription de la présentation:

DynaClose: Une approche de data mining pour la sélection des index de jointure binaires dans les entrepôts de données Université de Bab Ezzouar Alger - ALGERIE Hamid NECIR Ladjel BELLATRECHE LISI/ENSMA - Université de Poitiers – FRANCE Rokia MISSAOUI Université du Québec en Outaouais (UQO) - CANADA

Contexte : Entrepôt de données relationnel Poitiers 7-8 juin 2007 EDA’07 Requêtes de jointure en étoile Customer_level Product_level Channel_level Time_level UnitsSold DollarSales DollarCost Actvars Store_level Retailer_level Custlevel Code_level Class_level Group_level Family_level Line_level Division_level Prodlevel Base_level All_level Chanlevel Tid Year_level Quarter_level Month_level Timelevel 24786000 : 74 9 : 24 9000 : 72 24 : 36 900 : 24 Plusieurs opérations de jointure Suivies par des opérations de sélection Exemple : SELECT A.PL, A.DL, sum(DS), sum(US) FROM Actvars A, ProdL P, TimeL T, CustL C WHERE A.PL = P.PL AND A.TL = T.TL AND A.CL = C.CL (Jointures) AND T.YL = ‘2006’ AND P.FL = ‘Beauty’ AND C.SL = ‘F’ (Sélections) GROUP BY A.PL ORDER BY P.DL Schéma en étoile Nécessité de structures d’optimisation

Structures d’optimisation existantes Plan Poitiers 7-8 juin 2007 EDA’07 Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives

Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Poitiers 7-8 juin 2007 EDA’07 Structures redondantes Vues matérialisées Index Mono attribut (B-Tree, Hash, etc.) Index de jointure binaires (IJB) Structures non redondantes Fragmentation de données Traitement parallèle Implémentations de la jointure (Hash join, Sort join, etc.) IJB = index binaire défini sur une table des faits qui référence des attributs de sélection d’une table de dimension. Population de BI Exemple : CREATE BITMAP INDEX BI ON Actvars(FamilyLevel) FROM Actvars A, ProdLevel, P WHERE Actvars.refProd = P.Code Actvars ROWID Family: Beauty Family: Food RiD 1 1 RiD 2 RiD 3 RiD 4 RiD 5 RiD 6 SELECT count(*) FROM Actvars A, ProdLevel P WHERE A.refProd = P.Code AND FamilyLevel = ‘Food’ Problème de sélection des IJBs

Formalisation du problème de sélection des IJBs Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Formalisation du problème de sélection des IJBs Poitiers 7-8 juin 2007 EDA’07 Exigence de ressources: Espace disque Coût de maintenance (rafraîchissement des données) Coût de calcul (pour le processus de sélection) Impossibilité de sélectionner tous IJBs Problème de Sélection des IJBs Entrées: Un entrepôt de données {F, D1, …, Dn} Un ensemble de requêtes fréquentes Une capacité de Stockage S Problème Sélectionner un ensemble de vues afin de minimiser le coût d’exécution de requêtes et satisfaire la contrainte S.

Étapes de Sélection des IJBs Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Étapes de Sélection des IJBs Poitiers 7-8 juin 2007 EDA’07 Attributs de dimension candidats Seuil Phase d’élimination Pruning phase Modèle de coût Qualité des IBJs dépend fortement de la phase de pruning Attributs de dimension sélectionnés Greedy algorithm [Microsoft] Integer Linear Programming [Microsft] Stockage Algorithme de Sélection Selection phase Index Finaux

État de l’art: Phase d’élimination(1) Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives État de l’art: Phase d’élimination(1) Poitiers 7-8 juin 2007 EDA’07 Deux approches de Pruning: Enumeration-driven approaches [Chaudhuri04, Valentin00] Utilisation de Query Optimizer Cost Model Connaissance préalable du nombre de candidates générés (seuil) Attributs de dimension candidats Seuil Phase d’élimination Query optimizer Attributs de dimension sélectionnés Stockage Algorithme de Sélection Index Finaux

État de l’art: Phase d’élimination(2) Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives État de l’art: Phase d’élimination(2) Matrice d’usage d’attributs Poitiers 7-8 juin 2007 EDA’07 Minsup=3/5 IJB sur A6 (support=3/5) A6  ChannelLevel (9 instances) IJB sur A3 est élagué (support=2/5) A3  ProdLevel (90000 instances) Coût de jointure dépend fortement des tailles des tables Data mining : Close [Aouiche’05] Apriori-Like Algorithm (parcours par niveaux) Génération de Closed Frequent Itemsets (CFI) Élaguer si support(CFI)  minsup Aucune obligation sur le nombre de candidats finaux Le critère de génération de CFI: fréquence d’apparition des attributs de dimension dans les requêtes A1 A2 A3 A4 A5 A6 Q1 1 Q2 Q3 Q4 Q5

Similitude entre IJB Fragmentation Verticale Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Fragmentation verticale : Partition une table en fonction des colonnes Client(N°Client, Nom, Sexe, Ville, Age) Client1(N°Client, Nom, Age) et Client2(N°Client, Sexe, Ville) Index de Jointure Binaires : IJB(Nom, Age) - IJB(Sexe, Ville) IJB(Nom, Age, Sexe) … Algorithmes de fragmentation verticale Affinity-based approach : [Navathe’91] Usage des attributs/requêtes Cost-based Approach : [Bellatreche00, Fung04, ….] Évaluation de chaque solution (Modèle de coût) Data mining approach : [Le’06] Clustering DynaClose: Nouvelle approche d’élimination Nouveaux critères d’élagage (Taille des tables, fréquences)

DynaClose Idée principale Comment? Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives DynaClose Poitiers 7-8 juin 2007 EDA’07 Idée principale Pénaliser les CFIs définis sur les petites tables Privilégier les CFIs définis sur les grandes tables Comment? Fonction de pénalité n : Nombre d’attributs non clés d’un CFI. : Nombre n-uplet de la table de dimension Di. : Nombre n-uplet de la table des faits. Sup : Support

Exemple 1-Gén SUPP Alpha fitness 1-itemsets fermés A1 0,4 0,6448 Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Exemple Poitiers 7-8 juin 2007 EDA’07 1-Gén SUPP Alpha fitness 1-itemsets fermés A1 0,4 0,6448 0,12896 A1,A2,A3 A2 A3 A4 0,6 0,0003 0,0001 A4,A5,A6 A5 A6 IJB sur Customers.ProdLevel sélectionné fitness=0,12896 (support=2/5). IJB sur channels.channel_desc est élagué fitness=0,0001 (support=3/5).

Algorithme Greedy de Sélection Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Algorithme Greedy de Sélection Poitiers 7-8 juin 2007 EDA’07 Attributs Candidats Imin: IJB défini sur un attribut de sélection de faible cardinalité DynaClose Attributs Sélectionnés Sélection Imin Stockage Modèle de coût Réduction de coût? Contrainte Stockage Oui Configuration finale NO

Nettoyage des CFIs sélectionnés Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Nettoyage des CFIs sélectionnés Poitiers 7-8 juin 2007 EDA’07 Règles: CFIs définis seulement de clés primaires de tables de dimension ou des clés étrangères de la table des faits CFIs ne respectant pas les caractéristiques des index de jointure en étoile. Exemple: (custcust_gender ~ sales.cust_id ~ cust.cust_id ~ sales.prod_id ~ prod.prod_id) CREATE BITMAP INDEX sales_c_gender_p_cat_bjix ON sales(customers.cust_gender) FROM sales, customers, products WHERE sales.cust_id = customers.cust_id AND sales.prod_id = products.prod_id CFIs contenant que des attributs non clés.

Évaluation de performances (I) Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Évaluation de performances (I) Poitiers 7-8 juin 2007 EDA’07 Schéma modifié de benchmark APB-1 40 requêtes OLAP [Thèse Aouiche] Java - PC PC Pentium IV de mémoire de 256 Mo Modèle de coût d’exécution de requêtes (entrées/sorties) Modèle de coût de stockage Trois scénarii d’évaluation Sans index Index avec Close Index avec DynaClose

Évaluation de performances (II) Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation Conclusion et perspectives Évaluation de performances (II) Poitiers 7-8 juin 2007 EDA’07 APPORT DE L'INDEXATION 2000000 4000000 6000000 8000000 10000000 12000000 0,05 0,075 0,175 0,225 0,25 0,275 0,375 0,45 0,475 0,5 MINSUP COÛT DynaClose Indexation classique sans indexation Figure 1 : Comparaison de DynaClose avec les approches existantes APPORT DE L'INDEXATION 50 100 150 0,05 0,075 0,175 0,225 0,275 0,475 0,5 MINSUP COÛT DynaClose Indexation classique sans indexation Figure 2 : Pourcentage de gain avec contrainte d’espace

Conclusion & Perspectives Structures d’optimisation existantes Sélection des index de jointure binaires Notre approche Évaluation de performances Conclusion et perspectives Poitiers 7-8 juin 2007 EDA’07 Approche de sélection de IJB dirigée par Data mining Introduction de fonction de pénalité Algorithme glouton de sélection Résultats préliminaires assez encourageants Autres évaluations de performances (grande échelle) Enrichissement de la fonction de pénalité Utilisation d’autres algorithmes de data mining (Charm) Combinaison avec d’autres structures de sélection non redondantes (partitionnement) [DEXA07]

MERCI