Modélisation Et Implémentation D'un Data Warhouse

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 10

Mohamed El Hadi BENELHADJ Systèmes Décisionnels

CHAPITRE 2
Modélisation et implémentation d’un entrepôt de données

1. Modélisation dimensionnelle
Les données d'un Data Warehouse sont de deux types:
 Les faits: grosse accumulation de données reprenant des faits simples.
Exemple: chiffres de ventes,
 Les données "dimensionnelles": données en quantité réduite, souvent statiques
qui précisent des informations sur les éléments apparaissant dans les faits.
La modélisation dimensionnelle sert à modéliser l’activité que l’on souhaite analyser.
1.1. Table des faits (clé multiple)
 Table principale du modèle dimensionnel
 Contient les données observables (les faits ou un agrégat de faits) sur le sujet
étudié selon divers axes d’analyse (les dimensions), autrement dit elle Contient
un ou plusieurs faits numériques qui se produisent pour la combinaison de clés
définissant chaque enregistrement
Exemple

Table de faits des ventes


Clé date (CE)
Clés étrangères vers les Clé produit (CE)
dimensions Clé magasin (CE)
Quantité vendue
Faits Coût
Montant des ventes

Fait: Ce que l’on souhaite mesurer: Quantités vendues, …


Table des faits : Contient les clés des axes d’analyse (dimension) et les faits.
1.2. Typologie des faits
 Additif: additionnable suivant toutes les dimensions
 Quantités vendues, chiffre d’affaire
 Peut être le résultat d’un calcul:
 Bénéfice = montant vente - coût
 Semi additif: additionnable suivant certaines dimensions
 Solde d’un compte bancaire:
 Pas de sens d’additionner sur les dates car cela représente des instantanés d’un
niveau
 Σ sur les comptes: on connaît ce que nous possédons en banque
 Non additif: fait non additionnable quelque soit la dimension
 Prix unitaire: l’addition sur n’importe quelle dimension donne un nombre dépourvu
de sens
1.3. Table "Dimension" (Dimension = Axe d’analyse)
 Axe d’analyse selon lequel vont être étudiées les données observables (faits)
 Contient les détails sur les faits
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

 Sa clé est primaire et correspond à l’un des composants de la clé multiple de la table de
faits.
Exemple: Client, Produit, Période de temps, …
Une table Dimension contient souvent un grand nombre de colonnes, un ensemble
d'informations descriptives des faits et beaucoup moins d’enregistrements qu’une table de
faits.

Dimension produit
Clé produit (CP)
Clé de substitution
Code produit
Description du produit
Groupe de produits
Attributs de la dimension Marque
Emballage
Poids

a) Dimensions et Indicateurs
 Dimensions
 Produit
 Client
 Vendeur
 Date
 Indicateur
 Chiffre d’affaires
Une dimension prend une liste de valeurs, un indicateur est un nombre.
b) Hiérarchie de dimensions
Mois Semaine Jour
2. Les types de modèles
2.1. Modèle en flocons (snowflake schema)
La représentation directe d’un contexte dimensionnel dans une base de données
relationnelle est un réseau de tables jointes selon un schéma en flocon. Dans ce mode de
représentation l’association conceptuelle qui contient les faits devient la table de faits, et
chacune des entités dimensionnelles devient une table distincte (Fig. 6).
La table de faits contient en plus des indicateurs significatifs qu’elle comporte par
définition, un ensemble de clés étrangères, dont chacune assure la liaison avec la table du
niveau le plus fin de chaque dimension.
La table des faits est généralement une très grande table, puisqu’elle comporte autant
d’enregistrements qu’il existe de combinaisons pertinentes entre les tables "Dimension".
Dans le cas de la figure 1, le nombre d’enregistrements de la table de faits "Activité" peut
théoriquement être égal au produit du nombre d’Etablissements par le nombre de Produits
et par le nombre de Jours de l’historique mémorisé.
C’est une borne maximum, car il n’y a pas nécessairement eu d’activité pour chaque
combinaison possible. Même si le nombre d’activité réelle est une faible proportion de ce
maximum, la table de faits a pratiquement toujours une taille supérieure d’un ordre de
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

grandeur à la taille de la plus grande table dimensionnelle. Elle occupe en général 95 à 99


