Chapitre 3 : Modélisation multidimensionnelle
Objectifs spécifiques
Comprendre les concepts du modèle de données
multidimensionnel
Introduire les opérateurs sur des cubes
multidimensionnels
Introduire les schémas de Conception logique
3.1. Concept de base de la modélisation multidimensionnelle
La modélisation multidimensionnelle consiste à considérer un sujet analysé comme un
point dans un espace à plusieurs dimensions. Les données sont organisées de manière à
mettre en évidence le sujet analysé et les différentes perspectives de l'analyse.
Cette conception est basé sur un modèle multi-dimensionnel des données qui voit les
données sous la forme d’un data cube (cube de données)
3.1.1 La notion de dimension
Un Data cube : permet de modéliser et visualiser les données selon différentes dimensions ;
les dimensions constituent donc les points de vue depuis lesquels les données peuvent être
observées
Chaque dimension est représentée par une table
• Ex : Localisation (ville, département, pays, région),
Produit (article, type,catégorie),
Date (jour, semaine, mois, trimestre, année)
3.1.2. La notion de fait
Le thème central est représenté par une table de faits. Cette table de faits contient les
valeurs des mesures et des clés vers les tables de dimensions
- La valeur d’une mesure est le résultat d’une opération d’agrégation des données
• Ex : montant_ventes, quantité_vendue
– Les clés des tables de dimension sont en général construites automatiquement
3.1.3 La notion de cuboïde
L’ensemble des valeurs d’une mesure pour une combinaison de valeur des dimensions
constitue un cuboïde
Exemple :
Entrepôt de données des ventes électroniques d’une société.
• Montants des ventes sur l’année par type d’article, par ville et par mois
• Une valeur est associée à chaque combinaison type – ville – mois
→Dimensions : Produit (type), Localisation (ville) et Date (mois)
3.1.4 Notion de Cube de
données Un Cube est un treillis
de cuboïdes.
Exemple :
3.1.5 Notion de dimensions multi-niveaux
Pour chaque dimension, on définit différents niveaux d’abstraction / spécialisation
Lors du processus OLAP, les données sont généralement analysées en partant d'un faible
niveau de détail vers des données plus détaillées pour "forer vers le bas". Pour définir ces
différents niveaux de détail, chaque dimension est munie d'une (ou plusieurs) hiérarchie(s)
de paramètres.
La hiérarchie représentée par les tables de dimensions :
-sert lors des analyses pour restreindre ou accroître les niveaux de détail de l'analyse
organise les paramètres d'une dimension conformément à leur niveau de détail. Ces
paramètres seront donc ordonnés par une relation hiérarchique "est_plus_fin"
On définit donc la granularité d’une dimension comme étant le nombre de niveaux
d’abstraction
Exemple :
3.1.6 Hiérarchies de concepts d’une dimension
Un Concept est une valeur correspondant à un niveau d’abstraction
Exemple : dimension Localisation
3.2. Opérations sur le data cube
Considérons l’exemple cuboïde suivant ; nous pouvons y effectuer plusieurs Opérations de
manipulation interactive des cuboïdes
3.2.1 Opération Slice
Elle consiste en une sélection sur une dimension du cube –
Ex : 3ème trimestre sur la dimension Date pour visualiser
les ventes par Localisation et Produit durant ce trimestre
3.2.2 L’opération Dice
Elle consiste en la définition d’un sous-cube par sélection sur deux (ou plus)dimensions –
Ex : critère (Localisation = Paris v Rome) et (Date = 1er trimestre v 2èmetrimestre) et
(Produit = Informatique v Téléphonie)
3.2.3 L’opération Pivot
Elle permet une présentation alternative du cube
– Transformation en une série de plans 2D
– Renversement du cube sur un ou plus axes pour une vision alternative • Ex :
renversement sur l’axe Date
3.2.4 L’opération Roll-up
Elle permet une généralisation du cube ; elle consiste à :
– Supprimer une dimension ou
– Remonter dans une hiérarchie de concepts d’une
dimension
• Ex : remonter du niveau
Trimestre au niveau
Semestre pour Date
3.2.5 L’opération Drill-down
Elle a pour rôle la spécialisation du cube. Elle consiste à
– Ajouter une dimension • Ex : dimension TypeClient
ou
– Descendre dans une hiérarchie de concepts
• Ex : descendre du niveau Catégorie au niveau Type pour Produit
3.3. Conception d’un entrepôt de données
3.3.1 Approches de Conception
❖ Il existe trois types d’approches : Approche haut-bas, bas-haut ou une
combinaison des deux :
– Haut-bas : débuter par le planning et la conception du modèle (mature)
– Bas-haut : débuter par des essais et des prototypes (rapide)
❖ Du point de vue de l’ingénierie du logiciel ceci consiste à appliquer les modèles
de cycle de vie suivants :
– Cascade : analyse structurée et systématique lors de chaque étape avant de passer à la
suivante
– Spirale : génération rapide de systèmes fonctionnels croissants; modifications rapides et
adaptation du modèle facile
❖ Le Processus de conception d’un entrepôt de données inclut les étapes suivantes
– Choix du processus à modéliser, ex : commandes, ventes, livraison
– Choix du grain (niveau de détail des données) pour le processus
– Choix des dimensions pour chaque table de faits
- Choix des mesures stockées dans les tables de faits
3.3.2 Schéma Conceptuel d’un entrepôt de données
La conception d’un entrepôt de données un modèle au niveau logique qui soit concis et
orienté sujet différent donc du modèle entités-relations. Trois types de schéma existent :
[Link] Schéma en étoile
Caractéristiques du schéma en étoile :
• structure simple utilisant le modèle entité-relation
• une entité centrale : la table des faits :
• objets de l'analyse
• taille très importante
• nombreux champs
• des entités périphériques : les tables de dimensions :
• dimensions de l'analyse
• taille peu importante
• peu de champs
Exemple 1 : Ventes de médicaments dans des pharmacies
Schéma en étoile modélisant les analyses des quantités et des montants des médicaments
dans les pharmacies selon 3 dimensions : le temps, la catégorie et la situation géographique
• Table de faits : Vente
• Tables de dimension : Temps, Catégorie, Géographie
Exemple 2 : Ventes d"articles dans un supermarché
Associé à l’exemple 2 :
un fait
• il a été acheté 3 exemplaires à 1 euro
• du produit pid3
• par le client cid1
• à la date did3
• dans le magasin mid2
• dans le chariot cid8
• correspondant à la promotion prid1
un élément de la dimension location :
• store id mid2
• store name rondpoint
• city blois
• region centre
• country France
[Link] Schéma en flocon
Un modèle en flocon est une évolution du schéma en étoile avec :
• une décomposition des dimensions du modèle en étoile en sous hiérarchies.
• le fait est conservé et les dimensions sont éclatées conformément à sa hiérarchie
des paramètres
• cela conduit à une normalisation des tables de dimensions : structure hiérarchique
des dimensions et un niveau inférieur identifie un niveau supérieur
Les avantages de cette modélisation sont:
• formaliser une hiérarchie au sein d'une dimension.
• maintenance des tables de dimensions simplifiée
• réduction de la redondance
Les inconvénient de cette modélisation :
• induit une dénormalisation des dimensions générant une plus grande complexité en
termes de lisibilité et de gestion.
• navigation coûteuse
Exemple : Ventes de médicament dans des pharmacies
Chaque dimension du schéma en étoile précédent est dénormalisée, formant ainsi une sorte
de flocon
[Link] Schéma en constellation
Peut-être vu comme une collection d’étoiles (schéma en galaxie ou constellation de faits)
Un modèle en constellation :
• fusionne plusieurs modèles en étoile qui utilisent des dimensions communes.
• comprend en conséquence plusieurs faits et des dimensions communes ou non
Exemple : Ventes de médicament dans des pharmacies
• une constellation est constituée de 2 schémas en étoile :
- l'un correspond aux ventes effectuées dans les pharmacies et
- l'autre analyse les prescriptions des médecins
les dimensions Temps et Geographie sont partagées par les faits Prescriptions et
Vente.