Schéma — Modélisation dimensionnelle : le schéma en étoile
FAIT_VENTES id_date, id_produit, id_client id_magasin, montant, quantité + marge, coût, remise DIM_DATE id_date (PK) année, trimestre, mois, semaine jour_ferie, saison DIM_PRODUIT id_produit (PK) libellé, catégorie, marque famille, fournisseur, prix_ref DIM_CLIENT id_client (PK) nom, segment, région secteur, type, CA_annuel DIM_MAGASIN id_magasin (PK) ville, région, surface zone_chalandise, responsable Schéma en étoile — 1 table de faits + 4 dimensions

Qu'est-ce que la modélisation dimensionnelle ?

La modélisation dimensionnelle est une technique de conception de bases de données optimisée pour les requêtes analytiques. Contrairement aux bases de données transactionnelles normalisées (OLTP), les modèles dimensionnels sont volontairement dénormalisés pour maximiser les performances de lecture et faciliter la compréhension par les utilisateurs métier.

Développée par Ralph Kimball dans les années 1990, cette approche structure les données autour de deux concepts fondamentaux : les tables de faits et les tables de dimensions.

💡
Règle d'or : Une table de faits contient les mesures quantitatives de votre activité (montants, quantités, durées). Une dimension décrit le contexte de ces mesures (qui, quand, où, quoi).

Le schéma en étoile (Star Schema)

Le schéma en étoile est la forme la plus simple et la plus performante de modélisation dimensionnelle. Il se compose d'une table de faits centrale, directement reliée à plusieurs tables de dimensions non normalisées.

Dans le schéma ci-dessus, la table FAIT_VENTES est au cœur du modèle. Elle contient les clés étrangères vers chaque dimension (id_date, id_produit, id_client, id_magasin) et les mesures métier (montant, quantité, marge, remise).

Avantages du schéma en étoile

Schéma en flocon (Snowflake Schema)

Le schéma en flocon est une variante dans laquelle les dimensions sont normalisées — elles sont décomposées en sous-tables. Par exemple, une dimension Produit peut être divisée en tables Produit, Catégorie, Sous-catégorie et Marque.

⚠️
Attention : Le flocon réduit la redondance des données mais augmente le nombre de jointures. En BI, ce surcoût de requête est souvent contre-productif. Réservez le flocon aux dimensions très larges (+100 colonnes) ou aux contraintes de stockage spécifiques.

Tables de faits : les différents types

TypeDescriptionExemple
TransactionnelleUne ligne par événement métierChaque ligne de commande
Instantané périodiqueSnapshot à intervalles réguliersStock en fin de mois
Accumulating snapshotSuivi d'un processus en plusieurs étapesCycle de vie d'une commande
FactlessEnregistre des événements sans mesuresPrésence d'un employé

Les dimensions à évolution lente (SCD)

Un client peut changer de région, un produit peut être rebrandé. Comment gérer ces changements historiques ? Les Slowly Changing Dimensions (SCD) offrent plusieurs stratégies :

SQL — SCD Type 2 : Insertion d'une nouvelle version
-- Fermer la ligne existante
UPDATE DIM_CLIENT
SET date_fin = GETDATE(), is_current = 0
WHERE id_client_src = @id
  AND is_current = 1;

-- Insérer la nouvelle version
INSERT INTO DIM_CLIENT
  (id_client_src, nom, region, segment, date_debut, date_fin, is_current)
VALUES
  (@id, @nom, @new_region, @segment, GETDATE(), '9999-12-31', 1);

Bonnes pratiques à retenir

Conclusion

La modélisation dimensionnelle reste, en 2026, la meilleure approche pour concevoir un Data Warehouse orienté analytique. Le schéma en étoile offre le meilleur compromis entre performance, lisibilité et compatibilité avec les outils BI modernes comme Power BI ou Oracle OAS.

Chez ANAILYNIS, chaque projet de Data Warehouse commence par une phase de modélisation rigoureuse avec l'équipe métier : identifier les processus à mesurer, définir les grains, lister les dimensions et construire la Bus Matrix. C'est ce fondement qui garantit la pérennité de votre investissement BI.

Besoin d'un accompagnement BI ?

ANAILYNIS vous accompagne dans la conception, le déploiement et la formation sur vos projets BI — Power BI, Oracle OAS, Data Warehouse.

Contacter ANAILYNIS →