% du volume total de la base de données.
La génération de clés techniques est impérative. Pour être logiquement connectée, une
table de faits doit posséder une clé pour chaque dimension. Dans chaque enregistrement
d’une table de faits, les clés prennent une place importante. Si la table de faits possède des
centaines de milliers, voire de millions, d’enregistrements, l’espace occupé par les clés
dans la base de données est loin d’être négligeable. Il faut donc chercher à minimiser cet
espace.
Il ne faut donc pas chercher à utiliser les clés signifiantes, qui ne sont pas faites pour
économiser de la place, mais pour signifier quelque chose. Il faut utiliser les clés
techniques numériques, générées éventuellement lors du chargement dans la base de
diffusion (ou dans l’entrepôt de données).
Le format des clés doit être homogène, le plus petit possible compte-tenu de la cardinalité
de chaque table. Il faut penser également aux possibilités d’extension de la base en volume.
(Fig. 5).
En résumé, le modèle en flocons contient:
 Une table de fait et des dimensions décomposées en sous hiérarchies
 Plusieurs niveaux de Tables de Dimension
 La table de dimension de niveau hiérarchique le plus bas est reliée à la table de fait. On
dit qu’elle a la granularité la plus fine.
Avantages
 Normalisation des dimensions
 Économie d’espace disque
Inconvénients
 Modèle plus complexe (jointures)
 Requêtes moins performantes
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

Fig. 5. Exemple de Schéma en flocons

2.2. Modèle en étoile (star schema)


Dans la pratique on préfère une forme dénormalisée du schéma en flocon : le schéma en
étoile.
La figure 6 représente le schéma en étoile, dérivé du même modèle que le schéma en
flocons de la figure 5.
Le schéma en étoile ne comporte, en plus de la table de faits qu’une table par dimension.
Cette simplification est obtenue au prix d’une forte dénormalisation.
Dans la dimension « Client », par exemple, toutes les propriétés descriptives de
l’Entreprise et du Groupe sont regroupées dans la même table que les propriétés de
l’Etablissement. Dans le cas d’un groupe contrôlant 100 établissements, la description du
Groupe sera répétée dans 100 enregistrements.
Ce modèle est donc générateur d’une forte redondance mais:
 La redondance des données ne compromet pas la cohérence d’une base ne subissant pas
de mise à jour transactionnelle,
 L’espace occupé par les tables dimensionnelles est insignifiant par rapport au volume de
la table de faits,
 Toutes les tables dimensionnelles ont une liaison directe avec la table de faits. Quelle
que soit la complexité des dimensions, le nombre de tables pouvant être impliquées
dans une requête, en plus de la table de faits, est inférieur ou égal au nombre de
dimensions du contexte. Le temps d’exécution d’une requête est indépendant du niveau
hiérarchique des propriétés conditionnelles invoquées.
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

En résumé, le modèle en étoile contient:


 Une table de fait centrale.
 Un ensemble de tables de Dimension (1 niveau).
 Les dimensions n’ont pas de liaison entre elles.
Avantages
 Facilité de navigation
 Nombre de jointures limité
Inconvénients:
 Redondance dans les dimensions
 Toutes les dimensions ne concernent pas les mesures

Fig. 6. Exemple de Modèle en Etoile


Mohamed El Hadi BENELHADJ Systèmes Décisionnels

2.3 Le Modèle en Constellation de faits


Ce modèle est un ensemble de schémas en étoiles et/ou en flocon dans lesquels les tables de
faits se partagent certaines tables de dimensions. C’est de cette accumulation que découle un
modèle en constellation.

3. BD Multidimensionnelles et OLAP
3.1. Introduction
La vocation d’un entrepôt de données est l’analyse de données pour l’aide à la décision
dans les entreprises. La modélisation multidimensionnelle est la base des entrepôts de
données et de l’analyse multidimensionnelle (OLAP). Donc, la modélisation
multidimensionnelle est une réponse à un besoin analytique.
Les bases de données relationnelles, modélisées selon les principes classiques de
normalisation, s’adaptent très mal à un contexte analytique (OLAP). En analyse,
l’utilisateur doit disposer d’un modèle relativement intuitif et capable de stocker le résultat
de nombreux calculs d’agrégation.
L’intérêt pour l’analyse de données s’est développé énormément ces dernières années. Les
entreprises se sont rendues compte de l’efficacité de la technologie OLAP (On-line
Analytical Processing) dans l’analyse et l’exploration des données. Cette technologie est
utilisée dans les systèmes d’aide à la décision. Le plus souvent, ces systèmes sont basés sur
des techniques d’entreposage de données pour exploiter la grande masse d’informations
disponibles dans les entreprises à des fins d’analyse et d’aide à la décision.
La modélisation multidimensionnelle propose donc d’analyser des indicateurs numériques
(par exemple chiffre d’affaires, nombre d’individus, ratios, etc.) dans un contexte précisé
par le croisement de plusieurs dimensions d’analyse (par exemple temps, géographie,
organisation, produits, ...).
Par exemple, considérons les trois dimensions Temps, Pays et Produits, utilisées pour
analyser les ventes. L’indicateur Chiffre d’Affaires sera calculable sur l’ensemble des
combinaisons possibles entre ces trois axes. L'ensemble des combinaisons possibles peut
être représenté par un cube.
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

