Les dimensions servent d'axes d'analyse pour observer des mesures selon différentes propriétés. Que faire lorsqu'une dimension n'a aucune propriété et n'est intéressante que par son existence ou non ?

Contexte

Reprenons l’exemple précédent d’une table de faits Order_facts dont l’objectif est de rassembler les informations concernant des commandes. Le grain de cette table de faits correspond à une ligne de commande : chaque ligne de la table concerne un produit (PRODUCT) commandé par un client donné (CUSTOMER) à un commercial donné (SALESPERSON) à une date donnée (DAY). La commande globale réunissant l’ensemble des produits commandés par le client (une entreprise) éventuellement auprès de différents commerciaux.

Source du schéma : Adamson, Christopher. Star Schema. Osborne/McGraw-Hill, 2010, page 30.

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 ?

Définition

Une dimension dégénérée est une dimension représentée dans une table de faits par un unique attribut.

Pour résoudre le problème précédent, 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. Souvent les dimensions caractérisée par une valeur binaire Vrai/Faux ou Oui/Non sont créées sous forme de dimensions dégénérées.

Lecture Dimension dégénérée : Star Schema. Christopher Adamson. pages 43, 57, 96

Lecture Dimension dégénérée : Agile Data Warehouse Design: Collaborative Dimensional Modeling, from Whiteboard to Star Schema Laurence Corr, and Jim Stagnitto. pages 62, 94