Comprendre les principes de base d’un entrepôt de données
Le processus de création d’un entrepôt de données moderne se compose généralement des tâches suivantes :
- Ingestion des données : déplacement des données de systèmes sources vers un entrepôt de données.
- Stockage des données : stockage des données dans un format optimisé pour l’analytique.
- Traitement des données : transformation des données dans un format consommable par les outils analytiques.
- Analyse et remise des données : analyse des données pour obtenir des insights et remise de ces insights à l’entreprise.
Microsoft Fabric permet aux ingénieurs et aux analystes de données d’ingérer, de stocker, de transformer et de visualiser des données dans un seul outil en combinant expérience traditionnelle et « low-code ».
Comprendre l’expérience d’entrepôt de données de Fabric
L’entrepôt de données de Fabric est un entrepôt de données relationnelle qui prend en charge les fonctionnalités T-SQL transactionnelles complètes que vous attendez d’un entrepôt de données d’entreprise. Complètement managé, scalable et hautement disponible, il peut être utilisé pour stocker et interroger des données dans le lakehouse. L’entrepôt de données vous permet de contrôler entièrement la création de tables ainsi que le chargement, la transformation et l’interrogation des données à l’aide du portail Fabric ou de commandes T-SQL. Vous pouvez utiliser soit SQL pour interroger et analyser les données, soit Spark pour traiter les données et créer des modèles Machine Learning.
Les entrepôts de données dans Fabric facilitent la collaboration entre les ingénieurs données et les analystes de données, qui partagent alors la même expérience. Les ingénieurs données créent, au-dessus des données dans le lakehouse, une couche relationnelle dans laquelle les analystes peuvent utiliser T-SQL et Power BI pour explorer les données.
Concevoir un entrepôt de données
Comme toutes les bases de données relationnelles, l’entrepôt de données de Fabric contient des tables pour stocker les données à des fins d’analytique. Le plus souvent, ces tables sont organisées dans un schéma optimisé pour la modélisation multidimensionnelle. Dans cette approche, les données numériques liées aux événements (par exemple, les commandes des clients) sont regroupées selon différents attributs (date, client, magasin, etc.). Par exemple, vous pouvez analyser le montant total payé pour les commandes passées à une date spécifique ou dans un magasin particulier.
Tables d’un entrepôt de données
Les tables d’un entrepôt de données sont généralement organisées de manière à analyser efficacement de grandes quantités de données. Cette organisation, souvent appelée « modélisation dimensionnelle », implique de structurer les tables en tables de faits et tables de dimension.
Les tables de faits contiennent les données numériques que vous souhaitez analyser. Les tables de faits comprennent généralement un grand nombre de lignes et constituent la principale source de données pour l’analyse. Par exemple, une table de faits peut contenir le montant total payé pour des commandes passées à une date spécifique ou dans un magasin particulier.
Les tables de dimension contiennent des informations descriptives sur les données des tables de faits. Les tables de dimension comprennent généralement un petit nombre de lignes et fournissent le contexte des données des tables de faits. Par exemple, une table de dimension peut contenir des informations sur les clients qui ont passé des commandes.
En plus des colonnes d’attribut, une table de dimension contient une colonne clé unique qui identifie de manière unique chaque ligne de la table. En fait, il est courant pour une table de dimension d’inclure deux colonnes clés :
- Une clé de substitution est un identificateur unique pour chaque ligne de la table de dimension. Il s’agit souvent d’une valeur entière générée automatiquement par le système de gestion de base de données quand une nouvelle ligne est insérée dans la table.
- Une autre clé est souvent une clé naturelle ou métier qui identifie une instance spécifique d’une entité dans le système source transactionnel, comme un code produit ou un ID client.
Dans un entrepôt de données, les clés de substitution et les clés secondaires ont des finalités différentes. Vous avez donc besoin des deux. Les clés de substitution sont spécifiques à l’entrepôt de données et contribuent au maintien de la cohérence et de l’exactitude des données. Quant aux clés alternatives, elles sont spécifiques au système source et contribuent au maintien de la traçabilité entre l’entrepôt de données et le système source.
Tables de dimension de type spécial
Les dimensions de type spécial offrent un contexte supplémentaire et permettent une analyse des données plus complète.
Les dimensions de temps fournissent des informations sur la période pendant laquelle un événement s’est produit. Cette table permet aux analystes de données d’agréger des données sur des intervalles temporels. Par exemple, une dimension de temps peut inclure les colonnes « année », « trimestre », « mois » et « jour » pour indiquer quand une commande a été passée.
Les dimensions à variation lente sont des tables de dimension qui suivent les modifications apportées aux attributs de dimension au fil du temps, telles que les modifications apportées à l’adresse d’un client ou au prix d’un produit. Elles occupent une place importante dans un entrepôt de données, car elles permettent aux utilisateurs d’analyser et de comprendre les modifications apportées aux données dans le temps. Les dimensions à variation lente garantissent que les données sont à jour et exactes, ce qui est primordial pour prendre de bonnes décisions commerciales.
Conceptions de schémas d’entrepôts de données
Dans la plupart des bases de données transactionnelles utilisées dans les applications métier, les données sont normalisées pour réduire la duplication. Toutefois, dans un entrepôt de données, les données de dimension sont généralement dénormalisées pour réduire le nombre de jointures requises pour interroger les données.
Souvent, un entrepôt de données est organisé en tant que schéma en étoile, dans lequel une table de faits est directement liée aux tables de dimension, comme illustré dans cet exemple :
Vous pouvez utiliser les attributs d’un élément pour regrouper des nombres dans la table de faits à différents niveaux. Par exemple, vous pouvez trouver le chiffre d’affaires total d’une région entière ou d’un seul client. Les informations de chaque niveau peuvent être stockées dans la même table de dimension.
Conseil
Voir Qu’est-ce qu’un schéma en étoile ? pour plus d’informations sur la conception de schémas en étoile pour Fabric.
S’il existe un grand nombre de niveaux ou si certaines informations sont partagées par des éléments différents, il peut être judicieux d’utiliser un schéma flocon à la place. Voici un exemple :
Dans ce cas, la table DimProduct a été divisée (normalisée) pour créer des tables de dimension distinctes pour les catégories de produits et les fournisseurs.
- Chaque ligne de la table DimProduct contient des valeurs clés pour les lignes correspondantes dans les tables DimCategory et DimSupplier.
Une table DimGeography a été ajoutée contenant des informations sur l’emplacement des clients et des magasins.
- Chaque ligne des tables DimCustomer et DimStore contient une valeur clé pour la ligne correspondante dans la table DimGeography .