Chargement de tables d’entrepôt de données
À un niveau de base, le chargement d’un entrepôt de données s’effectue généralement en ajoutant de nouvelles données à partir de fichiers d’un lac de données dans des tables de l’entrepôt de données. L’instruction COPY
est un moyen efficace d’accomplir cette tâche, comme le montre l’exemple suivant :
COPY INTO dbo.StageProducts
(ProductID, ProductName, ProductCategory, Color, Size, ListPrice, Discontinued)
FROM 'https://mydatalake.blob.core.windows.net/data/stagedfiles/products/*.parquet'
WITH
(
FILE_TYPE = 'PARQUET',
MAXERRORS = 0,
IDENTITY_INSERT = 'OFF'
);
Considérations relatives à la conception d’un processus de chargement d’entrepôt de données
L’un des modèles les plus courants pour le chargement d’un entrepôt de données consiste à transférer des données de systèmes sources vers des fichiers situés dans un lac de données, à ingérer les données des fichiers dans des tables de mise en lots, puis à utiliser des instructions SQL pour charger les données des tables de mise en lots dans les tables de dimension et de faits. Généralement, le chargement des données est effectué dans le cadre d’un processus de traitement par lots périodique dans lequel les insertions et mises à jour de l’entrepôt de données sont coordonnées pour se produire à un intervalle régulier (par exemple quotidien, hebdomadaire ou mensuel).
Dans la plupart des cas, vous devez implémenter un processus de chargement d’entrepôt de données, qui effectue les tâches dans l’ordre suivant :
- Ingérez les nouvelles données à charger dans un lac de données, en appliquant un nettoyage ou des transformations avant le chargement, selon les besoins.
- Chargez les données à partir de fichiers dans des tables de mise en lots au sein de l’entrepôt de données relationnel.
- Chargez les tables de dimension à partir des données de dimension dans les tables de mise en lots, en mettant à jour les lignes existantes ou en insérant de nouvelles lignes, et en générant des valeurs de clé de substitution le cas échéant.
- Chargez les tables de faits à partir des données de faits dans les tables de mise en lots, en recherchant les clés de substitution appropriées pour les dimensions associées.
- Effectuez une optimisation postchargement en mettant à jour les index et les statistiques de distribution des tables.
Après avoir utilisé l’instruction COPY
pour charger les données dans les tables de mise en lots, vous pouvez utiliser une combinaison d’instructions INSERT
, UPDATE
, MERGE
et CREATE TABLE AS SELECT
(CTAS) pour charger les données mises en lots dans des tables de dimension et de faits.
Notes
Pour implémenter une solution efficace de chargement d’entrepôt de données, vous devez examiner attentivement le mode de gestion des clés de substitution, des dimensions variables à évolution lente et des autres aspects complexes inhérents à un schéma d’entrepôt de données relationnel. Pour en savoir plus sur les techniques de chargement d’un entrepôt de données, pensez à suivre le module Charger des données dans un entrepôt de données relationnel.