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

DATA WAREHOUSES Selection of Views to Materialize in a Data Warehouse Himanshu Gupta Department of Computer Science Stanford University Bernigaud Sébastien.

Présentations similaires


Présentation au sujet: "DATA WAREHOUSES Selection of Views to Materialize in a Data Warehouse Himanshu Gupta Department of Computer Science Stanford University Bernigaud Sébastien."— Transcription de la présentation:

1 DATA WAREHOUSES Selection of Views to Materialize in a Data Warehouse Himanshu Gupta Department of Computer Science Stanford University Bernigaud Sébastien Chervy Myriam

2 PLAN Présentation générale des datawarehouses Formulation du problème de sélection des vues « AND View Graph » « OR View Graph » Sélection des vues dans des « AND-OR Views Graphs » Conclusion

3 Présentation générale des datawarehouses Entrepôt de données Ensemble de vues de sources différentes Objectif : Implémenter des supports de décision, des requêtes OLAP Contraintes : minimiser les temps de réponse et les coûts de stockage des données Problème : choix de la sélection de vues

4 Formulation du problème de sélection des vues Quelques définitions sur les « AND-OR View Graphs » Problème de sélection des vues Benefit d un ensemble de vues séléctionnées

5 Définitions Graphe direct acyclique Racine : V Feuilles : relations de base v 1 …v K fils de u si tous les v i (1<i<k) sont nécessaires pour calculer u Dépendance entre les nœuds : AND arc Chaque AND arc : un opérateur et un coût Opérateur : une fonction k-ary impliquant des opérations comme jointure, union, agrégation… Coût : somme des coûts associés à chaque fils AND-DAG expression pour une requête ou une vue V

6 Définitions (suite) Exemple : AND k ih g d c b a

7 Définitions (suite) AND OR-DAG expression pour une requête ou une vue V Graphe direct acyclique Racine : V Feuilles : relations de base Chaque nœud possède 1 ou plusieurs AND arcs

8 Définitions (suite) Exemple : AND a bc def gm l k ji h

9 AND-OR View Graph pour les vues v 1 …v k Rq : u calculable à partir de v,u 1,…,u k et v calculable à partir de v 1,…,v l u calculable à partir de u 1,…,u k,v 1,…,v l Définitions (suite) Graphe G Pour chaque v i G i G i : sous graphe de G G i : AO-DAG expression pour v i Pour chaque nœud u de G : f u, S u, g u f u : fréquence des requêtes sur u S u : espace occupé par u g u : fréquence des mises à jour sur u

10 Définitions (suite) Exemple : AND a bc def gm l k ji h AND-OR View Graph pour n importe quels sous ensembles des vues a,b,c,d,e,f

11 Problème Donnée : un AND-OR View Graph G et une quantité despace libre S Pb : sélectionner un ensemble de vues M M : sous ensemble des nœuds de G Contraintes : minimiser les temps de réponse et les coûts de maintenance, espace occupée par M<S

12 Problème (suite) Q(u,M) : coût de réponse d une requête u utilisant le sous ensemble M U(u,M) : coût de maintenance pour la vue u dans M

13 Problème (suite) Donnée : un AND-OR View Graph G et une quantité despace libre S But : sélectionner M = {v1,…vm} Contrainte : minimiser (G,M), (v M) S v S (G,M) = (i=1 à k) f Qi Q(Q i,M) + (i=1 à m) g vi U(v i,M) Conclusion :

14 Benefit Donnée : C un sous ensemble arbitraire de G Benefit de C = B(C,M) B(C,M) = (G,M) - (G,M C) Benefit de C par unité despace = B(C,M)/S(C) Benefit absolu de C = B(C, )

15 « AND View Graph » Motivations Sélection de vues dans un « AND View Graph » Incorporation des coûts de mise à jour « AND View Graph » avec index

16 Motivations Problème de sélection = simplifié Approximation du problème général Optimiseur de requêtes multiples plan global Plan global AND View Graph

17 Sélection de vues Contexte : AND View Graph sans mises à jour Donnée : AND View Graph G et une quantité S Trouver M qui minimise (G,M) avec S(M) S

18 Sélection de vues (suite) Greedy Algorithm BEGIN M= ; while (S(M)<S) Soit C tq B(C,M)/S(C)=max(B(X,M)/S(X)) M=M C; end while; return M; END.

