ED Cours 23-24
ED Cours 23-24
ED Cours 23-24
Introduction
DW VS base de données
Magasins de données
Architecture générale
Introduction
3
2) Données intégrées
4) Données datées
Les 4 Caractéristiques des DW
10
2) Données intégrées:
4) Données datées
du fait que les données sont non volatiles, des intervalles de temps les sont associés.
L’échelle de temps dans le DW est beaucoup plus logique que dans les bases
de données (BD)
BD opérationnelle: valeur courante des données
DW: information dans une perspective historique (ex: les 5 dernières années)
Les données d’un ED sont souvent non volatiles et ont donc une plus longue durée
de vie que celles d’une BD
DW VS base de données
16
BD ED
détaillées agrégées
évolutives statiques
nombreux décideurs
Utilisateurs
administrateurs /opérationnels
Opérations réalisées Consultation, ajout suppression Consultation uniquement
sur les données et modification
Magasins de données
17
Flux de données
Entrant
Données issues de différentes sources et de différents formats de stockage. Ceci
regroupe les fichiers texte, les rapports, les fichiers de base de données issus de
différents systèmes de gestion de bases de données (SGBD), . . . etc.
Pour qu’elles soient exploitables, ces données doivent passer par le processus ETL
Extraction : multi-source, hétérogène
Transformation: filtrer, trier, homogénéiser, nettoyer
Chargement: insertion des données dans l’entrepôt
Sortant
Mise à disposition des données pour les utilisateurs finaux
Architecture générale
21
Zone de préparation
Zone temporaire de stockage de données extraites
Normalisation…
Requêtes
Exercice
23
Réalisation des opérations au jour le jour Pas de mise à jour interactive de la part des utilisateurs
Faible probabilité de l’accès Grande quantité de données utilisée par les traitements
Utilisée de façon aléatoire Mise à jour interactive possible de la part des utilisateurs
Introduction
Modèle en étoile
Modèle en flocon
Modèle en constellation
fournit le contexte (qui, quoi, quand, où, pourquoi et comment) des faits
Quantité
Montant Mesure
Concepts de base : Table de Dimension
30
Exemples
Dimension temporelle: jourmoisannée
Avantages
Facilité de navigation
Inconvénients
Redondance dans les dimensions
Modèle en étoile
34
Modèle en Flocon
35
La table de dimension de niveau hiérarchique le plus bas est reliée à la table de fait
On dit qu'elle à la granularité la plus fine
Modèle en Flocon
36
Avantages
Réduction de la redondance
Inconvénients
Modèle plus complexe
Temps
ID Jour
Modèle en constellation
38
Avantage
Fournit un schéma flexible
Inconvénient
il est beaucoup plus complexe et donc difficile à mettre en œuvre et à maintenir
Modèle en constellation
40
Exercice
41
Dans cette entreprise, chaque produit appartient à une seule catégorie selon la
taille et sa fréquence de demande.
Aussi, l'entreprise veut analyser son activité par jour, par mois, par trimestre,
par semestre et par année, et par ville du client.
Dans cette architecture, une dimension est partagée entre les faits dans deux ou
plusieurs magasins de données
Ces dimensions, appelées dimensions conformes, ont connecté les magasins de
données pour former un entrepôt de données, qui est généralement appelé entrepôt de
données virtuel
Approche ascendante
47
Avantages
Résultats rapide: des magasins de données cohérents peuvent être crées rapidement
les magasins de données sont créés en premier, les rapports peuvent être générés
rapidement.
Inconvénient
Le volume de travail d’intégration pour obtenir un entrepôt de données
Approche descendante
48
Approche descendante
49
Avantages
Vision claire et conceptuelle des données
Inconvénients
Cette approche est inflexible aux besoins changeants des départements
Nécessite du temps
Approche descendante vs Approche ascendante
51
Avantages
Profite des avantages des deux approches
Inconvénients
Implique parfois des compromis de découpage
Dupliquer des dimensions identiques pour des besoins pratiques
FACULTÉ DES SCIENCES DE SFAX
Département d’informatique et des Communications
Transformation
Extraction Chargement
Base de données
Entrepôt de données
La sélection des données utiles à partir des BD de production n’est pas simple
Toutes les données sources ne sont forcément utiles
Doit-on prendre l’adresse complète ou séparer le code postal ?
Les données sont parfois assemblées (agrégées) avant d’être « injectées » dans le DW et
constituent ainsi un autre niveau de détail
La synthèse de ces données sources a pour but de les enrichir
Pour chaque champ cible, trouver la source et le champ correspondant de cette source
Si plusieurs sources sont trouvées choisir la plus pertinente
Si le champ cible exige des données de plusieurs sources former des règles de
consolidation
Si la donnée source contient plusieurs données cibles définir des règles de
découpage
Exemple: un seul champs pour l’adresse et le pays du client
Processus d’alimentation d’un ED : Extraction
63
Extraction complète
Capture l'ensemble des données à un certain instant
Extraction incrémentale
Capture uniquement les données qui ont changées ou ont été ajoutées depuis la
dernière extraction
Extraction différée: extrait tous les changements survenus durant une période donnée
Processus d’alimentation d’un ED : Extraction des données
65
Attention aux données cycliques: celles qu’on doit calculer à chaque période
pour pouvoir les prendre en considération
Processus d’alimentation d’un ED : Transformation
66
Suite d’opérations qui a pour but de rendre les données cibles homogènes et
puissent être traitées de façon cohérente
Types de transformations
Révision de format
Exemple: Changer le type ou la longueur des champs individuels
Processus d’alimentation d’un ED : Transformation
67
Décodage de champs:
Consolider les données de sources
multiples
Exemple: ['homme', 'femme'] vs ['M', 'F']
vs [1,2]
Conversion de dates
Exemple: '24 FEB 2011' vs '24/02/2011' vs '02/24/2011‘
Processus d’alimentation d’un ED : Chargement
69
Types de chargement
Chargement initial
Chargement incrémental
Rafraîchissement complet
Processus d’alimentation d’un ED : Chargement
70
Chargement initial
Se fait une seule fois lors de l'activation de l'entrepôt de données
Chargement incrémental
Se fait une fois le chargement initial est complété
Rafraîchissement complet
Utilisé lorsque le nombre de changements rend le chargement incrémental trop
complexe
Exemple: lorsque plus de 20% des enregistrements ont changé depuis le dernier
chargement
FACULTÉ DES SCIENCES DE SFAX
Département d’informatique et des Communications
Introduction
ROLAP
MOLAP
HOLAP
Stratégies d’implantation d’un entrepôt de données
74
On utilise pour cela des cubes OLAP (On Line Analytical Processing)
OLAP
75
OLAP vise à assister l’usager dans son analyse en lui facilitant l’exploration de
ses données et en lui donnant la possibilité de le faire rapidement
L’usager n’a pas à maîtriser des langages d’interrogation et des interfaces
complexes
Axes d’analyse
Dim_produit
Dim_commande
Quantity
Prix
Mesures
OLAP : cube de données
78
Donnée : quantité de vente d’une pièce, pendant une année, dans une région
donnée
OLTP vs OLAP
79
Les SGBD relationnels doivent être adaptés car ils n’ont pas les
caractéristiques adéquates pour répondre aux besoins des ED :
Extension du modèle relationnel pour supporter les requêtes d’analyses
multidimensionnelles
Extensions du langage SQL à de nouveaux opérateurs comme cube
Nouvelles fonctions telles que « rank » et « percentile » pour compléter les fonctions
classiques de SQL (count, sum et avg)
Générer des requêtes SQL adaptées au schéma relationnelle de l’ED (grâce aux
vues matérialisées existantes)
ROLAP
84
des conditions de jointures entre la table des faits et les tables de dimension
Il peut être également défini sur plusieurs tables comme les index de jointure
Techniques d’indexation ROLAP: indexation binaire
87
Principe général
Dans une table, pour un attribut donné : association de la liste des tuples dont
l’attribut contient la même valeur pour un groupe d’attribut
Avantages
Longueur du vecteur de bits ( un vecteur de bits pour chaque valeur d’attribut ) =
nombre de tuples de la table
Opérations sur les bits très rapides (AND, OR, XOR, NOT)
Optimisation de requêtes de types sélection, comparaison, jointure, agrégation ...
Techniques d’indexation ROLAP: indexation binaire
90
Inconvénients
Coût de maintenance important : tous les index binaires d’une table doivent être
actualisés lors de l’insertion d’un nouveau tuple dans la table
Principe
pré-calculer les jointures entre une ou plusieurs tables de dimension et la table
des faits dans les ED modélisés par un schéma en étoile
Techniques d’indexation ROLAP: Indexation de Jointure
Binaire
92
Soit ED composé d’une table de fait ventes et une table de dimension Produit
L’attribut catégorie ayant 4 valeurs différentes
La table de fait est composée de 59 instances
La construction de l’index de jointure binaire défini sur l’attribut catégorie
Techniques d’indexation ROLAP: Indexation de Jointure Binaire
93
Soit l’entrepôt de données composé d’une table de fait ventes et deux tables
de dimension Client et Temps
Techniques d’indexation ROLAP: Indexation de Jointure Binaire
94
Une vue ordinaire stocke le résultat d’une requête en mémoire centrale comme une
table virtuelle
est stockée d’une façon permanente sur un support de stockage non volatile
Utilisé par les requêtes pour améliorer les performances (éviter les opérations de
jointures et des agrégations couteuses)
ROLAP et sélection et matérialisation de vues
96
Les vues matérialisées sont stockées dans la même BD que la table de fait et
les tables de dimensions
Transparentes pour les utilisateurs et l’application
On peut créer une vue matérialisée sur une vue ou une autre vue matérialisée
L’avantage des vues matérialisées réside dans le fait qu’elles peuvent être utilisées
avec d’autres techniques d’optimisation comme les index ou la fragmentation
ROLAP et Fragmentation des tables de l’entrepôt
97
Avantages :
Technologie relationnelle mure
Inconvénients
Temps de réponses potentiellement élevés
Pas de possibilité de réaliser des requêtes OLAP avec des calculs complexes
Représente les données sous la forme d'un tableau multidimensionnel (cube) où:
Les coordonnées d'une case correspondent à une combinaison de valeurs des
dimensions du cube
Le contenu d'une case correspond aux faits (mesures) pour ces valeurs
MOLAP
104
Avantages
Stockage des données de manière multidimensionnelle
très rapide car pas de jointure à faire puisque le calcul des agrégats dans des
tables : en colonne ou en ligne
MOLAP
105
Inconvénients
Adaptés à de petits ED et lorsque le modèle multidimensionnel ne change pas
beaucoup
ROLAP MOLAP
en mode relationnel des cubes multidimensionnels
dans une seule source Les données sont transférées
Stockage de données
relationnelle d’une source relationnelle vers
des cubes
Extraction des données à la demande Pré-calcul du cube à l’avance
Quantité de données à gérer illimitée limitée
Performances peuvent être limitées meilleurs
Langage d’interrogation SQL MDX
utilisé
HOLAP
107