1. Livres & vidéos
  2. Modélisation BI et OLAP
  3. Modélisation des tables de faits et des agrégats
Extrait - Modélisation BI et OLAP L’art de concevoir des architectures décisionnelles performantes
Extraits du livre
Modélisation BI et OLAP L’art de concevoir des architectures décisionnelles performantes Revenir à la page d'achat du livre

Modélisation des tables de faits et des agrégats

Définition et structuration

1. Définition et structuration des tables de faits

Destinées aux entrepôts de données et aux cubes OLAP, les tables de faits enregistrent des événements mesurables ou des transactions qui surviennent dans une organisation (par exemple : ventes, commandes, paiements) et contiennent des mesures quantitatives souvent agrégables (ex. : montant, quantité, durée) ainsi que des clés étrangères pointant vers des tables de dimensions (ex. : date, client, produit) permettant de contextualiser les faits.

Dans un cube OLAP, la table de faits joue un rôle clé dans l’analyse multidimensionnelle. Les mesures (faits) sont agrégées à l’aide de fonctions (Sum, AVG, Count…) ventilées par des dimensions.

Exemple de navigation OLAP

Fait : montant des ventes

Dimensions : Date, Produit, Région

Dans un cube OLAP, on peut drill down pour passer du montant des ventes annuelles au montant mensuel ou quotidien.

Exemple de structuration d’une table de faits :

Clé de dimensions

Type de champs

Type de données

Exemple

Id_Date

Clé étrangère

INT

24857

Id_produit

Clé étrangère

INT

150

Id_region

Clé étrangère

INT

78

Montant_unitaire

Mesure

Numeric

30.00

quantite

Mesure

Numeric

100

2. Implémentation de la dimension...

Types de faits

1. Faits additifs

Très utilisées dans les cubes OLAP, les mesures (ou faits) additives contiennent des mesures qui peuvent être agrégées sur toutes les dimensions (liées à cette table) sans altérer la signification de l’information.

Exemple de faits additifs :

L’exemple abordé en début de chapitre met en évidence un fait additif qui permet de sommer les mesures de cette table par rapport à toutes les dimensions de la table.

Clé de dimensions

Type de champs

Type de données

Exemple

Id_Date

Clé étrangère

INT

24857

Id_produit

Clé étrangère

INT

150

Id_region

Clé étrangère

INT

78

Montant_unitaire

Mesure

Numeric

30.00

quantite

Mesure

Numeric

100

2. Faits semi-additifs

Ce type de faits permet de répondre à des problématiques de représentation de certains types d’indicateurs, notamment l’état d’une mesure à un jour donné (un stock, un portefeuille, un solde bancaire ou un effectif à une date donnée).

Exemple d’un fait semi-additif :

Clé de dimensions

Type de champs

Type de données

Exemple 1

Exemple 2

Exemple 3

Id_Date

Clé étrangère

INT

24857

24888

24920

Date_reference

Clé étrangère

Date

2025-01-01

2025-02-01

2025-03-01

Id_produit

Clé étrangère

INT

150

150

150

Id_region

Clé étrangère

INT

78

78

78

Stock_disponible

Mesure

INT

130

100

70

La mesure stock_disponible peut être agrégée par les dimensions Produit, Région ainsi que Id_Date. Cependant, l’agrégation par la dimension Date_reference doit être réalisée avec précaution.

En effet, il n’est ni logique ni possible de faire la somme des stocks disponibles des trois exemples par la dimension date_reference, ce qui nous permet de mieux comprendre la distinction entre un fait semi-additif et un fait additif.

Ce fait semi-additif permet alors de répondre aux questions suivantes en utilisant la même table :

  • Quel est le stock disponible pour le produit 150 au début du mois de février 2025 ?

  • Quel est le stock moyen disponible sur le 1er trimestre de 2025 ?

  • Quel est le stock disponible à la date la plus récente ?

3. Faits...

Choix de la granularité et impact sur la performance

La granularité d’une table de fait correspond au niveau de détail le plus fin enregistré dans un fait, autrement dit la plus petite unité d’analyse disponible pour une mesure. Le choix de la granularité a un effet direct sur la précision analytique, les performances, la taille ainsi que les temps de traitement des cubes OLAP.

Exemple de granularité :

  • Granularité fine : chaque enregistrement de la table de fait correspond à une vente individuelle par produit, client, magasin et minute.

  • Granularité moyenne : chaque enregistrement de la table de fait correspond aux ventes journalières par produit.

  • Granularité agrégée : chaque enregistrement de la table de fait correspond aux ventes mensuelles ou annuelles par produit.

Choix de la granularité

Le choix de la granularité d’une table de faits doit reposer sur une compréhension précise du besoin métier. Il s’agit d’identifier ce que les utilisateurs attendent réellement en termes d’analyse. Est-ce qu’un niveau de détail transactionnel, ligne par ligne, est requis ? Ou bien une analyse à partir d’indicateurs agrégés peut-elle suffire ? Par ailleurs, certaines situations exigent des données très fines, comme à...

Stratégies d’agrégation

1. Pré-agrégations et cubes matérialisés

Les stratégies d’agrégation ont pour but de réduire le temps d’exécution des requêtes analytiques afin de construire des indicateurs synthétiques sur de grands volumes de données. Deux approches se distinguent : les pré-agrégations (ou matérialisation) ou alors des calculs à la volée (ou agrégation dynamique).

Lorsqu’un entrepôt de données est régulièrement interrogé, recalculer les mêmes taux, moyennes ou comptes sont calculés à chaque requête peut devenir très coûteux en temps et en ressources. Pour y remédier, la préagrégation est utilisée, elle consiste à précalculer certains résultats et à les stocker directement dans la base.

Ainsi, au lieu de recalculer les chiffres de vente d’un produit chaque fois qu’un analyste le demande, ceux-là sont déjà disponibles sous forme de « résumés » prêts à l’emploi.

Par exemple, il est possible d’agréger les ventes par mois, par produit ou par région, et de stocker ces résultats dans des tables spécifiques ou des cubes multidimensionnels.

C’est comme garder une fiche de révision à portée de main plutôt que de relire tout un manuel à chaque fois.

Il existe plusieurs types de préagrégations :

  • des tableaux consolidés tels qu’une table des ventes quotidiennes ou mensuelles ;

  • des cubes OLAP, largement adoptés pour leur aptitude à traiter des données à travers diverses dimensions (temps, produits, géographie, etc.).

En termes de calculs, on observe des agrégats traditionnels tels que les sommes, les moyennes, les maximums et les dénombrements, qui sont fréquemment combinés selon diverses dimensions. Par exemple, on peut être intéressé par le calcul de la moyenne des ventes mensuelles selon les régions, ou encore le cumul des commandes en fonction du type de client et du trimestre.

L’un des avantages majeurs des préagrégations est le temps économisé lors...