19 Sélection de vues (suite) Greedy-Interchange Algorithm BEGIN M=solution du Greedy Algorithm; repeat Soit (C 1,C 2 ) une pair de vues tq C 1 M et le benefit absolu de (M-C 1 ) C 2 est plus grand que celui de M. M= (M-C 1 ) C 2 ; until (il nexiste plus de pair (C 1,C 2 )); return M; END.

20 Sélection de vues (suite) Compétitivité : non prouvée Solution : au moins aussi bonne que Greedy Algorithm Temps dexécution : illimité En pratique : plus performant que Greedy Algorithm

21 Mises à jour Si g v < f v Greedy Algorithm est aussi performant que sans mises à jour

22 Index Pas dindex matérialisé sans sa vue Entre u et v : autant darêtes que dindex sur v Coût associé à un arc label (i,t i ) associé à chaque arête entre u et v t i (i>0) : coût de calcul de u avec utilisation de li ème index de v f : coût de calcul de u à laide de tous ses fils utilisant leurs index respectifs f : k-ary fonction, f(t 1,…t k )

23 Index (suite) Pour chaque v i : on construit IG i IG i = v i incrémenté des index (meilleur localement) tant que S(IG i )<S C = IG i de benefit maximal par unité despace Pour chaque index tel que la vue M : le comparer avec C M = M C On recommence Inner-Level Greedy Algorithm

24 « OR View Graph » Motivations Sélection de vues dans un « OR View Graph » « OR View Graph » avec index

25 Motivations Datacubes : Databases avec 1 valeur critique organisée en plusieurs dimensions Ex : ventes de voitures organisées par modèles,couleurs,…

26 Motivations (suite) Cas des Datacubes : AND-OR OR 1 vue est calculée de plusieurs façons Chaque façon utilise une seule autre vue Bases OLAP : peu de mises à jour On supposera quon a pas de mises à jour pour cette partie

27 Sélection de vues Algorithme pour les problèmes de sélection de vue dans un OR View Graph sans mise à jour Donnée : OR View Graph et S Problème : trouver M qui minimise (G,M) avec S(M)<S sans mise à jour

28 Sélection de vues (suite) Greedy Algorithm : même performances Greedy-Interchange Algorithm : temps dexécution un peu moins qu1,5 fois celui du Greedy Algorithm Solution retournée : meilleure

29 Index Donnée : OR View Graph avec index et S Problème : trouver M qui minimise (G,M) avec S(M)<S sans mise à jour OR View Graph avec index sans mise à jour : Inner-Level Greedy Algorithm M qui utilise au plus 2S

30 Sélection des vues dans des « AND-OR Views Graphs » Quelques définitions L AO-Greedy Algorithm Le Multi-Level Greedy Algorithm

31 Définitions Graphe biparti G=(Q,E) Q : requêtes supportées par le datawarehouse : sous ensemble de V V : ensemble des vues E : ensemble des arêtes (q, ) tq permet de calculer q AND-OR View Graph Query View Graph équivalent Query View Graph

32 LAO-Greedy Algorithm F = D D : ensemble des arêtes (, ) tq H : sous-graphe de F V H : des ensembles de vues correspondant aux sommets de H Ajout de V H avec profit maximal à M Arrêt : quand S(M)>S

33 Multi-Level Greedy Algorithm G=query view graph (Q,E) F = son graphe dintersection où v à chaque nœud de F Pas de v AO-Greedy algorithme sur G =enlever v dans chaque élément de F =graphe dintersection correspondant

34 Multi-Level Greedy Algorithm (suite) F i : parties connectées à F U : selectionné à laide de Greedy U : initialisé avec v À chaque étape : sélection de J J : ensemble de vues, sous-graphe dun F i, benefit par unité despace maximal Ajout de J à U Arrêt quand benefit de U ne peut plus être amélioré

35 Multi-Level Greedy Algorithm (suite) Algo : choix dun nouveau U et ajout à M Arrêt : S(M)>S Exécution : exponentielle (tous les sous- graphes de F i possibles)

36 Conclusion Structure pour le problème général de sélection des vues dans un datawarehouse Heuristiques compétitives dans un temps polynomiale pour les cas particuliers importants Heuristiques compétitives dans un temps polynomiale pour dautres cas particuliers (arbres and-or,arbres and-or binaires,…) ? Techniques développées : aperçu significatif de lheuristique de Greedy


Télécharger ppt "DATA WAREHOUSES Selection of Views to Materialize in a Data Warehouse Himanshu Gupta Department of Computer Science Stanford University Bernigaud Sébastien."

Présentations similaires


Annonces Google