ETL – Extract Transform and Load

En informatique, un ETL pour Extract Transform and Load – en Français Extraire Transformer et Charger – est un ensemble de processus pour le chargement des bases de données décisionnelles ou entrepôts de données, qui prépare les données pour leur analyse, souvent stockées en fin de cycle dans des bases de données multidimensionnelles. Ces processus consistent à extraire des données provenant de sources extérieures, souvent des systèmes transactionnels qui stockent les données dans des bases de données relationnelles.

Les transformer pour répondre aux besoins en reporting opérationnels ou décisionnels. Puis à les charger dans l’objectif de fin (base de données ou plus précisément dans un magasin de données ou entrepôt de données).

L’extraction des données est la première étape du processus ETL

La première partie du processus ETL consiste à extraire les données des systèmes sources. Dans de nombreux cas, c’est l’aspect le plus difficile de l’ETL, par ce qu’il faut établir des connexions vers des systèmes tiers ou exporter des volumes parfois importants de données sous forme de fichiers textes par exemple. Les formats de données communes sont la source de données relationnelles et des fichiers plats, mais peuvent inclure des structures de bases de données non relationnelles telles que le système de gestion de l’information (SGI) ou autres structures de données telles que la méthode de stockage Virtual Access (VSAM) ou Indexed Sequential Access Method (ISAM).

La plupart des projets d’entreposage de données consistent à consolider les données provenant de systèmes sources hétérogènes, donc différents. Chaque système peut également utiliser une organisation différente des données, comme les règles de nommages, le format des données, etc. En général, l’objectif de la phase d’extraction consiste à convertir les données dans un format unique qui est approprié pour un traitement de transformation. Ce format de stockage est très similaire à la source, on parle de « 1 pour 1 », c’est à dire que l’on souhaite conserver une image des données sources telles qu’elles arrivent. On y applique souvent un système intelligent d’historisation et de journalisation pour savoir quelles données sont arrivées et quand, ce qui permet de reprendre des chargements et gérer les erreurs de transfert de données depuis les systèmes sources.

 

La transformation des données comme deuxième étape du processus ETL

L’étape de transformation applique une série de règles appelées règles de gestion. Pour certaines sources de données, il faudra une manipulation très légère – voire aucune – sur les données. Dans d’autres cas, un ou plusieurs des types de transformation suivants peuvent être nécessaires pour répondre aux besoins technico-commerciaux et de la base de données cible:

  • Sélectionner uniquement certaines colonnes à charger.
  • Traduire les valeurs codées, par exmple A2017 pour année 2017 de viendra 2017 ou vice-versa.
  • Joindre les données provenant de sources multiples, par exemple rattacher le nom du client au numéro de sa carte fidélité qui sont dans 2 tables différentes.
  • L’agrégation, avec un cumul du total des ventes pour chaque magasin par exemple.
  • Transposition ou pivot, c’est à dire basculer plusieurs colonnes en plusieurs lignes ou vice versa.
  • Fractionnement d’une colonne en plusieurs colonnes.
  • La suppression des données redondantes, par exemple si l’adresse du client est stocké sur toutes les lignes des ventes, dans la table « Ventes », alors on conservera le numéro de client uniquement et l’adresse du client sera stockée de manière unique dans la table « Clients ».
  • Rechercher et valider les données pertinentes à partir des tables ou des fichiers référentiels pour les dimensions à variation lente.
  • L’application de toute forme de validation de données simple ou complexe.

Si la validation échoue, cela peut entraîner un rejet complet ou partiel des données, et donc aucune, certaines ou toutes les données seront remises au prochain chargement, en fonction de la méthode de conception de l’entrepôt de données et des règles de gestion pour les exceptions. La plupart des transformations ci-dessus peuvent entraîner des exceptions, par exemple, quand une traduction des codes analyse un code inconnu dans les données extraites.

 

Le chargement des données constitue la troisième et dernière étape du processus ETL

La phase de chargement qui est la dernière charge les données dans l’entrepôt de données – DW ou DWH pour DataWareHouse. Selon les exigences de l’organisation, ce processus est très variable. Certains entrepôts de données peuvent remplacer les informations existantes avec des informations données cumulatives, extraites et mises à jour sur une base quotidienne, hebdomadaire ou mensuelle. D’autres types de DW (ou même d’autres parties du même DW) peuvent ajouter de nouvelles données sous une forme historicisées, par exemple, toutes les heures.

Pour le comprendre, considérons un entrepôt de données qui stockent les données de ventes de l’année dernière, ensuite, le nouveau DW écrase les données qui ont plus d’un an avec des données plus récentes. L’historisation ou non et la gestion des nouvelles lignes: montants écrasés ou additionnés, dépend de la complexité du projet et des exigences métiers de l’organisation. Alors que la phase de chargement interagit avec une base de données, les contraintes définies dans le schéma de base de données comme par exemple, l’unicité, l’intégrité référentielle et les champs obligatoires contribuent également à la performance et à la qualité globale des données et du processus ETL.

Par exemple, une institution financière pourrait avoir des informations sur un client dans plusieurs départements et chaque département pourrait disposer d’informations que le client a énumérées d’une manière différente. Le département relation client peut lister le client par son nom, alors que le service comptabilité pourrait établir une liste par numéro de client. Un ETL peut regrouper toutes ces données et les regrouper en une présentation uniforme, comme pour le stockage dans un entrepôt de données. C’est le domaine de la qualité des données ou MDM pour Master Data Management qui traite spécifiquement ces problématiques dans un cycle d’amélioration continue.

 

Soyez le premier à commenter

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*