Au début d’un projet décisionnel une importante question se pose à propos de l’architecture de l’entrepôt des données. Quel modèle choisir étoile ou flocon ? Pourquoi ?
Le choix entre les schémas aura un impact sur les performances, la maintenance et la lisibilité, il faut donc garder cela à l’esprit avant de démarrer un projet d’entrepôt de données.
Voici quelque points clés à retenir :
Différences physiques
Modèle en étoile (Star Schema) :
Les données dans les tables dimension sont dénormalisées, ça veut dire que les données qu’appartiennent à une dimension peuvent se répéter.
Les dimensions sont connectées directement à la table de fait avec une relation 1 : n.
Modèle en flocon (Snowflake Schema) :
Les données des tables de dimension sont normalisées, ce qui signifie que les données sont stockées dans des tables de dimension séparées sans redondance, ça veut dire que les données qu’appartiennent à une dimension ne se répètent pas.
Les dimensions sont connectées aux dimensions « lookup » et ensuite connectées à la table de faits.
1. Normalisation et Redondance
Comme mentionné, les dimensions sur le schéma en étoile sont dénormalisées et les dimensions sur le schéma en flocon sont normalisées.
En raison de la dénormalisation, les schémas en étoile ont tendance à avoir de meilleures performances de requête par rapport au schéma en flocon.
2. Complexité des requêtes
Les schémas en étoile nécessitent des requêtes moins complexes car la table de faits est liée à chaque dimension par une jointure unique, ce qui accélère également les performances des requêtes.
Dans les schémas en flocon de neige, plusieurs jointures sont nécessaires entre la table de faits et les tables de dimension, ce qui rend les requêtes plus complexes et augmente le temps d’exécution de la requête.
3. Mise en œuvre et Maintenance
L’architecture et la mise en œuvre de l’entrepôt de données sont généralement plus faciles pour les schémas en étoile en raison de sa simplicité, cependant, la maintenance est fortement liée au volume de données redondantes. Moins de points de maintenance sont requis sur les schémas en flocon car les dimensions n’ont pas de données redondantes.
4. Stockage sur disque et intégrité des données
Comme les dimensions du schéma en flocon de neige n’ont pas de données redondantes, cette architecture nécessite moins de stockage sur disque que les schémas en étoile.
Un autre avantage des données non redondantes est qu’il est plus facile de conserver l’intégrité des données car les insertions et les mises à jour n’affectent qu’une seule entrée de données au lieu de plusieurs dans les schémas en étoile.
Il est important de mentionner qu’avec la croissance du cloud computing, le stockage sur disque devient de moins en moins cher et modulable.
Quel schéma choisir ?
À vous de décider quelle architecture est la plus adaptée à votre business case… Nous espérons que cet article vous a aidé à comprendre les principales différences entre les architectures et les avantages et inconvénients liés à chaque modèle
Références :
Star Schema vs Snowflake Schema and the 7 Critical Differences
Kimball, Ralph – The Data Warehouse Toolkit.