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 du schéma dimensionnel 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 un schéma en étoile, un schéma en flocon de neige, un schéma normalisé ou un schéma dénormalisé.
FAQ
Un schéma en étoile une architecture de base de données destinée aux applications d'analyse, qui comprend une ou plusieurs tables de faits contenant des données mesurables, entourées de tables de dimensions contenant des données descriptives, ce qui crée une structure en forme d'étoile.
Les principaux composants sont les tables de faits, qui stockent des données chiffrées (telles que le chiffre d'affaires total et le nombre d'unités vendues), et les tables de dimensions, qui fournissent un contexte descriptif (comme les détails des produits, les informations sur les clients et les données relatives aux commandes), reliées entre elles par des clés étrangères.
Un schéma en étoile davantage de champs redondants et nécessite plus d'espace de stockage, mais permet d'effectuer des requêtes plus simples et plus rapides, tandis que la troisième forme normale est entièrement normalisée, avec moins de redondances, mais nécessite des requêtes plus complexes en raison d'un nombre accru de jointures de tables.
schéma en étoile permet schéma en étoile des requêtes analytiques flexibles et efficaces en stockant toutes les données mesurables dans une seule table, ce qui réduit le nombre de jointures de tables nécessaires et consomme moins de ressources processeur de mémoire par rapport aux schémas normalisés traditionnels.
schéma en étoile pour le commerce de détail schéma en étoile inclure une table de faits recensant le chiffre d'affaires total et le nombre d'unités vendues, reliée à des tables de dimensions pour les produits (détails des produits), les commandes (détails des commandes) et les clients (détails des clients), afin d'analyser quels produits se vendent, qui les achète et à quel moment.
L'architecte de data warehouses Ralph Kimball a développé le concept de schéma dimensionnel dans les années 1990 afin de simplifier les requêtes analytiques.
Les bases de données en colonnes complètent les schémas en étoile en n'accédant qu'aux colonnes nécessaires plutôt qu'en chargeant des lignes entières en mémoire, ce qui se traduit par une empreinte mémoire réduite, des requêtes plus rapides et une utilisation plus efficace du cache et de la mémoire vive.
Non, Actian Vector offre une grande souplesse de schéma et peut gérer efficacement schéma en étoile, les schémas en flocon de neige, les schémas normalisés, voire les schémas à table unique entièrement dénormalisés, tout en offrant requête supérieures à celles des bases de données traditionnelles à stockage en lignes.