Title: DynaClose: Une approche de data mining pour la s
1DynaClose 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
Ladjel BELLATRECHE LISI/ENSMA - Université de
Poitiers FRANCE
Hamid NECIR
Rokia MISSAOUI Université du Québec en Outaouais
(UQO) - CANADA
2Contexte Entrepôt de données relationnel
Requêtes de jointure en étoile
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 doptimisation
3Plan
EDA07 Poitiers 7-8 juin 2007
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
4Structures doptimisation existantes
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- Structures non redondantes
- Fragmentation de données
- Traitement parallèle
- Implémentations de la jointure (Hash join, Sort
join, etc.)
- Structures redondantes
- Vues matérialisées
- Index
- Mono attribut (B-Tree, Hash, etc.)
- Index de jointure binaires (IJB)
IJB index binaire défini sur une table des
faits qui référence des attributs de sélection
dune 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 0
RiD 2 0 1
RiD 3 1 0
RiD 4 1 0
RiD 5 1 0
RiD 6 1 0
SELECT count() FROM Actvars A, ProdLevel
P WHERE A.refProd P.Code AND FamilyLevel
Food
Problème de sélection des IJBs
5Formalisation du problème de sélection des IJBs
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- 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 dexécution de requêtes et
satisfaire la contrainte S.
6Étapes de Sélection des IJBs
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
Seuil
Pruning phase
Modèle de coût
- Qualité des IBJs dépend fortement de la phase de
pruning
- Greedy algorithm Microsoft
- Integer Linear Programming Microsft
Stockage
Selection phase
7État de lartPhase délimination(1)
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- 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)
Seuil
Query optimizer
Stockage
8État de lartPhase délimination(2)
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
Matrice dusage dattributs
EDA07 Poitiers 7-8 juin 2007
- Minsup3/5
- IJB sur A6 (support3/5) A6 ? ChannelLevel (9
instances) - IJB sur A3 est élagué (support2/5) A3 ?
ProdLevel (90000 instances) - Coût de jointure dépend fortement des tailles des
tables
- Data mining Close Aouiche05
- 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
dapparition des attributs de dimension dans les
requêtes
A1 A2 A3 A4 A5 A6
Q1 0 0 0 1 1 1
Q2 0 0 0 1 1 1
Q3 0 0 0 1 1 1
Q4 1 1 1 0 0 0
Q5 1 1 1 0 0 0
9Similitude entre IJB Fragmentation Verticale
- Structures doptimisation 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(NClient, Nom, Sexe, Ville, Age)
- Client1(NClient, Nom, Age) et Client2(NClient,
Sexe, Ville) - Index de Jointure Binaires
- IJB(Nom, Age) - IJB(Sexe, Ville)
- IJB(Nom, Age, Sexe)
- Algorithmes de fragmentation verticale
- Affinity-based approach Navathe91
- Usage des attributs/requêtes
- Cost-based Approach Bellatreche00, Fung04, .
- Évaluation de chaque solution (Modèle de coût)
- Data mining approach Le06
- Clustering
- DynaClose Nouvelle approche délimination
- Nouveaux critères délagage (Taille des tables,
fréquences)
10DynaClose
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- 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 dattributs non clés dun CFI.
Nombre n-uplet de la table de dimension Di.
Nombre n-uplet de la table des
faits. Sup Support
11Exemple
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
1-Gén SUPP Alpha fitness 1-itemsets fermés
A1 0,4 0,6448 0,12896 A1,A2,A3
A2 0,4 0,6448 0,12896 A1,A2,A3
A3 0,4 0,6448 0,12896 A1,A2,A3
A4 0,6 0,0003 0,0001 A4,A5,A6
A5 0,6 0,0003 0,0001 A4,A5,A6
A6 0,6 0,0003 0,0001 A4,A5,A6
IJB sur Customers.ProdLevel sélectionné fitness0
,12896 (support2/5). IJB sur channels.channel_de
sc est élagué fitness0,0001 (support3/5).
12Algorithme Greedy de Sélection
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
Imin IJB défini sur un attribut de sélection de
faible cardinalité
Stockage
Modèle de coût
Réduction de coût? Contrainte Stockage
Oui
Configuration finale
NO
13Nettoyage des CFIs sélectionnés
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- 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.
14Évaluation de performances (I)
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- 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 dexé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
15- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation
- Conclusion et perspectives
Évaluation de performances (II)
EDA07 Poitiers 7-8 juin 2007
Figure 1 Comparaison de DynaClose avec les
approches existantes
Figure 2 Pourcentage de gain avec contrainte
despace
16Conclusion Perspectives
- Structures doptimisation existantes
- Sélection des index de jointure binaires
- Notre approche
- Évaluation de performances
- Conclusion et perspectives
EDA07 Poitiers 7-8 juin 2007
- 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 dautres algorithmes de data mining
(Charm) Combinaison avec dautres structures de
sélection non redondantes (partitionnement)
DEXA07
17MERCI