Conception optimisée de Vues Matérialisées dans un Environnement réel d’Entreposage de...

Preview:

DESCRIPTION

Conception optimisée de Vues Matérialisées dans un Environnement réel d’Entreposage de données. G. K. Y. Chan Q.Li L. Feng. Bienvenu Marie - Chapelle Cédric. Introduction. Présentation d’un algorithme de réduction des coûts d’exécution des requêtes sur un entrepôt de données - PowerPoint PPT Presentation

Citation preview

Conception optimisée de Vues Matérialisées dans un Environnement réel d’Entreposage de données

G. K. Y. Chan Q.Li L. Feng

Bienvenu Marie - Chapelle Cédric

Introduction Présentation d’un algorithme

de réduction des coûts d’exécution des requêtes sur un entrepôt de données

1) Définition d’un modèle de coût2) Conception de l’algorithme qui

déterminera les vues à matérialiser

Introduction (2) Étude d’un cas concret : la

société R, extraction d’une partie de la base pour former l’entrepôt de données

- Table de fait : Facture INV (Co_no, Inv_no, Inv_date, P_no, Qty, Amt)- Table de dimensions :Société et ProduitCO (Co_no, Co_name, R_no)PD (P_no, P_name, Mfr_no, Type_no, Cat_no)

Conception du datawarehouse (1) Différents schémas Application à la société ‘R’:

éléments nécessaires Stockage des informations

fréquemment utilisées dans des vues récapitulatives

Architecture du système et caractéristiques

Différents schémas pour les systèmes de Datawarehousing Schéma en étoile

Schéma en constellation

Schéma en flocon

Schéma en étoile

Schéma en constellation

Schéma en flocon

Conception du datawarehouse (2) Différents schémas Application à la société ‘R’:

éléments nécessaires Stockage des informations

fréquemment utilisées dans des vues récapitulatives

Conception du système et caractéristiques

Application à la société ‘R’: éléments nécessaires (1) Conception du Diagramme Entité-

Association du système de facturation

Application à la société ‘R’: éléments nécessaires (2) Nécessité d’estimer la fréquence

de chaque requête et donc la fréquence d’accès à la vue associée

Conception du datawarehouse (3) Différents schémas Application à la société ‘R’:

éléments nécessaires Stockage des informations

fréquemment utilisées dans des vues récapitulatives

Architecture du système et caractéristiques

Stockage dans des vues récapitulatives Stocker dans des vues les clés et

certains attributs des dimensions fréquemment utilisés par les requêtes

+ : réduit le nombre de jointures entre table de fait et tables de dimensions

- : occupe de l’espace disque supplémentairePb : Trouver l’ensemble optimal de clés et

attributs de dimension à stocker dans les vues (notions de bénéfice et d’efficacité )

Coûts d’ajout de différentes informations à la table de fait

Conception du datawarehouse (4) Différents schémas Application à la société ‘R’:

éléments nécessaires Stockage des informations

fréquemment utilisées dans des vues récapitulatives

Conception du système et caractéristiques

Conception du système et caractéristiques (1) Schéma hybride de la société ‘R’

Nécessité de calculer les tailles des tables de dimension normalisées

Conception du système et caractéristiques (2) Schéma hybride de la société ‘R’

Nécessité de calculer les tailles des tables de dimension normalisées

Taille des tables normalisées

Sélection des vues à matérialiser Modèle de coût

Adaptation d’un algorithme optimal de sélection des vues à matérialiser

Analyse du coût

Modèle de coût

coût total =

coût de requête +

coût de maintenance des vues matérialisées

+ coût de stockage

Coût de requête Hypothèse : ni index , ni clé de hashage

