Une découverte des notions de base de la modélisation dimensionnelle.
Pré-requis pour réaliser cette activité

Activité(s) :
- Tableau Desktop

Concept(s) à connaître :
- Modélisation dimensionnelle : Introduction

Introduction

Contexte

Votre client est un représentant de l’Assemblée Permanente des Présidents des Comités de l’eau de Bretagne (APPCB) dont l’objectif est une gestion équilibrée partenariale et concertée, de l’eau et des milieux aquatiques bretons. Ses missions sont de :

  • Mutualiser les connaissances, les outils, les informations
  • Favoriser l’échange d’expériences et l’expression de positions communes
  • Encourager une organisation territoriale pertinente pour la planification de l’eau avec des responsabilités accrues des CLE

La loi sur l’eau de 1992 a initié les démarches de planification de la gestion de l’eau à travers les Schémas d’Aménagement et de Gestion de l’eau (SAGE) établis à l’échelle de territoires hydrographiques pertinents (les bassins versants). Ils sont les outils privilégiés pour répondre aux exigences européennes de bon état des eaux fixés par la Directive Cadre Eau (DCE). Pour chacun de ces territoires, une Commission Locale de l’Eau (CLE) organise le débat et la concertation en réunissant l’ensemble des acteurs de l’eau. La CLE constitue donc un parlement de l’Eau local, dont les principales missions sont d’élaborer, de mettre en œuvre et de suivre l’avancée des travaux du SAGE.

Schéma dimensionnel

Un schéma dimensionnel est une représentation logique de données décisionnelles. Ainsi, quel que soit l’outil de stockage choisi pour les données (un entrepôt de données OLAP, une solution in-memory, une base de données relationnelle, …) la modélisation dimensionnelle des données va permettre de les structurer (en mesures et axes d’analyse) tout en intégrant des mécanismes d’historisation.

Nous allons apprendre progressivement à nous familiariser avec la notion de schéma dimensionnel. Le schéma ci-dessous représente donc une vision simplifiée des données utilisées pour la réalisation des tableaux de bord sur les pesticides.

Schéma dimensionnel
Schéma dimensionnel simplifié de la base de données dimensionnelle des pesticides dans les eaux souterraines

L’objectif de cette activité est de comprendre ce qu’il signifie et pourquoi il a été construit de cette manière.

Le schéma dimensionnel

Les schémas dimensionnels sont des schémas logique de données utilisés pour représenter des données à des fins décisionnelles. La particularité des données décisionnelles est qu’elles sont systématiquement historisées et que les requêtes que l’on désire faire dessus sont des aggrégats complexes. Leur mise à jour peut se faire au moyen d’un rafraichissement périodique des données sans problème de concurrence à la différence des systèmes opérationnels. Avant d’aborder deux notions essentielles, le schéma en étoile et l’architecture en bus nous allons présenter quelques définitions.

Définitions

Lorsque nous voulons suivre les performances d’un processus métier ou d’une activité nous utilisons des tableaux de bord possédant un ou plusieurs indicateurs. Un indicateur est une représentation graphique d’une ou plusieurs mesures, suivant un ou plusieurs axes d’analyse. Dans un modèle dimensionnel, ces mesures sont appelées des faits et les axes d’analyses qui permettent de définir le contexte sont appelés des dimensions.

Fait / Mesure
Une fait ou mesure correspond à une valeur dans une ligne d’une table de faits.
Dimension
Une dimension est un axe d’analyse suivant lequel on peut considérer une mesure. Les dimensions permettent de naviguer dans les niveaux de granularités.
Grain
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.

Lecture Granularité

Le schéma en étoile vs schéma en flocon

Les notions de schéma en étoile et de schéma en flocon sont des archetypes pour distinguer les schémas non normalisés (schéma en étoile) des schéma normalisés (schéma en flocon).

Dans un schéma dimensionnel, une table de faits est reliée à des dimensions afin de construire un datamart ou marché d’information. Il existe donc deux approches pour relier faits et dimensions : le schéma en étoile et le schéma en flocon.

Schéma en étoile
Un schéma est dit en étoile si une table de faits centrale contenant des mesures est reliée à des dimensions qui n’ont pas de liens entre elles. Nous sommes alors en présence d’un schéma non normalisé.

Un schéma en étoile introduit de la redondance de manière contrôlée au niveau des dimensions afin d’améliorer les performances des requêtes complexes en évitant de nombreuses jointures entre les dimensions.

Lecture Schéma en étoile

Schéma en flocon
Un schéma est dit en flocon lorsqu’une table de faits centrale est reliée à des dimensions qui sont elles-mêmes reliées à de nouvelles dimensions construites en normalisant les informations.

Un schéma en flocon évite d’introduire de la redondance en normalisant les dimensions. Étant donné que nous sommes dans un paradigme OLAP (sans notion de transaction) cette approche n’est utile que dans certains contextes précis. En dehors de ces situations, que vous découvrirez plus tard, on préféréra systématiquement les schémas en étoile.

Lecture Schéma en flocon

Les clés dimensionnelles

Lors de la création d’une dimension, le choix de la clé dimensionnelle est très importante. Il est recommandé d’éviter l’utilisation de clés naturelles au profit de clés dites artificielles afin de s’isoler du système opérationnel source.

Clé artificielle
Une clef artificielle est un entier affecté séquentiellemment lorsqu’une dimension est peuplée.

Lecture Les différents types de clefs

L’architecture en bus décisionnel

L’approche défendue par Kimball lors de la conduite d’un projet décisionnel est une approche itérative, où chaque étape consiste à concevoir un datamart (défini par un schéma en étoile) répondant aux besoins d’un processus métier ou d’une activité de prise de décision. Lors des différentes itérations du projet, un nouveau datamart est produit en créant une nouvelle tables de faits s’appuyant autant que possible sur des dimensions pré-existantes. Deux dimensions sont dites conformes si elles respectent la définition suivante :

Dimensions conformes
Deux dimensions conformes sont soit identiques, soit l’une d’entre elles est un sous-ensemble de la plus détaillée.

Les dimensions conformes utilisent les mêmes clés dimensionnelles, les mêmes noms de colonnes d’attributs, les mêmes définitions d’attributs et les mêmes valeurs d’attributs (ce qui garantit des intitulés d’états et des regroupements d’information cohérents).

Lecture Dimensions conformes

Cette approche conduit ainsi à la mise en place d’une architecture en bus décisionnel basée sur des dimensions et des faits conformes (nous découvrirons la notion de faits conformes dans un second temps). Ainsi, le principe d’architecture en bus décisionnel (soutenu par Kimball) précise qu’un ensemble de datamarts partagent plusieurs dimensions communes appelées dimensions conformes.

Lecture Architecture d’un système décisionnel : Kimball vs Inmon

Lecture Architecture en bus

Une vision synthétique du schéma dimensionnel peut être donnée au moyen d’une matrice de bus qui, pour chaque processus (en ligne), associe les différentes dimensions qui sont utilisées (en colonne).