Si Power Query est l'atelier où l'on taille les pierres, la modélisation des données est l'art d'ériger l'édifice.
Vous pouvez importer des tables impeccablement nettoyées ; si vous vous contentez d'empiler une unique table plate géante de 80 colonnes ou si vous reliez vos tables dans tous les sens sans méthode, votre rapport deviendra lent, vos calculs DAX deviendront des énigmes insolubles et vos filtres croisés produiront des résultats faux.
En Business Intelligence moderne, il existe une règle d'or universelle défendue par Ralph Kimball et les plus grands architectes de données : le schéma en étoile est le roi incontesté de la modélisation décisionnelle.
🎯 Les Objectifs Pédagogiques de ce Module#
À l'issue de cette deuxième grande partie consacrée à la modélisation et au langage DAX, vous serez capable de :
- Concevoir un schéma dimensionnel en étoile (Star Schema) en distinguant clairement vos tables de faits et vos tables de dimensions.
- Désactiver l'horloge interne masquée (Auto Date/Time) de Power BI pour bâtir une table de dates dédiée professionnelle avec
CALENDARouCALENDARAUTO. - Comprendre la frontière critique entre Colonne calculée et Mesure pour ne pas saturer inutilement la mémoire RAM du moteur VertiPaq.
- Rédiger des mesures DAX robustes, des agrégations de base (
SUM,DIVIDE,DISTINCTCOUNT) aux itérateurs ligne par ligne (SUMX,AVERAGEX). - Maîtriser la fonction reine du DAX :
CALCULATE(), en comprenant la transition de contexte et la manipulation des filtres avecALL(),ALLEXCEPT()etALLSELECTED(). - Exploiter la Time Intelligence pour calculer en deux lignes des cumuls annuels (YTD), des comparaisons avec l'année précédente (YoY) et des moyennes mobiles.
- Mettre en place des Groupes de calcul (Calculation Groups) pour factoriser vos calculs temporels sur l'ensemble de vos indicateurs.
📚 Ne confondez pas : Modèle Transactionnel (3NF) vs Schéma en Étoile (Star Schema)#
L'une des erreurs les plus fréquentes chez les ingénieurs venant des bases de données relationnelles SQL (OLTP) consiste à vouloir importer leurs données dans Power BI sous leur forme normalisée d'origine (3ème forme normale) :
❌ SCHÉMA NORMALISÉ OLTP (En flocon complexe - Déconseillé en BI) :
[Commandes] ──► [Clients] ──► [Villes] ──► [Régions] ──► [Pays]
Problème : Multiplie les jointures en chaîne, complexifie le DAX et dégrade la compression en mémoire.
✅ SCHÉMA EN ÉTOILE (Star Schema - Recommandé à 100% dans Power BI) :
┌──────────────────────┐
│ Dim_Calendrier │
└──────────┬───────────┘
│ (1:N)
┌──────────────────────┐ │ ┌──────────────────────┐
│ Dim_Clients ├───(┼)───┤ Dim_Produits │
└──────────────────────┘ │ └──────────────────────┘
(1:N) │ (1:N)
┌──────────┴───────────┐
│ Fact_Ventes │
│ (Faits & Métriques) │
└──────────────────────┘
| Type de Table | Contenu & Nature | Exemples typiques | Clés associées |
|---|---|---|---|
| Table de Faits (Fact) | Événements quantitatifs, transactions, mesures numériques | Fact_Ventes, Fact_Budget, Fact_Stocks |
Clés étrangères (FK) vers chaque dimension |
| Table de Dimension (Dim) | Contexte métier, attributs de filtrage, axes d'analyse | Dim_Clients, Dim_Produits, Dim_Date, Dim_Magasins |
Clé primaire unique (PK) sans doublon |
[!TIP] Le secret de la performance VertiPaq :
Le moteur de stockage colonnaire de Power BI adore les schémas en étoile purs. Les relations un-à-plusieurs (1:*) à sens de filtre unique permettent d'exécuter des agrégations sur des dizaines de millions de lignes en une fraction de seconde.
🧩 Les Composants de la Modélisation dans ce Module#
Ce module s'articule autour de 9 leçons progressives :
- Créer une table de dates personnalisée : Bâtir le calendrier universel indispensable pour toutes vos analyses chronologiques.
- Créer des tables calculées : Générer des dimensions à rôles multiples et des tables déconnectées pour scénarios d'analyse.
- Créer des colonnes calculées : Savoir quand (et surtout quand ne pas) créer une colonne calculée en DAX.
- Définir les relations entre les tables : Configurer les cardinalités, le sens de propagation des filtres et les relations inactives avec
USERELATIONSHIP. - Mettre en place les mesures : Écrire des mesures explicites propres, maîtriser les itérateurs
SUMXet structurer sa table de mesures. - Modifier le contexte de filtre avec CALCULATE : Le cœur du réacteur DAX : contextes d'évaluation, transition de contexte et modificateurs de filtres
ALL. - Exploiter la Time Intelligence : Comparaisons N-1, YoY, MTD/QTD/YTD et moyennes glissantes.
- Créer des groupes de calcul : Factoriser vos calculs analytiques à l'échelle industrielle.
- Mise en pratique appliquée : Atelier pratique complet de modélisation de bout en bout sur le jeu Superstore.
La modélisation est la compétence n°1 qui sépare les débutants des véritables consultants Power BI d'élite. Entrons dans le vif du sujet en posant la première pierre indispensable : la création d'une table de dates digne de ce nom !
Commentaires