L'entreposage de données est un système conçu pour stocker et organiser des données dans des référentiels centraux, y compris des données provenant d'autres sources. C'est un concept de base de la business intelligence dans les modèles de bases de données relationnelles qui utilise des techniques analytiques pour intégrer les données métiers dans une base de données centrale..
Deux modèles architecturaux courants sont utilisés dans l'entreposage de données:
Les deux sont les modèles de base de données multidimensionnels couramment utilisés pour répondre aux besoins des grandes bases de données à des fins d'analyse dans des entrepôts de données réels..
Nous présentons une comparaison impartiale entre les deux pour mieux comprendre lequel est meilleur que l'autre.
Il s’agit du modèle architectural le plus répandu et le plus largement utilisé pour développer des entrepôts de données et des dépôts de données dans lesquels les données sont organisées en faits et en dimensions. C'est le modèle architectural le plus simple dans lequel une table de faits est utilisée pour faire référence à des tables de dimensions multiples, imitant un motif en étoile.
Comme son nom l'indique, le diagramme ressemble à une étoile avec la table de faits au centre et les tables à plusieurs dimensions qui en sortent, créant ainsi un motif semblable à celui d'une étoile..
Il est également connu sous le nom de schéma de jointure en étoile et stocke tous les attributs d'une dimension dans une table de faits dénormalisée pour naviguer rapidement dans de grands ensembles de données multidimensionnels, ce qui permet des temps de réponse rapides aux requêtes..
C'est une extension du schéma en étoile avec des fonctionnalités ajoutées. Contrairement au schéma en étoile, les tables de dimension du schéma en flocon sont normalisées en plusieurs tables associées..
Le modèle architectural représente un agencement logique de tables dans une hiérarchie de relations un à un, dans lequel plusieurs tables de dimensions sont normalisées en tables de sous-dimensions, ressemblant à un motif semblable à un flocon de neige, d'où son nom..
Il s'agit d'une version plus complexe du schéma en étoile avec davantage de jointures entre les tables de dimension, qui prend en compte le temps de traitement lent pour extraire les données, ce qui signifie des temps de réponse de requête lents. Il minimise la redondance des données, ce qui améliore les performances des requêtes..
Dans les bases de données relationnelles, le schéma en étoile est le modèle architectural le plus simple utilisé pour développer des entrepôts de données et des magasins de données multidimensionnels. Comme son nom l'indique, le modèle ressemble à une étoile avec des points rayonnant depuis le centre, ce qui signifie que la table de faits est le centre et les points sont les tables de dimensions. Comme d’autres modèles dimensionnels, il est constitué de données sous forme de faits et de dimensions. Le schéma Snowflake, en revanche, est le modèle architectural plus complexe qui fait référence à une base de données multidimensionnelle avec une disposition logique des tables sous la forme d'un flocon de neige..
Le schéma en flocon de neige est assez similaire au schéma en étoile, à ceci près qu'il peut avoir plusieurs tables de dimension qui sont ensuite normalisées en plusieurs tables connexes appelées tables de sous-dimension. Il représente plusieurs niveaux de relations qui se divisent en un motif de flocon de neige. Cependant, le schéma en étoile stocke tous les attributs liés d'une dimension dans une seule table de dimensions dénormalisée, ce qui facilite la compréhension et le traitement de requêtes plus simples..
Une table de dimension ne peut pas contenir de lignes en double dans les modèles de base de données relationnelle pour la simple raison que cela pourrait créer des ambiguïtés lors de l'extraction. Chaque table doit avoir une colonne ou une combinaison de colonnes appelée clé primaire qui identifie de manière unique tous les enregistrements de la table. Une clé étrangère est une colonne ou un groupe de colonnes qui fournit un lien entre deux tables. Dans le schéma en étoile, chaque table de dimension a une clé primaire qui est liée à une clé étrangère dans la table de faits. La hiérarchie métier dans un schéma flocon de neige est représentée par une relation clé primaire / clé étrangère entre les tables de dimension..
La principale différence entre les deux modèles de base de données relationnelle est la normalisation. Les tables de dimension du schéma en étoile ne sont pas normalisées, ce qui signifie que le modèle commercial utilisera relativement plus d'espace pour stocker des tables de dimension et que plus d'espace signifie des enregistrements plus redondants, ce qui entraînerait une incohérence. Le schéma Snowflake, en revanche, minimise la redondance des données car les tables de dimensions sont normalisées, ce qui représente des enregistrements beaucoup moins redondants. La hiérarchie de l'entreprise et ses dimensions sont préservées grâce à l'intégrité référentielle, ce qui signifie que les relations peuvent être mises à jour indépendamment dans des entrepôts de données..
Le schéma en étoile comporte moins de jointures entre la table de dimension et la table de faits que le schéma en flocon de neige qui comporte plusieurs jointures, ce qui représente une complexité moindre des requêtes. Les dimensions d'un schéma en étoile étant liées via une table de faits centrale, les chemins de jointure sont clairs, ce qui signifie des temps de réponse aux requêtes rapides et des temps de réponse rapides, de meilleures performances. Le schéma Snowflake a un nombre plus élevé de jointures, ce qui allonge le temps de réponse des requêtes, ce qui se traduit par des requêtes plus complexes qui compromettent en fin de compte les performances..
Les deux sont les modèles architecturaux les plus courants et largement adoptés utilisés pour développer des entrepôts de bases de données et des data marts. Cependant, chaque modèle économique a sa juste part d'avantages et d'inconvénients. Le schéma en étoile est le modèle multidimensionnel le plus simple utilisé pour organiser les données en faits et en dimensions, mais il est également idéal pour développer des datamarts qui impliquent des relations moins complexes. Le schéma Snowflake est une représentation logique des tables d'une base de données multidimensionnelle dans laquelle les dimensions sont stockées dans des tables de sous-dimensions. La principale différence entre les deux est la normalisation. Les tables de dimension d'un schéma flocon de neige sont complètement normalisées en plusieurs tables de recherche, alors que dans un schéma en étoile, les tables de dimension sont dénormalisées dans une table de faits centrale..