Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :✅ Entrepôt dans Microsoft Fabric
Cet article détaille les concepts clés pour la conception de tables dans Microsoft Fabric.
Dans les tables, les données sont logiquement organisées en lignes et en colonnes. Chaque ligne représente un enregistrement unique et chaque colonne représente un champ dans l'enregistrement.
- Dans l’entrepôt, les tables sont des objets de base de données qui contiennent toutes les données transactionnelles.
Déterminer la catégorie des tables
Un schéma en étoile organise les données en tables de faits et tables de dimension. Certaines tables sont utilisées pour l’intégration ou la mise en lots des données avant leur transfert dans une table de faits ou de dimension. Quand vous concevez une table, déterminez si les données de la table sont contenues dans une table de faits, de dimension ou d’intégration. Ceci est important pour choisir une structure appropriées pour la table.
Les tables de faits contiennent des données quantitatives généralement générées dans un système transactionnel, puis chargées dans l’entrepôt de données. Par exemple, une entreprise de vente au détail génère des transactions de ventes chaque jour et charge ensuite ces données dans une table de faits de l’entrepôt de données pour les analyser.
Les tables de dimension contiennent des données d’attribut qui peuvent changer, mais qui changent généralement rarement. Par exemple, le nom et l’adresse d’un client sont stockés dans une table de dimension et sont mis à jour uniquement si le profil du client change. Pour réduire la taille d’une table de faits volumineuse, il est inutile d’indiquer le nom et l’adresse du client dans chaque ligne d’une table de faits. Au lieu de cela, la table de faits et la table de dimension peuvent partager un ID client. Vous pouvez alors créer une requête de jointure entre les deux tables pour associer le profil d’un client et les transactions qui le concernent.
Les tables d’intégration fournissent un emplacement pour l’intégration ou la mise en lots de données. Vous pouvez, par exemple, charger des données dans une table de mise en lots, effectuer des transformations sur ces données, puis insérer les données dans une table de production.
Une table stocke les données dans OneLake dans le cadre de l’entrepôt. La table et les données sont persistantes, qu’une session soit ouverte ou non.
Tables dans l’entrepôt
Pour voir l’organisation des tables, vous pouvez utiliser les préfixes fact
, dim
et int
dans les noms de table. Le tableau suivant présente certains des noms de schéma et de table pour l’exemple d’entrepôt de données WideWorldImportersDW .
WideWorldImportersDW Nom de la table source | Type de la table | Data Warehouse Nom de la table |
---|---|---|
Ville | Dimension | wwi.DimCity |
Commande | Fait | wwi.FactOrder |
- Les noms de tables ne peuvent pas contenir
/
ou\
, ou se terminer par un.
.
Créer une table
Pour l’entrepôt, vous pouvez créer une table à partir d’une nouvelle table vide. Vous pouvez aussi créer une table et la remplir avec les résultats d’une instruction select. Le tableau suivant répertorie les instructions T-SQL disponibles pour la création d’une table.
Instruction T-SQL | Descriptif |
---|---|
CRÉER TABLE | Crée une table vide en définissant toutes les colonnes et options de la table. |
CRÉER TABLE COMME SÉLECTIONNER | Crée une table et la remplit avec les résultats d’une instruction select. Les colonnes et les types de données de la table sont basés sur les résultats de l’instruction select. Pour importer des données, cette instruction peut sélectionner les données dans une table externe. |
Cet exemple crée une table contenant deux colonnes :
CREATE TABLE MyTable (col1 int, col2 int );
Noms de schémas
L’entrepôt prend en charge la création de schémas personnalisés. Comme dans SQL Server, les schémas sont un bon moyen de regrouper des objets utilisés de manière similaire. Le code suivant crée un schéma défini par l’utilisateur appelé wwi
.
- Les noms de schéma sont sensibles à la casse.
- Les noms de schémas ne peuvent pas contenir
/
ou\
, ou se terminer par un.
.
CREATE SCHEMA wwi;
Types de données
Microsoft Fabric prend en charge les types de données T-SQL les plus couramment utilisés.
- Pour plus d’informations sur les types de données, consultez Types de données dans Fabric Data Warehouse.
- Lorsque vous créez une table dans Warehouse, passez en revue la référence des types de données dans CREATE TABLE (Transact-SQL).
- Pour obtenir un guide pour créer une table dans l’entrepôt, consultez Créer des tables.
Classement
Latin1_General_100_BIN2_UTF8
est le classement par défaut pour les tables et les métadonnées.
Vous pouvez créer un entrepôt avec le classement qui ne respecte pas la casse Latin1_General_100_CI_AS_KS_WS_SC_UTF8
. Pour plus d’informations, consultez Comment : Créer un entrepôt avec une collation insensible à la casse (CI)
Les collations supportées dans l’API sont les suivantes :
-
Latin1_General_100_BIN2_UTF8
(valeur par défaut) Latin1_General_100_CI_AS_KS_WS_SC_UTF8
Une fois le classement défini lors de la création de la base de données, tous les objets suivants (tables, colonnes, etc.) héritent de ce classement par défaut.
Statistiques
L’optimiseur de requête utilise des statistiques au niveau des colonnes quand il crée le plan d’exécution d’une requête. Pour améliorer les performances des requêtes, il est important d’avoir des statistiques sur des colonnes individuelles, en particulier les colonnes utilisées dans les jointures de requête. L’entrepôt prend en charge la création automatique de statistiques.
La mise à jour statistique ne se fait pas automatiquement. Mettez à jour les statistiques après l’ajout ou la modification d’un nombre significatif de lignes. Par exemple, effectuez une mise à jour des statistiques après un chargement. Pour plus d’informations, consultez Statistiques dans Fabric Data Warehouse.
Clé primaire, clé étrangère et clé unique
Pour l’entrepôt, les contraintes PRIMARY KEY et UNIQUE ne sont prises en charge que lorsque NONCLUSTERED et NOT ENFORCED sont tous deux utilisés.
FOREIGN KEY n'est pris en charge que lorsque NOT ENFORCED est utilisé.
- Pour la syntaxe, vérifiez ALTER TABLE.
- Pour plus d’informations, consultez clés primaires, clés étrangères et clés uniques.
tables temporaires
Des tables temporaires (#temp) délimitées à la session peuvent être créées dans Fabric Data Warehouse.
Ces tables existent uniquement dans la session dans laquelle elles sont créées et durent pendant la durée de cette session. Ils ne sont pas visibles par d’autres utilisateurs ou sessions et sont automatiquement supprimés du système une fois la session terminée ou la table #temp est supprimée. Ces tables sont accessibles à tous les utilisateurs sans avoir besoin d’une autorisation spécifique au niveau de l’élément.
Deux types de tables #temp peuvent être créés en fonction de cas d’usage spécifiques, non distribués et distribués.
La table #temp non distribuée (mdf-backed) est le type par défaut. La syntaxe de création et d’utilisation de tables #temp non distribuées dans Fabric Data Warehouse est similaire aux tables utilisateur, mais vous devez préfixer le nom de la table temporaire avec
#
.CREATE TABLE #table_name ( Col1 data_type1, Col2 data_type2 );
Les tables temporaires distribuées (Parquet-backed) peuvent être créées avec le
DISTRIBUTION=ROUND_ROBIN
mot clé :CREATE TABLE #table_name ( Col1 data_type1, Col2 data_type2 ) WITH (DISTRIBUTION=ROUND_ROBIN);
Dans le script précédent, data_type1
et data_type2
sont des espaces réservés pour les types de données pris en charge dans Fabric Data Warehouse.
Les tables de #temp distribuées sont recommandées, car elles s’alignent sur les tables utilisateur normales ; ils disposent d’un stockage illimité, de la prise en charge des types de données et des opérations T-SQL. La syntaxe de manipulation et de définition des données est identique aux tables utilisateur dans Fabric Data Warehouse, avec le préfixe #
ajouté au nom de la table.
Aligner les données sources avec l’entrepôt de données
Les tables de l’entrepôt sont remplies avec les données chargées à partir d’une autre source de données. Pour obtenir une charge réussie, le nombre et les types de données des colonnes dans les données sources doivent être alignés avec la définition de table dans l’entrepôt.
Si les données proviennent de plusieurs magasins de données, vous pouvez les porter dans l’entrepôt et les stocker dans une table d’intégration. Une fois que les données se trouvent dans la table d’intégration, vous pouvez utiliser la puissance de l’entrepôt pour implémenter des opérations de transformation. Une fois que les données sont préparées, vous pouvez les insérer dans des tables de production.
Limites
L’entrepôt prend en charge beaucoup des fonctionnalités de table proposées par d’autres bases de données, mais pas toutes.
- Les tables temporaires globales ne sont pas prises en charge.
La liste suivante répertorie certaines fonctionnalités de table qui ne sont actuellement pas prises en charge.
- Nombre maximal de 1 024 colonnes par table
- Colonnes calculées
- Vues indexées
- tables partitionnées ;
- Séquence
- Colonnes éparses
- Clés de substitution sur les séquences de nombres avec des colonnes d’identité
- Synonymes
- Déclencheurs
- Index uniques
- Types définis par l'utilisateur
- Tables externes
Important
Il existe des limitations avec l’ajout de contraintes de table ou de colonnes lors de l’utilisation du contrôle de code source avec Warehouse.
Contenu connexe
- Qu’est-ce que l’entreposage de données dans Microsoft Fabric ?
- Qu’est-ce que l'engineering données dans Microsoft Fabric ?
- Créer un entrepôt dans Microsoft Fabric
- Interroger le point de terminaison d’analytique SQL ou l’entrepôt dans Microsoft Fabric
- OneLake, OneDrive pour les données
- Créer des tables dans l'entrepôt dans Microsoft Fabric
- Transactions dans les tables d’entrepôt dans Microsoft Fabric