Qu'est-ce que le schéma en étoile dans la modélisation d'un entrepôt de données ?

⚡ Résumé intelligent

Le schéma en étoile dans la modélisation d'entrepôts de données place une table de faits centrale au cœur des tables de dimensions environnantes, créant une conception dénormalisée en forme d'étoile qui simplifie les requêtes analytiques, accélère la production de rapports et alimente les cubes OLAP sur les plateformes de veille stratégique.

  • ???? Structure de base : Une table de faits centrale est directement liée à des tables de dimensions dénormalisées, formant ainsi la structure en étoile qui nomme le schéma.
  • (I.e. Tableaux de faits : Les tables de faits stockent des mesures telles que les unités vendues et le chiffre d'affaires, ainsi que des clés étrangères qui se connectent à toutes les dimensions environnantes.
  • 🇧🇷 Tableaux de dimensions : Les tables de dimensions contiennent des attributs descriptifs tels que le produit, le distributeur, la succursale et la date, qui permettent aux analystes de segmenter et de filtrer les données.
  • | Performances des requêtes : Les dimensions dénormalisées impliquent moins de jointures ; un schéma en étoile permet donc d’obtenir des requêtes SQL simples et des rapports rapides sur de grands ensembles de données.
  • ❄️ Étoile contre flocon de neige : Un schéma en étoile conserve chaque dimension dans une seule table, tandis qu'un schéma en flocon de neige normalise les dimensions en tables de sous-dimensions liées.
  • ️ Étapes de conception : La construction d'un schéma en étoile suit le flux de Kimball : choisir le processus métier, définir la granularité, choisir les dimensions, puis définir les faits.
  • 🧊 OLAP et BI : Les schémas en étoile alimentent les cubes OLAP et sont largement pris en charge par les outils de BI, bien qu'une dénormalisation importante affaiblisse l'intégrité des données.

Schéma en étoile dans la modélisation d'entrepôts de données avec une table de faits centrale et des tables de dimensions périphériques

Qu'est-ce qu'un schéma en étoile ?

A schéma en étoile Dans un entrepôt de données, une structure de modélisation en étoile consiste à connecter une table de faits centrale à plusieurs tables de dimensions associées. On l'appelle schéma en étoile car sa disposition ressemble à une étoile, la table de faits étant au centre et les tables de dimensions rayonnant vers l'extérieur comme des points.

Le schéma en étoile est le type de schéma d'entrepôt de données le plus simple ; il est également connu sous le nom de schéma de jointure en étoile. Grâce à la dénormalisation de ses tables de dimensions, ce modèle est optimisé pour l'interrogation de très grands ensembles de données, ce qui en fait un choix courant pour… modélisation dimensionnelle et des rapports.

Qu'est-ce qu'un schéma multidimensionnel ?

A schéma multidimensionnel est conçu spécifiquement pour modéliser les systèmes d'entrepôts de données. Ces schémas répondent aux besoins uniques des très grandes bases de données construites à des fins analytiques. OLAP plutôt que pour le traitement des transactions de routine.

Types de schémas d'entrepôt de données : Il existe trois principaux types de schémas multidimensionnels, et chacun offre ses propres avantages.

  • Schéma en étoile – une table de faits centrale directement liée à des tables de dimensions dénormalisées.
  • Schéma en flocon – une extension du schéma en étoile dans laquelle les dimensions sont normalisées en tables de sous-dimensions supplémentaires.
  • Schéma de la galaxie – également appelée constellation de faits, elle utilise plusieurs tables de faits qui partagent des tables de dimensions communes.

Étant donné que le schéma en flocon de neige s'appuie directement sur le schéma en étoile, il est utile de comparer les deux modèles avant d'étudier un exemple détaillé de schéma en étoile.

Schéma en étoile vs schéma en flocon de neige

Le schéma en étoile et le schéma de flocon de neige Les deux schémas organisent les données autour de tables de faits et de dimensions, mais diffèrent dans la manière dont les dimensions sont stockées. Un schéma en étoile conserve chaque dimension dans une seule table dénormalisée, tandis qu'un schéma en flocon de neige normalise ces dimensions dans plusieurs tables liées.

  • Structure: Le schéma en étoile est plat et simple ; le schéma en flocon de neige divise les dimensions en sous-dimensions.
  • Vitesse de requête : Les schémas en étoile nécessitent moins de jointures, les requêtes s'exécutent donc généralement plus rapidement et le code SQL reste plus simple.
  • Stockage: Les schémas en flocon de neige éliminent la redondance, ils utilisent donc moins d'espace mais augmentent la complexité de la conception.
  • Intégrité des données: Les dimensions normalisées des flocons de neige garantissent mieux l'intégrité, tandis que les dimensions dénormalisées des étoiles favorisent les performances.
  • Facilité d'utilisation: Un schéma en étoile est plus simple à comprendre pour les analystes et plus rapide à maintenir, tandis qu'un schéma en flocon de neige exige une conception plus soignée.

En pratique, les équipes optent souvent pour un schéma en étoile pour les entrepôts de données et les tableaux de bord qui nécessitent des rapports rapides et simples, et pour un schéma en flocon de neige lorsque les économies de stockage et une cohérence stricte sont plus importantes.

Exemple de schéma en étoile

Dans l'exemple de schéma en étoile suivant, la table de faits se trouve au centre et contient les clés de chaque table de dimension, telles que Dealer_ID, Model_ID, Date_ID, Product_ID et Branch_ID, ainsi que des attributs mesurables comme les unités vendues et le chiffre d'affaires.

Exemple de modélisation de données en étoile avec une table de faits de ventes centrale jointe aux tables de dimensions produit, distributeur, agence, date et modèle
Exemple de diagramme de schéma en étoile

Chaque table de dimension environnante ajoute un contexte descriptif à ces mesures, de sorte qu'une seule requête peut regrouper ou filtrer les données de vente par concessionnaire, modèle, date, produit ou succursale sans avoir à joindre d'autres tables.

Tableaux de faits

Dans un schéma en étoile, une table de faits contient des faits et est liée aux dimensions. Une table de faits comporte deux types de colonnes :

  • Une colonne qui stocke les faits, ou les mesures.
  • Clés étrangères qui font le lien avec chaque table de dimension.

En général, la clé primaire d'une table de faits est une clé composite constituée de toutes les clés étrangères qui composent la table.

Les tables de faits peuvent contenir des faits détaillés ou des faits agrégés. Les tables de faits incluant des faits agrégés sont souvent appelées tables de synthèse et contiennent généralement des faits déjà agrégés à un certain niveau.

Tables de dimensions

Une dimension est une structure qui catégorise les données de manière hiérarchique. Une dimension sans hiérarchie ni niveaux est appelée dimension plate ou liste. La clé primaire de chaque table de dimension fait partie de la clé primaire composite de la table de faits.

Un attribut de dimension est un attribut textuel descriptif qui permet de décrire une valeur dimensionnelle, comme le nom d'un produit ou d'une ville. Les tables de dimensions stockant ce contexte descriptif plutôt que des événements transactionnels, les tables de faits sont généralement beaucoup plus volumineuses que les tables de dimensions.

Comment concevoir un schéma en étoile

La conception d'un schéma en étoile suit l'approche de modélisation dimensionnelle popularisée par Ralph Kimball. L'objectif est d'organiser les indicateurs métier autour de dimensions claires et réutilisables, afin que le modèle final soit facile à interroger et permette de générer rapidement des rapports. Les cinq étapes ci-dessous décrivent le processus suivi par la plupart des projets de modélisation dimensionnelle, partant de la problématique métier de haut niveau pour aboutir aux tables de faits et de dimensions.

  1. Identifier le processus métier : Choisissez l'activité que vous souhaitez analyser, par exemple les ventes, les expéditionspingou l'inventaire. Cette décision définit ce que la table de faits mesurera.
  2. Déclarez le grain : Déterminez le niveau de détail que représente chaque ligne de données, par exemple une ligne par article, par transaction ou par jour. Une granularité claire garantit la cohérence du modèle.
  3. Identifier les dimensions : Indiquez le contexte descriptif nécessaire pour segmenter les données, comme le produit, le client, le distributeur, la succursale et la date. Chaque élément devient une table de dimension d'attributs.
  4. Identifiez les faits : Déterminez les mesures numériques que l'entreprise souhaite obtenir. track, comme les unités vendues, les revenus ou les coûts, et placez-les dans la table de faits centrale.
  5. Construisez l'étoile : Reliez la table de faits à chaque dimension via des clés étrangères, keeping les dimensions sont dénormalisées de sorte que le diagramme forme un tableau de faits central unique entouré de ses dimensions.

Une fois le schéma en étoile créé, ajoutez une clé de substitution à chaque dimension, assurez-vous que chaque table de faits possède une dimension de date associée et vérifiez que tous les faits sont au même niveau de granularité. Il est également recommandé de charger d'abord les données atomiques de plus bas niveau, car les tables de synthèse peuvent toujours être dérivées ultérieurement. Le respect de ces règles permet d'optimiser le schéma pour des performances élevées et une grande simplicité. entrepôt de données les rapports.

Caractéristiques du schéma en étoile

  • Dans un schéma en étoile, chaque dimension est représentée par une seule table de dimensions.
  • Chaque table de dimension contient son propre ensemble d'attributs.
  • La table de dimension est liée à la table de faits à l'aide d'une clé étrangère.
  • Les tables de dimensions ne sont pas liées entre elles.
  • La table de faits contient des clés et des mesures.
  • Le schéma en étoile est facile à comprendre et offre une utilisation optimale du disque.
  • Les tables de dimensions ne sont pas normalisées. Par exemple, dans l'exemple ci-dessus, Country_ID ne possède pas de table de correspondance Country distincte, contrairement à ce qui se fait habituellement. OLTP la conception le ferait.
  • Ce schéma est largement pris en charge par les outils de BI.

Avantages du schéma en étoile

Le schéma en étoile offre plusieurs avantages qui en font un point de départ populaire pour la conception d'entrepôts de données :

  • Les schémas en étoile utilisent une logique de jointure plus simple que les autres schémas lors de la récupération de données provenant de sources transactionnelles hautement normalisées.
  • Le schéma en étoile simplifie la logique courante de reporting d'entreprise, comme le reporting comparatif et le reporting à la date de référence.
  • Les schémas en étoile sont largement utilisés par les systèmes OLAP pour construire efficacement des cubes, et un schéma en étoile peut servir de source sans avoir à concevoir une structure de cube dans la plupart des principaux systèmes OLAP.
  • En permettant un réglage spécifique des performances applicable aux requêtes, le processeur de requêtes peut proposer de meilleurs plans d'exécution.

Inconvénients du schéma en étoile

  • Du fait de la forte dénormalisation du schéma, l'intégrité des données n'est pas strictement assurée.
  • Il manque de flexibilité en termes de besoins analytiques avancés.
  • Les schémas en étoile ne renforcent pas les relations plusieurs-à-plusieurs entre les entités commerciales.

Quand utiliser un schéma en étoile

Un schéma en étoile est le choix idéal lorsque la rapidité et la prévisibilité des requêtes priment sur l'économie d'espace de stockage. Grâce à la dénormalisation de ses tables de dimensions et au faible nombre de jointures, ce modèle convient aux charges de travail analytiques où les utilisateurs métier exécutent régulièrement des rapports, des tableaux de bord et des agrégations similaires sur de grands volumes de données historiques.

Les situations typiques où un schéma en étoile est parfaitement adapté sont les suivantes :

  • Entrepôts de données : Départemental datamarts Les relations simples et bien comprises bénéficient d'une structure lisible.
  • Tableaux de bord de BI : Business Intelligence Les outils s'intègrent parfaitement aux schémas en étoile, ce qui permet de créer rapidement des rapports et des visualisations.
  • cubes OLAP : Les schémas en étoile constituent une source naturelle pour les cubes OLAP, l'agrégation et l'analyse par découpage.

Si la priorité est plutôt donnée à un stockage minimal, à une intégrité stricte des données ou à des hiérarchies complexes et évolutives, un schéma en flocon de neige ou une conception plus normalisée peut s'avérer plus approprié. De nombreuses équipes combinent même les deux, en partant d'un schéma en étoile et en normalisant uniquement les dimensions qui le nécessitent réellement.

FAQ

Une table de faits stocke des événements commerciaux numériques et mesurables, tels que les unités vendues ou le chiffre d'affaires, ainsi que des clés étrangères. Une table de dimensions stocke des attributs descriptifs, comme le produit, la date ou la succursale, qui contextualisent ces faits. Les tables de faits sont généralement beaucoup plus volumineuses que les tables de dimensions.

Un schéma en étoile est dénormalisé. Chaque dimension est stockée dans une seule table, sans sous-tables de consultation, ce qui réduit le nombre de jointures et accélère les requêtes. En contrepartie, on observe une certaine redondance des données et une intégrité des données moins rigoureuse qu'avec un schéma en flocon de neige normalisé.

Un schéma galaxie, également appelé constellation de faits, contient plusieurs tables de faits qui partagent des tables de dimensions communes. Il convient aux entrepôts de données complexes qui track permet de traiter plusieurs processus métier simultanément, mais sa conception et son interrogation sont plus complexes que celles d'un schéma en étoile à fait unique.

Un schéma en étoile classique utilise une table de faits centrale. Lorsqu'un entrepôt de données nécessite plusieurs tables de faits partageant des dimensions, la conception devient un schéma en galaxie ou en constellation de faits. Keeping Une table de faits par étoile simplifie les requêtes et rend le modèle facile à comprendre.

Une clé de substitution est un identifiant généré par le système, généralement un entier, utilisé comme clé primaire d'une table de dimension au lieu d'une clé métier. Elle garantit des jointures rapides, une stabilité même en cas de modification des clés sources et prend en charge tracLes changements historiques du roi dans les dimensions.

Oui. Power BI est optimisé pour les schémas en étoile, de sorte que la modélisation des données sous la forme d'une table de faits entourée de dimensions améliore les performances, simplifie les mesures DAX et rend les relations plus faciles à gérer qu'une conception en flocon de neige ou plate.

Les assistants IA peuvent suggérer des tables de faits et de dimensions à partir d'une description de schéma, recommander un niveau de granularité et signaler les dimensions de date ou les clés de substitution manquantes. Ils accélèrent la modélisation, mais un ingénieur de données doit examiner la conception proposée avant sa mise en production.

Oui. ChatGPT et Copilote GitHub peut rédiger des requêtes CREATE TABLE et JOIN pour les tables de faits et de dimensions à partir d'une brève invite. RevVérifiez les clés générées, les types de données et le niveau de détail avant d'exécuter la requête SQL, car l'IA peut mal interpréter les exigences.

Résumez cet article avec :