Académique Documents
Professionnel Documents
Culture Documents
BUSINESS INTELLIGENCE
Version : 1.0
PLAN DU COURS
Module 2 : Modélisation multidimensionnelle
1. Approche de conception
1.1. Introduction
1.2. Méthode GIMSI
1.3. Méthode Ralph Kimball et Marguy Ross
2. Concepts fondamentaux de la modélisation multidimensionnelle
2.1. La Granularité
2.2. Le Fait
2.3. Les différents types de clefs
2.4. Dimension dégénérée
2.5. Dimension conforme
2.6. Architecture en bus
3. Approche Microsoft de conception
4. Quelques exemples
1. Approche de conception
1.1. Introduction
• Méthode GIMSI,
• Méthode « historiques », SOCRIDE : invoquer en équipe, Balanced
Scorecard (BSC) ou tableau de bord prospectif,
• Méthode Ralph Kimball et Marguy Ross. Parmi les principaux, nous
aborderons la méthode GIMSI et la méthode Ralph Kimball
1.2. Méthode GIMSI
1.2.1. Définition
Le manager conduit son système selon des objectifs fixés, soumis à des
contraintes, puis il prend des décisions, les ajuste selon les informations remises
par le Tableau de bord.
Le tableau de bord est le dernier outil dans la chaine BI, c’est l’élément de
restitution qui peut être conçu selon plusieurs méthodes parmi elles la méthode
GIMSI [2008] d’Alain FERNANDEZ.
1.2.3. Démarche
Identification
1. La portée du projet.
2. Le niveau d’engagement de la direction.
3. Une première appréciation de la difficulté.
4. Une première appréciation du degré de coopération potentielle.
Conception
◗ Accessible techniquement:
Une fois le système en activité, pour éviter les dérives et garantir la cohérence
globale avec la stratégie déployée, la direction pourra périodiquement
procéder à des audits dans des conditions clairement définies et acceptées.
Mise en oeuvre
Comment le faire ?
Amélioration permanente
Étape 10 : Audit
Rappelons que nous ne nous referons pas à un service ou une fonction d’une
organisation quand nous parlons d’un processus d’entreprise. Par exemple,
nous construisons un seul modèle dimensionnel pour les commandes des clients
au lieu de construire des modèles distincts pour les services vente et marketing
qui veulent l’un et l’autre accéder aux données de vente.
La meilleure façon d’assurer la cohérence est de publier les données une seule
fois. Un unique traitement de publication réduit l’effort de développement lié
à l’activité ETC ainsi que la gestion courante des données et la consommation
d’espace disque.
- Une ligne individuelle sur le ticket d’achat d’un client, enregistrée par un
dispositif de saisie électronique.
- Une ligne de prestation de la note d’honoraires d’un médecin ;
- Un instantané quotidien du niveau de stock de chaque produit dans un
entrepôt ;
- Un instantané mensuel de la situation de chaque compte d’une
banque.
Les équipes d’entrepôt de données tentent souvent de sauter cette étape qui
leur paraît inutile. N’en faites surtout pas autant Il est extrêmement important
que tous les membres de l’équipe de conception soient d’accord sur la
granularité des tables de faits. Il est pratiquement impossible d’aller au bout de
l’étape 3 sans avoir déclaré le grain. Nous vous avertissons qu’une déclaration
de grain inadéquate vous hantera tout au long de la réalisation de l’entrepôt
de données.
Etape 4 : Identifier les faits numériques qui vont renseigner chaque ligne de la
table de faits.
Pour décider des dimensions et des faits devant figurer dans le modèle
dimensionnel, nous serons guidés par la vision que les utilisateurs ont de leur
activité et non par les documents. Nous devons tenir compte à la fois des
exigences de nos utilisateurs et de ce qu’il y a effectivement dans nos données
sources.
Les 5 000 US restants proviennent de rayons tels que viande, les fruits et
légumes, la boulangerie ou les fleurs et n’ont pas de code CUP. Il nous faut
toutefois assigner des codes US à ces produits. Notre chaine de magasins étant
très automatisée, nous collons des étiquettes scannérisables sur la plupart des
articles de ces rayons. Les codes en question ne sont pas des CUP, mais ce sont
néanmoins des US.
b. Résolution
Dans notre cas le management veut mieux comprendre les achats des clients
saisis par le système de terminaux point de vente.
C’est pourquoi, nous allons modéliser en premier les ventes au niveau des TPV
(terminaux point de vente). Ces données serviront à déterminer quels produits
se vendent, dans quels magasins, quels jours, dans quelles conditions de
promotion.
Vous avez intérêt à développer des modèles dimensionnels basés sur les
données les plus atomiques saisies lors d’un processus de l’activité. Les
données atomiques sont les informations les plus détaillées susceptibles d’etre
collectées ; par définition, il n’est pas possible de les diviser davantage.
Dans notre étude de cas, la donée la plus granulaire est une ligne individuelle
d’une transaction sasise sur TPV. L’accès aux transactions des terminaux point
de vente nous donne une vue extrement détaillé des ventes du magasin.
Une fois le grain de la table de faits choisi, les dimensions temps, produit et
magain s’imposent instantamément, Les autres dimensions attribuer aux
données sont la promotion sous laquelle le produit a été vendu, ou le
fournisseur qui a livré le produit au magasin, ou le nom du responsable du
magasin. D’où le principe suivant :
La granularité d’une table de faits est très importante car elle permet de
comprendre la nature des différents faits. De manière plus concrète la
granularité définit la nature d’une ligne de la tables de faits. Sur l’exemple ci-
dessus les faits Quantity Ordered, Order Dollars, Cost Dollars et Margin Dollars
sont calculés par produit (PRODUCT), par vendeur (SALESPERSON), par client
(CUSTOMER) et par date de vente (DAY).
Grain / Granularité
Le grain est ce qui permet de définir le niveau de détail des informations
présentes dans une ligne d’une table de faits. Il est défini par un ensemble
minimal de dimensions.
Elle garantit que tous les faits sont enregistrés avec le même niveau de détail.
A l’aide d’une définition métier, en utilisant des termes issus du domaine métier
sans référence explicite aux dimensions : Ventes de produits effectués par un
vendeur à un client donné, un jour donné.
Une table de faits comporte plusieurs faits. Tous ces faits doivent correspondre
à un même contexte. Par exemple, pour une commande, on pourra avoir pour
chacun des produits commandés : la quantité commandée et le montant
total. Dans ce cas, la quantité et le montant sont relatifs à un même contexte
: la commande et le produit.
Il n’est pas possible que la quantité soit celle d’un produit, et que le montant
soit le montant total de la commande.
Lorsque deux faits correspondent à deux grains différents, c’est qu’ils ne
participent pas au même processus, et qu’ils doivent donc être stockés dans
deux tables de faits différentes.
Lorsque deux faits dans deux tables de faits différentes ont la même définition,
la même unité de mesure et le même mode de calcul on dit qu’il s’agit de faits
conformes, même s’ils ne sont pas définis au même grain.
A l’aide d’une définition métier, en utilisant des termes issus du domaine métier
sans référence explicite aux dimensions : Ventes de produits effectués par un
vendeur à un client donné, un jour donné.
2.2. Le Fait
Lors du choix des faits il est important de se poser la question de leur propriété
d’additivité :
Fait additif
Un fait additif peut être additionné selon n’importe quelle dimension. Par
exemple, un chiffre d’affaire.
Fait semi-additif
Fait non-additif
Un fait non-additif ne peut jamais être additionné. La seule chose possible est
d’effectuer des comptages ou des moyennes. Par exemple, le prix unitaire
d’un produit.
Faits conformes
Un fait est dit conforme, s’il existe à différents endroits en portant le même nom
et que les définitions et modes de calculs sous-jacents sont les mêmes.
@Kimball2003
Clef primaire
Une clef primaire définit de manière unique chaque ligne de la table. Chacune
de ses valeurs est unique et non NULL.
Clef étrangère
Clef composite
Clef candidate
Une clef candidate est une clef ayant toutes les propriétés requises pour être
une clef primaire.
Clef alternative
Une clef alternative est une clef candidate pouvant être utilisée à la place de
la clef primaire.
Student_ID (PK) Firstname Lastname Email
Ici Student_ID et Email sont deux clefs candidates. On ne peut pas utiliser la
combinaison de Firstname et Lastname en tant que clef composite car il y a
un risque de doublon. La clef choisie pour être la clef primaire est Student_ID.
b. Notions avancées
Clef naturelle
Une clef naturelle est une clef utilisée pour définir quelque chose du monde
réel.
Clef métier
Une clef métier est une clef primaire d’un système source.
Une clef artificielle est utilisée en tant que clef dimensionnelle, il s’agit d’une
clef sans signification qui est auto-générée (en général une séquence de
nombres) pour remplacer une clef naturelle.
id (PK) Firstname Lastname Student_ID Email
Ici Student_ID est une clef métier et naturelle tandis qu’Email est une clef
naturelle. Afin de s’isoler du monde réel et du système source, une clef
artificielle id est créée afin d’avoir la garantie que la clef primaire n’évoluera
pas au cours du temps.
Définition
Que faire si nous désirions ajouter des attributs dimensionnels qui ne concernent
aucune des tables de dimension identifiées, par exemple un numéro de
commande order_id ou un numéro de ligne de commande (pour un produit
donné) order_line_id ?
La solution (voir image ci-dessous) est d’utiliser une dimension dégénérée, c’est
à dire une dimension que l’on stocke dans la table de faits sous la forme d’un
unique attribut. Il s’agit d’un attribut qui peut servir d’axe d’analyse sans table
de dimension. Parfois, il définit également le grain de la table de faits.
2.5. Dimension conforme
Définition
La notion de dimension conforme est une solution pour permettre de faire des
analyses qui concernent plusieurs processus métiers de l’entreprise tout en
conservant la cohérence des données.
Ainsi, pour faire des analyses sur des données provenant de différents processus
(par exemple pour comparer des commandes et les retours sur livraisons ou
comparer des commandes et les expéditions associées), il faut pouvoir faire
des requêtes sur deux tables de faits différentes (la table des commandes et la
table des retours ou la table des commandes et la tables des expéditions).
Ces tables de faits ne sont jamais directement reliées entre-elles. Lorsque des
tables de faits sont reliées, elles le sont par l’intermédiaire de dimensions
communes dites dimensions conformes.
Si les produits, dans la gestion des commandes, n’ont pas les mêmes
caractéristiques que les produits dans la gestion des expéditions, il ne sera pas
possible de faire des requêtes portant sur les produits commandés et expédiés.
Dimensions conformes
Définition
Le “bus” en informatique
Architecture en bus
Figure 9 : Source du schéma : Agile Data Warehouse Design: Collaborative
Dimensional Modeling. Laurence Corr and Jim Stagnitto.