schéma en étoile

Un schéma en étoile est une base de données conçue pour des applications analytiques telles que les entrepôts de données et les marts de données dimensionnels. Le schéma comprend une ou plusieurs tables de faits contenant des données mesurables liées à plusieurs tables de dimensions contenant des données descriptives.
Pourquoi le design du schéma en étoile est-il important ?
Les applications de bases de données d'aide à la support nécessitent une conception flexible qui prenne en charge les requêtes les plus courantes. Les schémas normalisés traditionnels nécessitent davantage de jointures de tables, qui utilisent plus de ressources et sont plus lentes. En stockant tous les faits mesurables concernant une entité dans une seule table, la plupart des attributs requis par une requête analytique peuvent provenir d'une seule table avec des jointures optionnelles à des tables dimensionnelles. L'efficacité est accrue par l'application de prédicats de filtrage sur la table des faits, de sorte que seul un sous-ensemble de données est impliqué dans les jointures, ce qui consomme moins de ressources de processeur et de mémoire.
Si l'entreprise utilise des cubes OLAP (Online analytics processing), le schéma en étoile s'applique efficacement aux requêtes qui alimentent le cube.
Les origines du schéma en étoile
Les premiers entrepôts de données étaient simplement des copies de schémas de bases de données transactionnelles avec des index supplémentaires pour support requêtes analytiques. Dans les années 1990, des architectes d'entrepôts de données tels que Ralph Kimball ont développé l'idée de schémas dimensionnels pour simplifier les requêtes analytiques.
schéma en étoile étoile Exemple
En tant que détaillant, vous souhaiteriez savoir quels produits se vendent, qui les achète et quand. Pour répondre à ces questions, il est nécessaire de disposer d'une table de faits liée aux dimensions des produits, des commandes et des clients. Les paragraphes suivants décrivent certains attributs typiques de ces tables :
- FACT Tabe :
- Product ID - liens vers le tableau Product Dimension
- ID de l'ordre - liens vers le tableau des dimensions
- ID client - liens vers le tableau des clients
- Ventes totales - Mesure
- Unités vendues - Mesure
- DIMENSION Les commandes de tableaux contiennent :
- ID du produit
- Détails de la commande
- DIMENSION Le tableau Clients contient :
- Identifiant du client
- Coordonnées du client
L'inconvénient du schéma en étoile par rapport à la troisième forme normale
Un schéma de base de données entièrement normalisé comporte moins de champs dupliqués qu'un schéma en étoile , mais tend à nécessiter des requêtes plus complexes en raison du nombre accru de tables. Un schéma de base de données de troisième forme normale nécessite moins d'espace de stockage car il comporte moins de redondances. Le schéma en étoile est souvent plus long à charger lors de l'utilisation des données en raison de la duplication des données et des colonnes d'index supplémentaires requises pour les clés étrangères.
L'avantage d'utiliser une base de données en colonnes Avec un schéma en étoile étoile
Une base de données en colonnes stocke les enregistrements d'une table relationnelle sous forme de colonnes, contrairement à un système de base de données relationnelle traditionnel, qui stocke une ligne de table sous forme d'enregistrement unique. Dans le cas d'un schéma en étoile, la table des faits peut devenir assez vaste à mesure que le nombre et la longueur des attributs de l'entité augmentent. La plupart des requêtes n'ont besoin que d'une poignée de champs d'attributs de la table des faits. L'approche en colonnes n'accède qu'à ces quelques colonnes, contrairement à une base de données basée sur les lignes qui exige que la ligne entière soit chargée en mémoire avant de pouvoir être analysée pour trouver les valeurs de colonne nécessaires. Comme la ligne entière est généralement beaucoup plus longue que les colonnes sélectionnées, l'empreinte mémoire est beaucoup plus importante, ce qui se traduit généralement par des requêtes plus lentes. La base de données en colonnes dispose d'un index de clé primaire intégré, qui correspond généralement à l'ordre de tri de la table, ce qui permet d'économiser davantage de mémoire cache et de mémoire vive. En définitive, la structure de la base de données en colonnes complète parfaitement la conception du schéma en étoile .
Actian Vector offre une flexibilité de schéma
La base de données en colonnes Vector peut être utilisée pour déployer un modèle de schéma en étoile pour les charges de travail de référence telles que le TPC-D. Cependant, ce n'est pas une obligation, car vous pouvez même choisir d'utiliser un schéma dénormalisé avec toutes les colonnes dans une seule table large. La combinaison de l'accès basé sur les colonnes et des index min-max peut rendre les requêtes sur une seule grande table dénormalisée très efficaces pour certaines charges de travail. Vector exécutera toujours les requêtes plus rapidement que les bases de données traditionnelles qui utilisent un magasin de lignes, que vous choisissiez le schéma en étoile, le schéma en flocon de neige, le schéma normalisé ou le schéma dénormalisé.