what is etl extract
Ce didacticiel détaillé sur le processus ETL explique le flux de processus et les étapes impliquées dans le processus ETL (extraction, transformation et chargement) dans l'entrepôt de données:
Ce didacticiel de la série explique: Qu'est-ce que le processus ETL? Extraction de données, transformation, chargement, fichiers plats, qu'est-ce que la mise en scène? Cycle ETL, etc.
Commençons!!
=> Consultez le guide de formation Perfect Data Warehousing ici.
Ce que vous apprendrez:
- Principes de base du processus ETL (extraction, transformation, chargement)
- Conclusion
Principes de base du processus ETL (extraction, transformation, chargement)
Public cible
- Développeurs et testeurs d'entrepôt de données / ETL.
- Professionnels des bases de données ayant une connaissance de base des concepts de bases de données.
- Administrateurs de bases de données / experts en big data qui souhaitent comprendre les domaines de l'entrepôt de données / ETL.
- Diplômés du Collège / Freshers qui recherchent des emplois dans l'entrepôt de données.
Qu'est-ce que le processus ETL dans l'entrepôt de données?
Nous savons tous que l'entrepôt de données est une collection d'énormes volumes de données, pour fournir des informations aux utilisateurs professionnels à l'aide d'outils de Business Intelligence.
Pour atteindre cet objectif, DW doit être chargé à intervalles réguliers. Les données du système sont collectées à partir d'un ou plusieurs systèmes opérationnels, fichiers plats, etc. Le processus qui apporte les données à DW est connu sous le nom de processus ETL . L'extraction, la transformation et le chargement sont les tâches d'ETL.
# 1) Extraction: Toutes les données préférées de divers systèmes sources tels que les bases de données, les applications et les fichiers plats sont identifiées et extraites. L'extraction de données peut être effectuée en exécutant des tâches en dehors des heures de bureau.
# 2) Transformation: La plupart des données extraites ne peuvent pas être directement chargées dans le système cible. En fonction des règles métier, certaines transformations peuvent être effectuées avant de charger les données.
Par exemple, une donnée de colonne cible peut s'attendre à deux données concaténées de colonnes source en entrée. De même, il peut y avoir une logique complexe pour la transformation des données qui nécessite une expertise. Certaines données qui ne nécessitent aucune transformation peuvent être directement déplacées vers le système cible.
Le processus de transformation corrige également les données, supprime toutes les données incorrectes et corrige toutes les erreurs dans les données avant de les charger.
# 3) Chargement: Toutes les informations collectées sont chargées dans les tables cible de l'entrepôt de données.
Extraction de données
L'extraction de données joue un rôle majeur dans la conception d'un système DW réussi. Différents systèmes sources peuvent avoir des caractéristiques de données différentes, et le processus ETL gérera ces différences efficacement lors de l'extraction des données.
' Carte des données logiques »Est un document de base pour l'extraction de données. Cela montre quelles données source doivent aller à quelle table cible et comment les champs source sont mappés aux champs de table cible respectifs dans le processus ETL.
Voici les étapes à suivre lors de la conception de la carte de données logiques:
- Un architecte d'entrepôt de données conçoit le document de carte de données logique.
- En se référant à ce document, le développeur ETL créera des travaux ETL et les testeurs ETL créeront des cas de test.
- Toutes les sources de données spécifiques et les éléments de données respectifs qui soutiennent les décisions commerciales seront mentionnés dans ce document. Ces éléments de données agiront comme entrées pendant le processus d'extraction.
- Les données de tous les systèmes sources sont analysées et tout type d'anomalies de données est documenté afin que cela aide à concevoir les règles métier correctes pour arrêter d'extraire les mauvaises données dans DW. De telles données sont rejetées ici même.
- Une fois que le modèle de données source et cible final est conçu par les architectes ETL et les analystes métier, ils peuvent effectuer une visite guidée avec les développeurs ETL et les testeurs. Ainsi, ils comprendront clairement comment les règles métier doivent être exécutées à chaque phase d'extraction, de transformation et de chargement.
- En parcourant les règles de mappage de ce document, les architectes, développeurs et testeurs ETL doivent avoir une bonne compréhension de la manière dont les données circulent de chaque table en tant que dimensions, faits et toutes autres tables.
- Tout type de règles ou de formules de manipulation de données est également mentionné ici pour éviter l'extraction de données erronées. Par exemple, extraire uniquement les 40 derniers jours de données, etc.
- Il est de la responsabilité de l'équipe ETL d'explorer les données conformément aux exigences de l'entreprise, pour faire ressortir toutes les données utiles du système source, des tables et des colonnes à charger dans DW.
Le document de carte de données logiques est généralement une feuille de calcul qui montre les composants suivants:
(table '' introuvable /)Diagramme de flux d'extraction:
Indiquez à l'avance la fenêtre de temps pour exécuter les travaux sur chaque système source, de sorte qu'aucune donnée source ne soit manquée pendant le cycle d'extraction.
Avec les étapes ci-dessus, l'extraction atteint l'objectif de convertir des données de différents formats provenant de différentes sources en un seul format DW, ce qui profite à l'ensemble des processus ETL. Ces données placées logiquement sont plus utiles pour une meilleure analyse.
Méthodes d'extraction dans l'entrepôt de données
En fonction des environnements de données source et cible et des besoins de l'entreprise, vous pouvez sélectionner la méthode d'extraction adaptée à votre DW.
# 1) Méthodes d'extraction logique
L'extraction de données dans un système d'entrepôt de données peut être une charge complète unique effectuée initialement (ou) il peut s'agir de charges incrémentielles qui se produisent à chaque fois avec des mises à jour constantes.
entretien de dépannage de réseau questions et réponses pdf
- Extraction complète: Comme son nom l'indique, les données du système source sont complètement extraites dans la table cible. Chaque fois que ce type d'extraction charge toutes les données du système source actuel sans tenir compte des derniers horodatages extraits. De préférence, vous pouvez utiliser l'extraction complète pour les charges initiales ou les tables avec moins de données.
- Extraction incrémentale: Les données ajoutées / modifiées à partir d'une date spécifique seront prises en compte pour l'extraction incrémentielle. Cette date est spécifique à l'entreprise en tant que date de la dernière extraction (ou) date de la dernière commande, etc. Nous pouvons faire référence à une colonne d'horodatage de la table source elle-même (ou) une table séparée peut être créée pour suivre uniquement les détails de la date d'extraction. La référence à l'horodatage est une méthode importante lors de l'extraction incrémentielle. Les logiques sans horodatage peuvent échouer si la table DW contient des données volumineuses.
# 2) Méthodes d'extraction physique
En fonction des capacités des systèmes source et des limites des données, les systèmes source peuvent fournir les données physiquement pour l'extraction sous forme d'extraction en ligne et d'extraction hors ligne. Cela prend en charge tous les types d'extraction logique.
- Extraction en ligne :: Nous pouvons directement nous connecter à n'importe quelle base de données système source avec les chaînes de connexion pour extraire les données directement des tables système source.
- Extraction hors ligne :: Nous ne nous connecterons pas directement à la base de données du système source ici, au lieu de cela, le système source fournit des données explicitement dans une structure prédéfinie. Les systèmes sources peuvent fournir des données sous la forme de fichiers plats, de fichiers de vidage, de journaux d'archivage et d'espaces de table.
Les outils ETL sont les mieux adaptés pour effectuer toutes les extractions de données complexes, n'importe quel nombre de fois pour DW bien qu'elles soient coûteuses.
Extraction de données modifiées
Une fois le chargement initial terminé, il est important de réfléchir à la manière d'extraire davantage les données modifiées du système source. L'équipe de processus ETL doit concevoir un plan sur la façon de mettre en œuvre l'extraction pour les charges initiales et les charges incrémentielles, au début du projet lui-même.
La plupart du temps, vous pouvez envisager la stratégie «Audit des colonnes» pour la charge incrémentielle afin de capturer les modifications de données. En général, les tables système source peuvent contenir des colonnes d'audit, qui stockent l'horodatage de chaque insertion (ou) modification.
L'horodatage peut être rempli par des déclencheurs de base de données (ou) de l'application elle-même. Vous devez vous assurer de l'exactitude des données des colonnes d'audit, même si elles se chargent par quelque moyen que ce soit, afin de ne pas manquer les données modifiées pour les charges incrémentielles.
Pendant le chargement incrémentiel, vous pouvez tenir compte de la date et de l'heure maximales du dernier chargement et extraire toutes les données du système source avec l'horodatage supérieur au dernier horodatage de chargement.
Lors de l'extraction des données:
- Utilisez les requêtes de manière optimale pour récupérer uniquement les données dont vous avez besoin.
- N'utilisez pas trop la clause Distinct car elle ralentit les performances des requêtes.
- Utilisez les opérateurs SET tels que Union, Minus, Intersect avec précaution car cela dégrade les performances.
- Utilisez des mots-clés de comparaison tels que like, between, etc. dans la clause where, plutôt que des fonctions telles que substr (), to_char (), etc.
Transformation des données
La transformation est le processus dans lequel un ensemble de règles est appliqué aux données extraites avant de charger directement les données du système source dans le système cible. Les données extraites sont considérées comme des données brutes.
Le processus de transformation avec un ensemble de normes transforme toutes les données dissemblables de divers systèmes sources en données utilisables dans le système DW. La transformation des données vise la qualité des données. Vous pouvez vous référer au document de mappage de données pour toutes les règles de transformation logique.
En fonction des règles de transformation, si des données source ne respectent pas les instructions, ces données source sont rejetées avant d'être chargées dans le système DW cible et sont placées dans un fichier de rejet ou une table de rejet.
Les règles de transformation ne sont pas spécifiées pour les données des colonnes à chargement direct (ne nécessitant aucune modification) de la source à la cible. Par conséquent, les transformations de données peuvent être classées comme simples et complexes. Les transformations de données peuvent impliquer des conversions de colonnes, un reformatage de la structure des données, etc.
Vous trouverez ci-dessous certaines des tâches à effectuer lors de la transformation des données:
# 1) Sélection: Vous pouvez sélectionner la totalité des données de table ou un ensemble spécifique de données de colonnes à partir des systèmes source. La sélection des données est généralement effectuée lors de l'extraction elle-même.
Il peut y avoir des cas où le système source ne permet pas de sélectionner un ensemble spécifique de données de colonnes pendant la phase d'extraction, puis d'extraire l'ensemble des données et de faire la sélection dans la phase de transformation.
# 2) Fractionnement / jonction: Vous pouvez manipuler les données sélectionnées en les fractionnant ou en les joignant. Il vous sera demandé de fractionner encore plus les données source sélectionnées pendant la transformation.
Par exemple, si l'adresse entière est stockée dans un seul grand champ de texte dans le système source, le système DW peut demander à diviser l'adresse en champs séparés en tant que ville, état, code postal, etc. Ceci est facile pour l'indexation et l'analyse basée sur chaque composant individuellement.
Alors que la jonction / la fusion de deux ou plusieurs colonnes de données est largement utilisée pendant la phase de transformation dans le système DW. Cela ne signifie pas fusionner deux champs en un seul champ.
Par exemple, si les informations sur une entité particulière proviennent de plusieurs sources de données, alors la collecte des informations en tant qu'entité unique peut être appelée comme joindre / fusionner les données.
# 3) Conversion: Les données des systèmes sources extraites peuvent être dans différents formats pour chaque type de données, par conséquent, toutes les données extraites doivent être converties dans un format normalisé pendant la phase de transformation. Le même type de format est facile à comprendre et à utiliser pour les décisions commerciales.
# 4) Résumé: Dans certaines situations, DW recherchera des données résumées plutôt que des données détaillées de bas niveau à partir des systèmes source. Parce que les données de bas niveau ne sont pas les mieux adaptées pour l'analyse et l'interrogation par les utilisateurs métier.
Par exemple, les données de vente pour chaque caisse peuvent ne pas être requises par le système DW, les ventes quotidiennes de sous-produits (ou) les ventes quotidiennes du magasin sont utiles. Par conséquent, la synthèse des données peut être effectuée pendant la phase de transformation selon les exigences de l'entreprise.
# 5) Enrichissement: Lorsqu'une colonne DW est formée en combinant une ou plusieurs colonnes de plusieurs enregistrements, l'enrichissement des données réorganise les champs pour une meilleure vue des données dans le système DW.
# 6) Révisions de format: Les révisions de format se produisent le plus souvent pendant la phase de transformation. Le type de données et sa longueur sont révisés pour chaque colonne.
Par exemple, une colonne dans un système source peut être numérique et la même colonne dans un autre système source peut être un texte. Pour standardiser cela, lors de la phase de transformation, le type de données de cette colonne est changé en texte.
# 7) Décodage des champs: Lorsque vous extrayez des données de plusieurs systèmes sources, les données de divers systèmes peuvent être décodées différemment.
Par exemple, un système source peut représenter le statut du client comme AC, IN et SU. Un autre système peut représenter le même état que 1, 0 et -1.
Lors de la phase de transformation des données, vous devez décoder ces codes en valeurs appropriées compréhensibles par les utilisateurs métier. Par conséquent, les codes ci-dessus peuvent être modifiés en Actif, Inactif et Suspendu.
# 8) Valeurs calculées et dérivées: En tenant compte des données du système source, DW peut stocker des données de colonne supplémentaires pour les calculs. Vous devez effectuer les calculs en fonction de la logique métier avant de le stocker dans DW.
# 9) Conversion de date / heure: C'est l'un des types de données clés sur lesquels se concentrer. Le format date / heure peut être différent dans plusieurs systèmes sources.
Par exemple, une source peut stocker la date au 10 novembre 1997. Une autre source peut stocker la même date au format 11/10/1997. Par conséquent, lors de la transformation des données, toutes les valeurs de date / heure doivent être converties dans un format standard.
# 10) Déduplication: Si le système source a des enregistrements en double, assurez-vous qu'un seul enregistrement est chargé dans le système DW.
Diagramme de flux de transformation:
Comment mettre en œuvre la transformation?
Selon la complexité des transformations de données, vous pouvez utiliser des méthodes manuelles, des outils de transformation (ou) une combinaison des deux, selon ce qui est efficace.
# 1) Techniques manuelles
Les techniques manuelles conviennent aux petits systèmes DW. Les analystes de données et les développeurs créeront les programmes et les scripts pour transformer les données manuellement. Cette méthode nécessite des tests détaillés pour chaque partie du code.
Le coût de maintenance peut devenir élevé en raison des changements intervenus dans les règles de gestion (ou) en raison des risques d'erreurs avec l'augmentation des volumes de données. Vous devez vous occuper des métadonnées au départ et également à chaque modification qui se produit dans les règles de transformation.
# 2) Outils de transformation
Si vous souhaitez automatiser la majeure partie du processus de transformation, vous pouvez adopter les outils de transformation en fonction du budget et du délai disponibles pour le projet. Lors de l'automatisation, vous devez passer du temps de bonne qualité pour sélectionner les outils, les configurer, les installer et les intégrer au système DW.
Une transformation pratiquement complète avec les outils eux-mêmes n'est pas possible sans intervention manuelle. Mais les données transformées par les outils sont certainement efficaces et précises.
Pour ce faire, nous devons entrer les paramètres, les définitions de données et les règles appropriés dans l'outil de transformation en entrée. À partir des entrées fournies, l'outil lui-même enregistrera les métadonnées et ces métadonnées seront ajoutées aux métadonnées DW globales.
S'il y a des changements dans les règles métier, entrez simplement ces changements dans l'outil, le reste des modifications de transformation sera pris en charge par l'outil lui-même. Par conséquent, une combinaison des deux méthodes est efficace à utiliser.
Chargement des données
Les données extraites et transformées sont chargées dans les tables DW cibles pendant la phase de chargement du processus ETL. L'entreprise décide de la manière dont le processus de chargement doit se dérouler pour chaque table.
Le processus de chargement peut se dérouler des manières suivantes:
- Charge initiale: Chargement des données pour remplir les tables DW respectives pour la première fois.
- Charge incrémentale: Une fois les tables DW chargées, le reste des modifications en cours est appliqué périodiquement.
- Rafraîchissement complet: Si des tables en cours d'utilisation nécessitent une actualisation, les données actuelles de cette table sont complètement supprimées, puis rechargées. Le rechargement est similaire à la charge initiale.
Regardez l'exemple ci-dessous, pour une meilleure compréhension du processus de chargement dans ETL:
ID produit | Nom du produit | Date de vente |
---|---|---|
1 | Livre de grammaire | 3 juin 2007 |
deux | Marqueur | 3 juin 2007 |
3 | Sac à dos | 4 juin 2007 |
4 | Casquette | 4 juin 2007 |
5 | Des chaussures | 5 juin 2007 |
#1) Lors du chargement initial, les données qui sont vendues sur 3rdJuin 2007 est chargé dans la table cible DW car il s'agit des données initiales de la table ci-dessus.
#deux) Pendant le chargement incrémentiel, nous devons charger les données qui sont vendues après 3rdJuin 2007. Nous devrions considérer tous les enregistrements dont la date de vente est supérieure (>) à la date précédente du jour suivant. Par conséquent, sur 4eJuin 2007, récupérez tous les disques avec date de vente> 3rdJuin 2007 en utilisant des requêtes et ne chargez que ces deux enregistrements du tableau ci-dessus.
Le 5eJuin 2007, récupérez tous les disques avec date de vente> 4eJuin 2007 et chargez un seul enregistrement du tableau ci-dessus.
# 3) Pendant l'actualisation complète, toutes les données de table ci-dessus sont chargées dans les tables DW à la fois, quelle que soit la date de vente.
Les données chargées sont stockées dans les tables de faits de dimension (ou) respectives. Les données peuvent être chargées, ajoutées ou fusionnées aux tables DW comme suit:
# 4) Charge: Les données sont chargées dans la table cible si elle est vide. Si la table contient des données, les données existantes sont supprimées, puis chargées avec les nouvelles données.
Par exemple,
Données de table existantes
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | Conduire |
Bob | Directeur adjoint |
Ronald | Développeur |
Données modifiées
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Rohan | réalisateur |
Chetan | AVP |
Le | VP |
Données après chargement
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Rohan | réalisateur |
Chetan | AVP |
Le | VP |
# 5) Ajouter: Append est une extension de la charge ci-dessus car il fonctionne sur des tables déjà existantes. Dans les tables cible, Append ajoute plus de données aux données existantes. Si un enregistrement en double est trouvé avec les données d'entrée, il peut être ajouté comme duplicata (ou) il peut être rejeté.
Par exemple,
Données de table existantes
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | Conduire |
Données modifiées
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Rohan | réalisateur |
Chetan | AVP |
Le | VP |
Données après ajout
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | Conduire |
Rohan | réalisateur |
Chetan | AVP |
Le | VP |
# 6) Fusion destructrice: Ici, les données entrantes sont comparées aux données cibles existantes basées sur la clé primaire. S'il y a une correspondance, l'enregistrement cible existant est mis à jour. Si aucune correspondance n'est trouvée, un nouvel enregistrement est inséré dans la table cible.
Par exemple,
Données de table existantes
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | Conduire |
Données modifiées
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | réalisateur |
Chetan | AVP |
Le | VP |
Données après fusion constructive
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | réalisateur |
Chetan | AVP |
Le | VP |
# 7) Constructif va: Contrairement à la fusion destructive, s'il existe une correspondance avec l'enregistrement existant, il laisse l'enregistrement existant tel quel et insère l'enregistrement entrant et le marque comme les dernières données (horodatage) par rapport à cette clé primaire.
Par exemple,
Données de table existantes
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | Conduire |
Données modifiées
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | réalisateur |
Chetan | AVP |
Le | VP |
Données après fusion constructive
Nom de l'employé | Rôle |
---|---|
John | Directeur |
Revanth | Réalisateur*** |
Revanth | Conduire |
Chetan | AVP |
Le | VP |
Techniquement, l'actualisation est plus facile que la mise à jour des données. La mise à jour nécessite une stratégie spéciale pour extraire uniquement les modifications spécifiques et les appliquer au système DW, tandis que Refresh remplace simplement les données. Mais l'actualisation des données prend plus de temps en fonction des volumes de données.
Si vous avez de telles tâches d'actualisation à exécuter quotidiennement, vous devrez peut-être arrêter le système DW pour charger les données. Au lieu de faire tomber tout le système DW pour charger des données à chaque fois, vous pouvez diviser et charger les données sous la forme de quelques fichiers.
Notez le temps d'exécution de chaque charge pendant le test. Si des données ne peuvent pas être chargées dans le système DW en raison de différences de clé, etc., donnez-leur les moyens de gérer ce type de données. Assurez-vous que les données chargées sont testées minutieusement.
Diagramme de flux de chargement:
Fichiers plats
Les fichiers plats sont largement utilisés pour échanger des données entre des systèmes hétérogènes, à partir de différents systèmes d'exploitation source et de différents systèmes de base de données source vers des applications d'entrepôt de données. Les fichiers plats sont également plus efficaces et faciles à gérer pour les systèmes homogènes.
Les fichiers plats sont principalement utilisés aux fins suivantes:
# 1) Livraison des données sources: Il se peut que peu de systèmes source ne permettent pas aux utilisateurs DW d'accéder à leurs bases de données pour des raisons de sécurité. Dans de tels cas, les données sont transmises via des fichiers plats.
De même, les données proviennent des fournisseurs externes ou des systèmes centraux essentiellement sous la forme de fichiers plats, et ceux-ci seront fournis par FTP par les utilisateurs ETL.
# 2) Tables de travail / de préparation: Le processus ETL crée des tables de transfert pour son objectif interne. L'association des tables intermédiaires avec les fichiers plats est beaucoup plus facile que le SGBD car les lectures et écritures dans un système de fichiers sont plus rapides que l'insertion et l'interrogation d'une base de données.
# 3) Préparation pour le chargement en vrac: Une fois les processus d'extraction et de transformation terminés, si le chargement en masse dans le flux n'est pas pris en charge par l'outil ETL (ou) Si vous souhaitez archiver les données, vous pouvez créer un fichier plat. Ces données de fichier plat sont lues par le processeur et charge les données dans le système DW.
Les fichiers plats peuvent être créés de deux manières: «fichiers plats de longueur fixe» et «fichiers plats délimités». Les fichiers plats peuvent être créés par les programmeurs qui travaillent pour le système source.
Voyons comment traitons ces fichiers plats:
Traitement des fichiers plats de longueur fixe
En général, les fichiers plats sont des colonnes de longueur fixe, ils sont donc également appelés fichiers plats positionnels. Vous trouverez ci-dessous la disposition d'un fichier plat qui montre les champs exacts et leurs positions dans un fichier.
Nom de domaine | Longueur | Début | Finir | Taper | commentaires |
---|---|---|---|---|---|
Prénom | dix | 1 | dix | Texte | Prénom du client |
Deuxième nom | 5 | Onze | quinze | Texte | Deuxième prénom du client |
Nom de famille | dix | 16 | 25 | Texte | Nom du client |
La mise en page contient le nom du champ, longueur, position de départ à laquelle le caractère de champ commence, la position de fin à laquelle le caractère de champ se termine, le type de données sous forme de texte, numérique, etc., et les commentaires le cas échéant.
En fonction des positions des données, l'équipe de test ETL validera l'exactitude des données dans un fichier plat de longueur fixe.
Traitement des fichiers plats délimités
Dans les fichiers plats délimités, chaque champ de données est séparé par des délimiteurs. Ce délimiteur indique la position de début et de fin de chaque champ. En général, une virgule est utilisée comme délimiteur, mais vous pouvez utiliser n'importe quel autre symbole ou un ensemble de symboles.
Les fichiers délimités peuvent avoir l'extension .CSV (ou) .TXT (ou) sans extension. Les développeurs qui créent les fichiers ETL indiqueront le symbole de délimitation réel pour traiter ce fichier. Dans la disposition de fichier délimitée, la première ligne peut représenter les noms de colonne.
Comme pour les fichiers plats positionnels, l'équipe de test ETL validera explicitement l'exactitude des données de fichier plat délimitées.
Objectif de la zone de rassemblement
L'objectif principal de la zone de transit est de stocker temporairement des données pour le processus ETL. La zone de transit est appelée backroom du système DW. L'architecte ETL décide de stocker ou non les données dans la zone de transit.
La mise en scène aidera à obtenir les données des systèmes sources très rapidement. Dans le même temps, en cas de défaillance du système DW, vous n'avez pas besoin de redémarrer le processus en collectant des données à partir des systèmes source si les données intermédiaires existent déjà.
Après le processus d'extraction des données, voici les raisons de mettre en scène les données dans le système DW:
# 1) Récupérabilité: Les tables intermédiaires remplies seront stockées dans la base de données DW elle-même (ou) elles peuvent être déplacées dans des systèmes de fichiers et peuvent être stockées séparément. À un moment donné, les données intermédiaires peuvent servir de données de récupération en cas d'échec d'une transformation ou d'une étape de chargement.
Il peut y avoir des chances que le système source ait écrasé les données utilisées pour ETL, donc conserver les données extraites en staging nous aide pour toute référence.
# 2) Sauvegarde: Il est difficile de reprendre des volumes énormes de tables de base de données DW. Mais les sauvegardes sont indispensables pour toute reprise après sinistre. Par conséquent, si vous disposez des données intermédiaires qui sont des données extraites, vous pouvez exécuter les travaux pour la transformation et le chargement, ce qui permet de recharger les données bloquées.
outils d'analyse Big Data open source
Pour sauvegarder les données intermédiaires, vous pouvez fréquemment déplacer les données intermédiaires vers des systèmes de fichiers afin qu'il soit facile de les compresser et de les stocker sur votre réseau. Chaque fois que cela est nécessaire, décompressez simplement les fichiers, chargez-les dans les tables intermédiaires et exécutez les travaux pour recharger les tables DW.
# 3) Audit: Parfois, un audit peut avoir lieu sur le système ETL, pour vérifier la liaison de données entre le système source et le système cible. Les auditeurs peuvent valider les données d'entrée d'origine par rapport aux données de sortie en fonction des règles de transformation.
Les données intermédiaires et leur sauvegarde sont très utiles ici, même si le système source dispose des données disponibles ou non. Comme l'audit peut avoir lieu à tout moment et sur n'importe quelle période des données présentes (ou) passées. L'architecture de la zone de rassemblement doit être bien planifiée.
Conception de la zone de transit
Dans l'entrepôt de données, les données de la zone de transit peuvent être conçues comme suit:
À chaque nouveau chargement de données dans des tables de transfert, les données existantes peuvent être supprimées (ou) conservées en tant que données historiques pour référence. Si les données sont supprimées, elles sont appelées «zone de transit transitoire».
Si les données sont conservées sous forme d'historique, elles sont alors appelées «zone de transit persistante». Vous pouvez également concevoir une zone de transit avec une combinaison des deux types ci-dessus qui est «hybride».
Voici les règles de base à connaître lors de la conception de la zone de transit:
- Seule l'équipe ETL doit avoir accès à la zone de préparation des données. L'interrogation des données intermédiaires est réservée aux autres utilisateurs.
- Les tables de la zone de transfert peuvent être ajoutées, modifiées ou supprimées par l'architecte de données ETL sans impliquer d'autres utilisateurs. La zone de préparation n'étant pas une zone de présentation pour générer des rapports, elle sert simplement de plan de travail.
- L'architecte ETL doit estimer la mesure de stockage des données de la zone de transit pour fournir les détails aux administrateurs DBA et OS. Les administrateurs alloueront de l'espace pour les bases de données intermédiaires, les systèmes de fichiers, les répertoires, etc.
Si la zone de transit et la base de données DW utilisent le même serveur, vous pouvez facilement déplacer les données vers le système DW. Si les serveurs sont différents, utilisez des liens de base de données FTP (ou).
Flux de processus ETL
Un cycle ETL standard passera par les étapes de processus ci-dessous:
- Lancez le cycle ETL pour exécuter les tâches dans l'ordre.
- Assurez-vous que toutes les métadonnées sont prêtes.
- Le cycle ETL aide à extraire les données de diverses sources.
- Validez les données extraites.
- Si des tables de transfert sont utilisées, le cycle ETL charge les données dans la préparation.
- ETL effectue des transformations en appliquant des règles métier, en créant des agrégats, etc.
- S'il y a des échecs, le cycle ETL le signalera sous forme de rapports.
- Ensuite, le cycle ETL charge les données dans les tables cibles.
- Les données antérieures qui doivent être stockées pour référence historique sont archivées.
- Le reste des données qui n'ont pas besoin d'être stockées est nettoyé.
Diagramme de flux de processus ETL:
Conclusion
Dans ce didacticiel, nous avons découvert les principaux concepts du processus ETL dans Data Warehouse. À présent, vous devriez être en mesure de comprendre ce que sont l'extraction de données, la transformation de données, le chargement de données et le flux de processus ETL.
Lisez le prochain tutoriel pour en savoir plus sur les tests d'entrepôt de données !!
=> Visitez ici pour la série exclusive d'entreposage de données.
lecture recommandée
- Tutoriel de test de l'entrepôt de données avec des exemples | Guide de test ETL
- 10 meilleurs outils de mappage de données utiles dans le processus ETL (2021 LIST)
- Tutoriel de test de test de l'entrepôt de données ETL (un guide complet)
- Exploration de données: processus, techniques et problèmes majeurs dans l'analyse des données
- Processus d'exploration de données: modèles, étapes de processus et défis impliqués
- Questions et réponses d'entrevue de test ETL
- Top 10 des outils de test ETL en 2021
- Top 10 des outils d'entrepôt de données et des technologies de test les plus populaires