Fig. 7. Exemple de Cube de Données


Au-delà de trois dimensions, cela devient mathématiquement un hypercube (qu’il est beaucoup
plus difficile de représenter graphiquement). Une base de données multidimensionnelle typique peut
donc s’envisager comme un hypercube d’une dizaine de dimensions comprenant plusieurs millions
de cellules (on parle plus couramment de Cube OLAP).
3.2. OLAP (On-Line Analytical Processing)
L’OLAP ou Online Analytical Processing est une technique informatique d'analyse
multidimensionnelle, qui permet aux décideurs, d'avoir accès rapidement et de manière
interactive à une information pertinente présentée sous des angles divers et multiples, selon
leurs besoins particuliers. L’OLAP est donc une technique dont les fonctionnalités servent
à faciliter l’analyse multidimensionnelle: opérations réalisables sur l’hypercube pour
extraire les données.
a) Opérations OLAP
 Opérations Agissant sur la Structure
Tranchage (slicing): Consiste à ne travailler que sur une tranche du cube. Une des
dimensions est alors réduite à une seule valeur.
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

Extraction d’un bloc de données (dicing): Consiste à travailler uniquement sur un


sous-cube.

 Opérations agissant sur la Granularité


Forage vers le haut (roll-up): « dézoomer »
 Obtenir un niveau de granularité supérieur
 Utilisation de fonctions d’agrégation
Forage vers le bas (drill-down): « zoomer »
 Obtenir un niveau de granularité inférieur
 Données plus détaillées
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

 ROLAP: Relational OLAP

L’obtention des données se fait via des tables relationnelles et des jointures qui vont
avec celles-ci. Donc, la requête créée sera relativement complexe, selon la
granularité, et, sera d’une longueur plus ou moins importante. Comme le résultat
n’est pas stocké, à chaque consultation, la requête devra être relancée à chaque
consultation la requête devra être relancée.
Les différents inconvénients de la méthode ROLAP: Le temps de réponse est
d’une longueur assez conséquente étant donné que les requêtes fonctionnent via des
tables. Les bases sont donc utilisées à chaque relance du rapport.
Les avantages de la méthode ROLAP: Le coût est relativement faible, en effet,
cette méthode utilise des ressources déjà existantes comme des ressources
matérielles, des licences etc.
Exemples: Microsoft Analysis Services, Oracle 10g, MetaCube d'Informix,
Mondrian de Pentaho, DSS Agent de MicroStrategy.
 MOLAP: Multidimentional OLAP
Mohamed El Hadi BENELHADJ Systèmes Décisionnels

On stock les données dans un CUBE qui est en fait une base de données
multidimensionnelles. De cette façon, le concept de relationnel n’est plus présent.
Pré calculer tous les croisements envisageables est l’objectif de cette base de données
multidimensionnelle, de cette manière la restitution des données se fait de façon
instantanée. Les données étant stockées, le temps gagné pendant la restitution des
données sera considérable.
Inconvénients des cubes MOLAP : Le coût est important, en effet, elle nécessite
souvent des licences pour les bases multidimensionnelles et des coûts pour le
développement des CUBES.
Avantage des cubes MOLAP: Le temps de réponse est extrêmement court car la
totalité des données sont stockées au sein d’un CUBE.
Remarque: Les bases de données multidimensionnelles possèdent leur propre
langage permettant de faire des requêtes, appelé le MDX, qui est l’équivalent du
SQL utilisé pour les bases de données relationnelles.
Exemples: Board M.I.T., Essbase, IBM TM1, Jedox Palo, icCube server, Infor Alea,
Microsoft Analysis Services, Oracle OLAP.
 HOLAP: Hybrid OLAP

L’HOLAP est un mélange du ROLAP et du MOLAP. Les cubes HOLAP sont donc
Hybrides. On se sert du MOLAP lorsque l’on veut accéder aux données agrégées. Si
l’on souhaite arriver à un niveau de détail plus important, nous utilisons le ROLAP.
Par exemple, les données sont stockées et accessible via un Cube multidimensionnel,
mais on fait également de la restitution via un outil de reporting comme SSRS par
exemple. L’utilisateur pourra donc avoir accès à un rapport contenant les données
issues du CUBE ainsi qu’à un autre rapport détaillé contenant les données en
provenance de tables, cette fois relationnelles.
Inconvénients de la méthode HOLAP: Elle est inutilisable en cas de complexité
trop élevée des rapports ou qu’ils fassent appel à trop de croisements de données.
Avantages de la méthode HOLAP: Un investissement financier moindre que la
méthode MOLAP, en effet la partie développement sera beaucoup moins importante.
De plus le temps de réponse est relativement court.
Exemple: Oracle OLAP, Microsoft Analysis Services.

Vous aimerez peut-être aussi