sur les vues => balayage séquentiel

),,...,()()( 1 idndfigiq VVVCVCqC

...))(*)()(()( 11 iddi VSVSVSVS

))(*)()((... didndn VSVSVS

r

i

iqqiqr qCfCTotal1

)(*)(

Coût de maintenance (1) Hiérarchisation des vues : notion

de descendance

Calcul du coût

Coût de maintenance (2) Hiérarchisation des vues : notion

de descendance

Calcul du coût

Calcul de coût

),,...,()()( 1 aidndjaigim VVVCVCVC

...))(*)()(()( 11 aiddai VSVSVSVS

))(*)()((... aidndn VSVSVS

r

i

imuim VCfCTotal1

)(*)(

Hypothèse : fui = 1 ; Toutes les vues sur les ventes sont actualisées régulièrement

Coût de stockage (1) Dépendance de la capacité du disque dur

Calcul du coût

Coût de stockage (2) Dépendance de la capacité du disque dur Calcul du coût

)(*)( iistore VSUVC

Hypothèse : U=1, d’où

)()( iistore VSVC

Indice d’efficacité de matérialisation

Bénéfice net

Efficacité de matérialisation

Bénéfice net Bénéfice net : net(Bi)

= bénéfice Bi- coût maintenance- coût stockage

ai : ancêtre de i, ni : descendante de im : nombre de descendants de i

m

n

initainitniqi VVCVVCVfB1

)]()([*)(

Indice d’efficacité de matérialisation

Bénéfice net

Efficacité de matérialisation

Efficacité de matérialisation bénéfice net par unité de stockage

de la vue matérialisée

)()/( iii VSBNet

Coût total Calcul du coût total des requêtes

apres matérialisation d’une vue

Coût total = Coût total – Bénéfice + Coût de stockage + coût de maintenace

Algorithme Déterminer les chemins optimaux pour

les requêtes et la maintenance des vues Calculer le bénéfice net et le coefficient

d’efficacité de chaque vue Classer les vues par ordre décroissant

d’efficacité Déterminer le coût total minimum Sélectionner l’ensemble optimal de

vues à matérialiser

Chemins optimaux (1)

Chemins optimaux (2)

INV

Co-P-Day

R-P-Day

R-P-Month P-Sale-Day

P-Sale-Month

Algorithme Déterminer les chemins optimaux pour

les requêtes et la maintenance des vues Calculer le bénéfice net et le coefficient

d’efficacité de chaque vue Classer les vues par ordre décroissant

d’efficacité Déterminer le coût total minimum Sélectionner l’ensemble optimal de

vues à matérialiser

Algorithme Déterminer les chemins optimaux pour

les requêtes et la maintenance des vues Calculer le bénéfice net et le coefficient

d’efficacité de chaque vue Classer les vues par ordre décroissant

d’efficacité Déterminer le coût total minimum Sélectionner l’ensemble optimal de

vues à matérialiser

Classer les vues par ordre décroissant d’efficacité

Algorithme Déterminer les chemins optimaux pour

les requêtes et la maintenance des vues Calculer le bénéfice net et le coefficient

d’efficacité de chaque vue Classer les vues par ordre décroissant

d’efficacité Déterminer le coût total minimum Sélectionner l’ensemble optimal de

vues à matérialiser

Déterminer le coût total minimum

);( qalltotal CTotalC do );;1(for iTii

);( then )0)(( if itotaltotali BNetCCBNet break; else

totaltotal CCMin )(

Algorithme Déterminer les chemins optimaux pour

les requêtes et la maintenance des vues Calculer le bénéfice net et le coefficient

d’efficacité de chaque vue Classer les vues par ordre décroissant

d’efficacité Déterminer le coût total minimum Sélectionner l’ensemble optimal de

vues à matérialiser

Sélectionner l’ensemble optimal de vues à matérialiser

then))()(&(&)))()(( if totalitotali CMinBNetCSVSLS

;L);( qalltotal CTotalC

do );;1(for iTii set ewsummary vi thefrom select LTVi

ess;effectiven storagehighest with the

;iVLL break; else

endfor;;return L

Exemple CO_P_Day (1) Select

INV.Co_No,Co_Name,INV.P_No,Type_No,Cat_No,MFR_No,R_No,INV_DT,SUM(AMT)AMT,SUM(QTY)QTY

From INV, CO, PDWhere Inv.Co_No=Co.Co_No and

INV.P_No=PD.P_No

Exemple Co_P_Day (2) Coût de stockage

D’après le coût d’ajout de différentes informations : {CO_P}UX = 240B

Coûts d’ajout de différentes informations à la table de fait

Exemple Co_P_Day (3) Coût de la requête :Coût de selection + Coût des

jointures

240+(12+12*240)+(6+6*240)=4578 B

Taille des tables normalisées

Exemple Co_P_Day (4) Coût de maintenanceCoût de requête de l’ancêtre + Coût

de jointure de l’ancêtreAncêtre de Co_P_Day : INV114 + (12+12*114) + (6+6*114) = 2184 B

Exemple Co_P_Day (5) Bénéfice Net

Bénéfice - Coût de stockage - Coût de maintenance

97694.88 - 240 - 2184 = 95270.88 B

Exemple Co_P_Day (6) Efficacité

Bénéfice Net / Coût de stockage

95270.88 / 240 = 396.96

Exemple Co_P_Day (7) Coût total

Total (C) – Bénéfice Net

126270 – 95270.88 = 30999.12 B

Analyse du coût (1)

Analyse du coût (2)

Directives (1) Pour la conception d’un schéma de

datawarehouse Pour la sélection des vues à

matérialiser

Pour la conception du schéma Minimiser la taille des attributs les plus

utilisés Normaliser les grosses tables de dimensions Dé-normaliser celles contenant peu

d’enregistrements Partitionner horizontalement la table des

faits Stocker clés étrangères et attributs

fréquemment accédés dans les vues

Directives (2) Pour la conception d’un schéma de

datawarehouse Pour la sélection des vues à

matérialiser

Conclusion Méthodes de conception efficace à partir

des données de la Cie R Schéma hybride (avec concepts de

modélisation multidimensionnelle) Modèle de coût Algorithme de sélection des vues Trois stratégies comparées Envisagé : autres méthodes de

maintenance des vues

Recommended