La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

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.

Présentations similaires


Présentation au sujet: "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."— Transcription de la présentation:

1 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 Poitiers Kamel Boukhalfa LGP U. Laghouat - ALGERIE

2 Contexte Optimiser les requêtes de jointure en étoile (star join query): Plusieurs opérations de jointure suivies par des opérations de sélection Techniques d’optimisation : Vues matérialisées Index Fragmentation (Oracle) Exemple de création d’une table fragmentée horizontalement (tuples): CREATE TABLE sales (acct_no NUMBER(5), acct_name CHAR(30), amount_of_sale NUMBER(6), week_no INTEGER) PARTITION BY RANGE (week_no) (PARTITION sales1 VALUES LESS THAN (4) TABLESPACE ts0, PARTITION sales2 VALUES LESS THAN (8) TABLESPACE ts1, PARTITION sales13 VALUES LESS THAN (52) TABLESPACE ts12) Traitement parallèle INTRODUCTION

3 Une classification de techniques d’optimisation
Structures non redondantes Traitement parallèle Fragmentation Index Vues matérialisées Mono-index Index binaire Arbre B Multi-index Index de jointure Structures redondantes - Espace de stockage - Coût de maintenance Horizontale Verticale

4 Plan Problème de sélection de schéma de fragmentation
Un algorithme génétique de sélection Expérimentations Conclusion et perspectives PLAN

5 Comment fragmenter un entrepôt ?
Fragmentation horizontale est bien adaptée aux entrepôts de données relationnels Méthode : Décomposer une (des) table(s) de dimensions en utilisant les prédicats de sélection définis dans les requêtes fréquentes Fragmentation virtuelle ou physique Décomposer la table des faits en fonction des schémas de fragmentation des tables de dimensions Fragmentation horizontale dérivée

6 Exemple N =  Mi Age  18 18 < Age  30 30 < Age  40
VENTE1 CLIENT1 PRODUIT Age  18 VENTE2 CLIENT2 18 < Age  30 TEMPS VENTE3 CLIENT3 30 < Age  40 VENTE4 CLIENT4 Age > 40 Optimisation des requêtes de jointure Parallélisme Utilisation des structures redondantes sur un schéma fragmenté N =  Mi - Mi : le nombre de fragments de la table de dimension Di - k : nombre de tables de dimensions fragmentées k I =1 CLIENT : 50 fragments sur l’attribut “Etat” TEMPS : 48 fragments sur l’attribut “Mois” PRODUIT : 100 fragments sur l’attribut "type de produit". N=: 50 × 48 × 100 = fragments de la table des faits Impossibilité de gérer et maintenir ce grand nombre de fragments

7 Problème de sélection de schéma de fragmentation
Entrées : Schéma en étoile S (F, D1, D2, …, Dk) Ensemble de requêtes fréquentes Q Contrainte de maintenance : nombre maximal de fragments de la table des faits Sortie : Ensemble de sous-schémas en étoile minimisant le coût d’exécution de requêtes et satisfaisant la contrainte de maintenance

8 Extraction de prédicats
Algorithme génétique Requêtes fréquentes Extraction de prédicats de fragmentation Génération des sous domaines Codage des individus Sélection Croisement Mutation - Fréquence d’accès - Facteurs de sélectivité Fonction d’évaluation Modèle de coût

9 Codage Trois attributs de fragmentation :
Client.Sexe, Produit.Gamme, Temps.Saison Domaines des attributs de fragmentation : Sexe Gamme Saison F M T A P E H Codage d’un individu : Client : 2 fragments Produit : 2 fragments Saison : 2 fragments 1 2 Clauses définissant les fragments de la table des faits : F1: Sexe =‘F’ & Gamme = ‘T’ & Saison = ‘P’ or ‘H’ F2: Sexe =‘F’ & Gamme = ‘T’ & Saison = ‘E’ or ‘A’ F3: Sexe = ‘F’ & Gamme = ‘A’ & Saison = ‘P’ or ‘H’ F4: Sexe = ‘F’ & Gamme = ‘A’ & Saison = ‘E’ or ‘A’ F5: Sexe = ‘M’ & Gamme = ‘T’ & Saison = ‘P’ or ‘H’ F6: Sexe = ‘M’ & Gamme = ‘T’ & Saison = ‘E’ or ‘A’ F7: Sexe = ‘M’ & Gamme = ‘A’ & Saison = ‘P’ or ‘H’ F8: Sexe = ‘M’ & Gamme = ‘A’ & Saison = ‘E’ or ‘A’

10 Sélection & croisement
Sexe Gamme Saison Evaluation Sélection Croisement 1 1 2 1 1 1 2 3 4 0.6 1 5 2 2 1 1 1 2 1 2 2 3 0.52 1 1 5 3 1 2 1 1 1 1 2 2 0.33 4 1 2 1 2 1 2 3 3 0.45 5 0.65 1 1 2 1 1 1 2 1 1 1 1 Croisement de l'individu 1 avec le 5 1 2 3 4 1 1 1 2 1 1 3 4 1 2 1 1 1 2 1 1

11 Schéma final de fragmentation
Evaluation 1 1 1 2 1 1 3 4 0.72 1 2 1 1 1 2 1 1 0.45 Gamme = ‘T’ & Saison = ‘P’ or ‘E’ Gamme = ‘T’ & Saison = ‘A’ Gamme = ‘T’ & Saison = ‘H’ Gamme = ‘A’ & Saison = ‘P’ or ‘E’ Gamme= ‘A’ & Saison = ‘A’ Gamme = ‘A’ & Saison = ‘H’ Attribut Sexe n’est pas pris en considération dans le processus de fragmentation

12 Expérimentation (I) 900 9000 24786000 24 9 Custlevel Prodlevel Actvars
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 9 9000 24 900 EXPERIMENTATION Taux de croisement : 70% Taux de mutation : 30% -----> 6% Nombre total de générations : 1500 Nombre d’individus par génération : 40 Modèle de coût calculant le nombre d’E/S Tables de dimensions stockées en mémoire

13 Expérimentation (II) Effet du nombre d’attributs de fragmentation sur la performance EXPERIMENTATION Effet du type de la répartition sur la performance

14 Expérimentation (III)
EXPERIMENTATION Effet du seuil sur la performance

15 Expérimentation (V) Seuil: 50 - Résultat : 48 fragments
Code_level 1 Fragment Prodlevel Group_level 1 Fragment Prodlevel Family_level 2 3 2 Fragments Prodlevel Line_level 1 Fragment Prodlevel Division_level 1 Year_level 1 Fragment Timelevel Month_level 7 10 6 9 6 Fragments Timelevel Retailer_level 1 Fragment Custlevel All_level 2 Fragments Chanlevel EXPERIMENTATION Seuil: Résultat : 2016 fragments Code_level 1 2 3 Fragments Prodlevel Group_level 2 Fragments Prodlevel Family_level 3 4 Fragments Prodlevel Line_level 1 Fragment Prodlevel Division_level Year_level 1 Fragment Timelevel Month_level 5 10 7 4 7 Fragments Timelevel Retailer_level 2 Fragments Custlevel All_level 3 Fragments Chanlevel

16 Conclusion & perspective
Problème de sélection d’un schéma de fragmentation Algorithme génétique de sélection Évaluation de notre approche Paramétrage de l’algorithme génétique (auto-administration d’un entrepôt) Application du même algorithme pour la sélection des index de jointure binaire CONCLUSION


Télécharger ppt "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."

Présentations similaires


Annonces Google