Les entreprises s'orientent de plus en plus vers entrepôts de données pour exploiter le grand volume de données qu’ils génèrent chaque jour. Entreposage de données est la meilleure solution pour l'analyse. Cependant, les entreprises n’ont pas toujours eu cette possibilité. Tôt bases de données étaient principalement conçus pour le traitement transactionnel et manquaient de l’efficacité nécessaire aux rapports analytiques, ce qui a donné naissance à la modélisation dimensionnelle.
Au début des années 1990, Ralph Kimball, figure marquante du mouvement approches d'entrepôt de données, a développé les principes de la modélisation dimensionnelle. Son livre « The Data Warehouse Toolkit », publié pour la première fois en 1996, décrit les concepts et les meilleures pratiques de la modélisation dimensionnelle. L'approche de Kimball s'est concentrée sur la modélisation des données d'une manière qui s'aligne sur les processus métier et les exigences des utilisateurs, en mettant l'accent sur la simplicité et la facilité d'utilisation.
Dans cet article, nous approfondirons les concepts de dimensions la modélisation des données et comprendre ses processus, ses avantages et ses limites.
Qu'est-ce qu'un modèle de données dimensionnelles ?
Un modèle de données dimensionnel est un moyen d'organiser et de structurer les données dans une base de données ou un entrepôt de données pour permettre aux entreprises d'analyser et d'obtenir plus facilement des informations sur leurs données. Ils sont particulièrement utiles lorsqu’il s’agit de traiter de gros volumes de données et lorsque les utilisateurs doivent explorer les données sous différents angles ou dimensions.
Différentes applications nécessitent différentes techniques de modélisation dimensionnelle. Il existe principalement deux techniques de modélisation : les modèles Entité-Relation Normalisés (modèles ER) et la modélisation dimensionnelle.
Les modèles entité-relation normalisés (modèles ER), quant à eux, sont conçus pour éliminer la redondance des données, effectuer rapidement les opérations d'insertion, de mise à jour et de suppression et obtenir les données dans une base de données.
En revanche, les modèles dimensionnels ou modèles de données dimensionnels Kimball sont des structures dénormalisées conçues pour récupérer des données à partir d'un entrepôt de données. Ils utilisent des tables de faits et de dimensions pour conserver un enregistrement des données historiques dans les entrepôts de données. De plus, ils sont optimisés pour effectuer les Choisir et sont utilisés dans le cadre de conception de base pour construire des entrepôts de données hautement optimisés et fonctionnels.
Éléments impliqués dans la modélisation dimensionnelle
Tables de faits ou mesures commerciales
Les tables de faits stockent les informations numériques sur les mesures commerciales et les clés étrangères des tables dimensionnelles. Les faits commerciaux peuvent être additifs, semi-additifs ou non additifs. La table 1 explique les trois types de tables de faits.
Type de faits | Description |
Faits Additifs | Mesures métier pouvant être agrégées sur toutes les dimensions |
Faits semi-additifs | Mesures métier pouvant être agrégées sur certaines dimensions et non sur d'autres (généralement les dimensions de date et d'heure) |
Faits non additifs | Mesures métier qui ne peuvent pas être agrégées dans n'importe quelle dimension |
Table 1: Types de faits dans une table de faits
Types de faits expliqués avec un modèle de données dimensionnel
Un magasin de vêtements gère les données suivantes dans les lignes de table de faits pour une transaction de vente :
Date | Emplacement | Type de produit | Quantité | Prix unitaire | Montant des ventes | Inventaire | La taxe de vente |
6/3/2018 | CA | Nylon | 5 | 100 | 500 | 30 | 7.75% |
6/3/2018 | CA | Polyester | 7 | 250 | 1750 | 50 | 7.75% |
6/3/2018 | PA | Nylon | 6 | 100 | 600 | 65 | 6.00% |
6/3/2018 | PA | Polyester | 3 | 250 | 750 | 25 | 6.00% |
6/4/2018 | CA | Nylon | 7 | 100 | 700 | 36 | 7.75% |
6/4/2018 | CA | Polyester | 6 | 250 | 1500 | 17 | 7.75% |
/ 4 / 2018 | PA | Nylon | 9 | 100 | 900 | 14 | 6.00% |
6/4/2018 | PA | Polyester | 10 | 250 | 2500 | 20 | 6.00% |
Table 2: Table transactionnelle maintenue par un magasin de vêtements
Les colonnes contenant des informations numériques sur le processus métier représentent nos faits commerciaux. Dans cet exemple, Quantité, Prix unitaire, Montant des ventes, Inventaire et La taxe de vente sont des faits. Et le reste des entités (Date, Boutique et Type de produit) sont des dimensions.
Montant des ventes peuvent être ajoutés dans toutes les dimensions. C'est donc un fait additif. De plus, en ajoutant Inventaire informations à travers le Boutique dimension fournit des informations commerciales utiles. Cependant, étant donné qu'il ne s'agit que d'un aperçu du nombre de biens à un certain point, l'additionner à travers le Date dimension ne donne pas d'informations commerciales utiles. Depuis Inventaire est additif sur certaines dimensions et non additif sur d’autres, c’est un fait semi-additif. Considérons maintenant La taxe de vente. Ajouter La taxe de vente à travers n'importe quelle dimension posera des problèmes pendant le traitement analytique. La taxe de vente est donc un fait non additif.
Tables de dimensions
Les tables de dimension stockent des informations descriptives sur les faits métier afin de faciliter la compréhension et l'analyse des données. Dans l'exemple présenté dans le tableau 2, Date, Emplacement et Type de produit sont des entités de dimension, donnant plus d'informations sur les faits métier. Le montant total des ventes est une mesure importante à enregistrer, mais sans les dimensions, une entreprise ne peut pas évaluer quel emplacement de magasin ou quel type de produit génère le plus de ventes.
Figure 1: schéma en étoile avec tables de faits et de dimensions
Clé primaire
La clé primaire est une colonne dans les tables de dimension qui identifie des enregistrements uniques. La clé de substitution sera la clé primaire pour les dimensions qui changent lentement.
Clé étrangère
Les clés étrangères joignent deux tables (généralement des tables de faits et de dimension). La clé primaire dans une table de dimension est une clé étrangère dans la table de faits associée et est utilisée pour référencer cette dimension particulière.
Exemple de modélisation de données dimensionnelles
Prenons un exemple concret de modélisation dimensionnelle pour un commerce de détail. Imaginez une chaîne de magasins qui souhaite analyser ses données de ventes pour obtenir un aperçu de ses performances. Dans ce scénario, un modèle de données dimensionnelles pourrait être appliqué comme suit :
- Les faits: Les principaux faits dans ce scénario seraient les transactions de vente. Ces faits incluraient des données telles que :
- Chiffre d'affaires
- Quantité de produits vendus
- Remises appliquées
- Marges bénéficiaires
- Dimensions: Diverses dimensions fourniraient un contexte aux données de ventes :
- Dimension temporelle: Cette dimension peut inclure des attributs tels que l'année, le trimestre, le mois, le jour et même l'heure de la journée. Par exemple, cela pourrait aider à répondre à des questions telles que « Quelles ont été nos ventes pour chaque trimestre de l'année dernière ? »
- Dimensions du produit: Il pourrait décrire les produits vendus dans les magasins. Il peut inclure des attributs tels que la catégorie de produit, la marque et le nom du produit. Par exemple, cela pourrait aider à répondre à des questions telles que « Quelle catégorie de produits a généré le plus de revenus ? »
- Dimension magasin: Celui-ci peut contenir des informations sur les emplacements individuels des magasins, telles que le nom du magasin, la ville, l'état et le gérant du magasin. Il pourrait répondre à des questions telles que « Quel magasin a enregistré les ventes les plus élevées le mois dernier ? »
- Dimension client: Cela pourrait fournir des informations sur les données démographiques des clients, telles que l'âge, le sexe et l'emplacement. Cela pourrait aider à répondre à des questions telles que « Quel est le montant moyen des achats par segment de clientèle ? »
- Relations faits-dimensions: La table de faits, contenant les transactions de vente, aurait des clés étrangères la reliant aux tables de dimensions. Par exemple, chaque enregistrement de transaction de vente peut comporter des clés étrangères pointant vers l'heure, le produit, le magasin et le client correspondants dans leurs tables de dimensions respectives.
- Les hiérarchies: Les hiérarchies au sein des dimensions aideraient les utilisateurs à naviguer et à analyser les données à différents niveaux de granularité. Par exemple, la dimension temporelle peut avoir une hiérarchie qui va d'une année à un trimestre, puis d'un mois à un jour.
- Les mesures: Les mesures seraient calculées à partir des faits de ventes pour fournir des informations précieuses. Par exemple:
- Montant total des ventes
- Pourcentage de remise moyen
- Pourcentage de marge bénéficiaire
Avec ce modèle de données dimensionnelles en place, le commerce de détail pourrait l'utiliser pour répondre à un large éventail de questions, telles que :
- « Quelles ont été nos ventes totales pour chaque catégorie de produits au cours du dernier trimestre ? »
- « Quel magasin a enregistré la plus forte croissance des ventes par rapport à la même période de l'année dernière ? »
- « Quelle est la marge bénéficiaire moyenne des produits dans chaque catégorie de produits ? »
Conception d'un modèle de données dimensionnel
Pour comprendre le processus de concevoir des modèles dimensionnels, prenons l'exemple d'une ligne de vêtements qui vend deux types de coupe-vent - Nylon et Polyester dans ses deux magasins en Californie et en Pennsylvanie. Les exemples de données pour l'exemple sont présentés dans le tableau 2.
Étape 1: Identifier les processus métier
Avant de modéliser les données, vous devez trouver les types de modélisation dimensionnelle adaptés à votre modèle de données. Le processus de modélisation dimensionnelle (ou toute modélisation de données) commence par l'identification du processus métier que vous souhaitez suivre. Dans ce cas, nous souhaitons suivre les ventes des deux types de coupe-vent.
Étape 2 : Identifiez les faits et les dimensions dans votre modèle de données dimensionnel
Les informations contenues dans un modèle dimensionnel sont classées en deux types de tableaux : Les faits et le Dimensions. L'étape suivante consiste à identifier les faits commerciaux que vous souhaitez mesurer et leurs dimensions associées. Dans notre exemple, la vente coupe-vent est le fait que nous voulons mesurer. La date, l'emplacement du magasin (Californie et Pennsylvanie) et le type de produit (coupe-vent en nylon et coupe-vent en polyester) sont les dimensions qui nous donnent un aperçu plus approfondi du processus de vente.
Étape 3: Identifier les attributs pour les dimensions
Une fois que vous avez identifié les dimensions et les faits de votre processus métier, l'étape suivante consiste à identifier les attributs et à créer une table dimensionnelle distincte pour chaque dimension. Il existe différents types de tables dimensionnelles pour chaque type de données. Chaque enregistrement de la table de dimension doit avoir une clé unique. Cette clé sera utilisée pour identifier les enregistrements dans la table de dimension et comme clé étrangère dans la table de faits pour référencer la dimension particulière et la joindre à la table de faits. Les tableaux 3 à 5 montrent les différents types de dimensions dans un entrepôt de données dans notre exemple de ligne de vêtements.
Date Dimension |
Date clé | Date | Jour |
10201 | 6/3/2018 | Dimanche |
10202 | 6/4/2018 | lundi |
Table 3: Table de dimension pour la date
Dimension magasin |
Clé de magasin | Nom de l'agence | Ville | Région |
151 | AngAngie'sparel | Los Angeles | California |
152 | AngAngie'sparel | Pittsburgh | Pennsylvanie |
Table 4: Table de dimension pour Store
Dimensions du produit |
Code du produit | Collection | Matières | Couleur |
131620 | Coupe-vent - Collection d'automne | Nylon | Orange |
131571 | Coupe-vent - Collection d'automne | Polyester | Noir |
Table 5: Table de dimension pour le produit
Étape 4: définition de la granularité pour les faits commerciaux
La granularité fait référence au niveau d'informations stockées dans n'importe quelle table. Par exemple, dans notre exemple, le montant des ventes est enregistré quotidiennement ; par conséquent, la granularité, dans ce cas, est quotidienne. Les tables de faits d'un modèle dimensionnel doivent être cohérentes avec la granularité prédéfinie.
Étape 5: Stockage des informations historiques (dimensions changeant lentement)
Une caractéristique importante des modèles dimensionnels est que les attributs dimensionnels peuvent être facilement modifiés sans modifier les informations de transaction complètes. Par exemple, la ligne de vêtements décide de continuer le coupe-vent en nylon de la collection d’automne dans la collection du printemps et met à jour le nom dans le Collection attribut. Faire la mise à jour est facile dans le tableau dimensionnel, mais nous perdrons nos données précédentes avec la mise à jour. Si l'objectif de votre modélisation de données et de votre entrepôt de données est de conserver et de stocker l'historique, cela peut poser problème. Les dimensions qui changent lentement au fil du temps sont appelées Dimensions à évolution lente. De plus, la table de dimension temporelle dans un entrepôt de données est générée automatiquement et capture l'heure à laquelle les différentes transactions se produisent. Vous pouvez conserver et stocker des données historiques en suivant les dimensions qui changent lentement.
Apprenez-en davantage sur la conception d'une modélisation dimensionnelle automatisée avec notre guide étape par étape
Qu'est-ce que le modèle de données multidimensionnel dans Data Warehouse ?
Un modèle de données multidimensionnel est une implémentation spécifique de modélisation de données dimensionnelles adaptée à des besoins d'analyse et de reporting plus avancés. Il étend les concepts de modélisation de données dimensionnelles régulières pour fournir des fonctionnalités supplémentaires. Voici quelques facteurs importants à noter concernant le modèle de données dimensionnelles :
- Il ajoute de la complexité en introduisant le concept de cubes de données. Les cubes de données stockent des données pré-agrégées, ce qui peut conduire à une structure plus complexe mais plus efficace pour l'analyse multidimensionnelle.
- Il reste convivial mais offre encore plus de fonctionnalités permettant aux utilisateurs d'interagir avec les données à l'aide des outils OLAP. Les utilisateurs peuvent pivoter, explorer et analyser simultanément les données de plusieurs dimensions.
- Cela implique souvent des tables de dimensions dénormalisées et des données pré-agrégées dans des cubes de données. Même si cela peut augmenter les besoins de stockage pour les données agrégées, cela peut réduire la redondance dans les tables de dimensions, conduisant ainsi à un stockage plus efficace.
- Il est idéal pour les analyses avancées, les rapports complexes et les scénarios où les performances sont critiques, comme les entrepôts de données à grande échelle avec de nombreuses données historiques.
Avantages de la modélisation dimensionnelle
La modélisation dimensionnelle reste la technique de modélisation de données la plus utilisée pour concevoir des entrepôts de données d'entreprise en raison des avantages qu'elle procure. Ceux-ci inclus:
Optimisé pour les performances des requêtes: Les modèles dimensionnels sont spécifiquement conçus pour les requêtes et la création de rapports, ce qui permet d'accélérer les performances des requêtes, en particulier pour les requêtes analytiques complexes.
Récupération plus rapide des données: La modélisation dimensionnelle des données fusionne les tables dans le modèle lui-même, ce qui permet aux utilisateurs de récupérer plus rapidement des données à partir de différentes sources de données en exécutant des requêtes de jointure. Le schéma dénormalisé d'un entrepôt de données de modèle dimensionnel, au lieu du schéma normalisé dans le schéma en flocon de neige, est optimisé pour exécuter des requêtes ad hoc. Par conséquent, il complète grandement les objectifs de Business Intelligence (BI) d'une organisation.
Flflexible au changement: Un cadre de modélisation dimensionnelle rend le processus d'entreposage de données extensible. La conception peut être facilement modifiée pour intégrer de nouvelles exigences commerciales ou ajuster le référentiel central. De nouvelles entités peuvent être ajoutées au modèle ou la disposition des entités existantes peut être modifiée pour refléter les processus métier modifiés.
Analyse multidimensionnelle: Les modèles dimensionnels prennent en charge l'analyse multidimensionnelle, afin que les utilisateurs puissent explorer simultanément des données provenant de différentes dimensions et hiérarchies.
Redondance des données réduite : Les modèles dimensionnels impliquent souvent une dénormalisation, ce qui réduit la redondance des données et améliore par conséquent les performances des requêtes par rapport aux modèles hautement normalisés.
Limites de la modélisation dimensionnelle
Bien que la modélisation dimensionnelle soit une technique puissante pour les besoins d’analyse et de reporting, elle présente également certaines limites et il existe des scénarios dans lesquels elle n’est peut-être pas l’approche la plus adaptée. Il est donc essentiel d’évaluer si cela correspond aux caractéristiques et aux exigences de vos données et de vos cas d’utilisation. Voici quelques limites de la modélisation dimensionnelle et situations dans lesquelles vous pourriez envisager des techniques de modélisation alternatives :
- Relations complexes: La modélisation dimensionnelle suppose que les relations entre les dimensions et les faits sont relativement simples. Si vos données impliquent des relations très complexes qui ne peuvent pas être facilement représentées dans un schéma en étoile ou en flocon de neige, la modélisation dimensionnelle n'est peut-être pas le meilleur choix.
- Modifications fréquentes des données: Les modèles dimensionnels sont conçus pour l'analyse historique et peuvent ne pas gérer correctement les données qui changent fréquemment ou nécessitent des mises à jour en temps réel. Dans de tels cas, un modèle transactionnel ou normalisé peut être plus approprié.
- Données rares: Lorsque vous traitez des données pour lesquelles de nombreuses combinaisons de dimensions n'ont aucun fait associé (données éparses), les modèles dimensionnels peuvent conduire à des performances de stockage et de requête inefficaces.
- Données volumineuses et non structurées: Si vos données incluent de grandes quantités de données non structurées ou semi-structurées (par exemple, des documents texte, des flux de réseaux sociaux), la modélisation dimensionnelle seule peut ne pas suffire. Vous devrez peut-être incorporer des techniques telles que des bases de données NoSQL ou des bases de données orientées document.
Automatisation - Un changeur de jeu pour la modélisation dimensionnelle
La conception de modèles dimensionnels est une étape essentielle dans la construction du cadre d’un entrepôt de données d'entreprise. Le processus peut être rationalisé à l’aide d’un outil robuste d’automatisation de l’entrepôt de données tel que Astera Constructeur d'entrepôt de données.
Avec Astera Constructeur DW, vous pouvez créer rapidement des modèles dimensionnels dans un environnement de développement intégré sans code visuel. Les entités peuvent être dénormalisées par simple glisser-déposer et fusionner. Les rôles d'entité (faits et dimensions) peuvent être attribués en bloc, ce qui vous fait gagner un temps précieux lorsque vous travaillez avec des centaines d'entités. De plus, le produit vous permet de gérer des dimensions à évolution lente grâce à la prise en charge intégrée des types SCD 1, 2, 3 et 6.
Astera DW Builder est une plate-forme d'automatisation d'entrepôt de données de bout en bout avec des capacités de modélisation de données dimensionnelles intégrées, la prise en charge d'une large gamme de bases de données et d'applications CRM, des fonctionnalités de mappage et de chargement de données automatisés, et une intégration native avec des plates-formes d'informatique décisionnelle telles que Tableau et Power BI.
See Astera Démo de DW Builder ou inscrivez-vous à un essai gratuit pour découvrir de première main la puissance de l'automatisation de l'entrepôt de données.
Auteurs:
- Iqbal Ahmed