Qu'est-ce que l'ELT (extraction, chargement et transformation) ?

Dans le contexte actuel axé sur les données, les entreprises cherchent en permanence des moyens plus efficaces de gérer et d'analyser de grandes quantités d'informations. Le processus ELT (extraction, chargement et transformation) représente une approche moderne de l'intégration des données, particulièrement adaptée aux environnements cloud. Il est essentiel de comprendre l'ELT pour toute personne impliquée dans l'architecture, l'ingénierie ou l'analyse de données, car il peut offrir des avantages distincts en termes de rapidité, de flexibilité et d'évolutivité pour gérer différents ensembles de données. Cette approche modifie le moment et le lieu de la transformation des données, ce qui ouvre de nouvelles possibilités d'utilisation des données.

Définition de l'ELT

ELT fait référence au processus d'extraction, de chargement et de transformation. Il s'agit d'un modèle de pipeline de données dans lequel les données sont d'abord extraites de différents systèmes sources. Ensuite, au lieu d'être transformées dans une zone de transit distincte, les données brutes sont chargées directement dans un datastore cible, tel qu'un lac de données ou un entrepôt de données cloud. Les transformations ne sont appliquées qu'après le chargement des données dans le système cible.

Cette séquence différencie l'ELT de son prédécesseur, l'ETL (extraction, transformation et chargement), et constitue l'une des principales raisons de son adoption croissante dans les architectures cloud natives.

Comment fonctionne l'ELT ?

Le flux de processus ELT exploite la puissance et l'évolutivité des plates-formes modernes de stockage et de traitement des données. Décomposons chaque composant :

  • Extraction : cette première étape consiste à collecter les données brutes à partir de leurs sources d'origine. Ces sources peuvent être extrêmement diverses, y compris des bases de données (SQL et NoSQL), des applications d'entreprise (comme les CRM et les ERP), des plates-formes SaaS, des API et des fichiers journaux. Le processus d'extraction se concentre sur l'extraction efficace des données de ces systèmes.
  • Chargement : dans la deuxième étape, les données brutes extraites sont chargées, souvent dans leur format d'origine ou avec un traitement minimal, directement dans un système de stockage à haute capacité. Les lacs de données cloud ou les entrepôts de données cloud modernes, qui peuvent traiter de grands volumes de données structurées, semi-structurées et non structurées, sont des cibles courantes pour ces données brutes.
  • Transformation : cette dernière étape intervient une fois que les données sont stockées de manière sécurisée dans le système cible. Grâce à la puissance de calcul de l'entrepôt de données ou du lac de données, les données brutes sont nettoyées, structurées, enrichies et converties dans un format adapté aux analyses, aux rapports et au machine learning. Les transformations peuvent inclure le filtrage, la fusion, l'agrégation, la normalisation des formats et la dérivation de nouveaux points de données.

Le processus ELT offre une certaine flexibilité, car les transformations ne sont pas figées avant le chargement. Les data scientists, par exemple, peuvent accéder aux données brutes pour explorer des modèles inattendus ou effectuer des analyses ponctuelles, tandis que les équipes d'informatique décisionnelle peuvent créer des ensembles de données transformés et triés pour les rapports.

Avantages de l'ELT

L'approche ELT présente plusieurs avantages potentiels, en particulier dans les environnements qui traitent de grands volumes de données et de différents types de données :

  • Ingestion de données plus rapide : le chargement de données brutes dans le système cible est généralement plus rapide que l'attente de la fin des transformations dans une zone de transit. Les données peuvent ainsi être disponibles plus rapidement pour une exploration initiale ou des cas d'utilisation spécifiques.
  • Flexibilité et agilité : les données brutes étant conservées dans le système cible, les transformations peuvent être développées, modifiées ou ajoutées de manière itérative à mesure que les exigences métier évoluent. Si une logique de transformation change, vous n'avez pas besoin de réingérer les données des systèmes sources. Il vous suffit de réexécuter la transformation sur les données brutes déjà chargées.
  • Évolutivité : les entrepôts de données et les lacs de données cloud modernes sont conçus pour une évolutivité à grande échelle. L'ELT exploite cette capacité inhérente en effectuant des transformations à l'aide des moteurs de traitement robustes de ces systèmes cibles. Les organisations peuvent ainsi gérer efficacement les volumes de données croissants et les transformations complexes.
  • Préservation des données brutes : le stockage des données brutes permet de disposer d'un historique plus complet. Cela peut s'avérer précieux pour l'audit des données, le retraitement en cas d'erreurs dans les transformations précédentes ou pour des besoins d'analyse futurs qui n'ont pas encore été anticipés. Les data scientists ont souvent besoin d'accéder aux données les plus détaillées et non transformées.
  • Rentabilité pour certaines charges de travail : utiliser la puissance de calcul d'un entrepôt de données cloud pour les transformations peut parfois être plus économique que de gérer une infrastructure distincte ou d'acheter des licences pour des outils ETL spécialisés, en particulier lorsque l'entrepôt de données offre un traitement optimisé.
  • Compatibilité avec différents types de données : l'ELT peut être adapté pour traiter des données structurées, semi-structurées (comme JSON ou XML) et non structurées (comme du texte ou des images). Les données peuvent être chargées dans leur format natif et transformées si nécessaire, ce qui peut constituer un avantage considérable dans les scénarios de big data. Cette approche "schema-on-read", dans laquelle la structure est appliquée pendant le traitement plutôt qu'avant le chargement, est une caractéristique de l'ELT.

Défis de l'ELT

Si l'ELT offre de nombreux avantages, il peut aussi présenter certains inconvénients que les entreprises doivent prendre en compte :

  • Gouvernance et sécurité des données : le chargement de données brutes, qui peuvent contenir des informations sensibles ou permettant d'identifier personnellement l'utilisateur, dans un lac de données ou un entrepôt de données nécessite des mesures de gouvernance, de sécurité et de conformité robustes. Les contrôles des accès, le chiffrement et les techniques de masquage des données sont essentiels pour protéger ces données dans l'environnement cible.
  • Complexité de la transformation dans le système cible : bien que puissante, la gestion d'une logique de transformation complexe directement dans un entrepôt de données (par exemple, à l'aide de SQL) ou un lac de données peut devenir difficile. Cela nécessite des employés qualifiés, qui maîtrisent ces outils, et une approche disciplinée de la gestion et de l'optimisation du code.
  • Outils et orchestration : une implémentation ELT efficace repose sur des outils appropriés pour orchestrer les étapes d'extraction et de chargement, et pour gérer et exécuter les transformations dans le système cible. De nombreuses plates-formes cloud proposent des outils, mais leur intégration et la gestion du workflow global nécessitent une planification minutieuse.
  • Risque de "marécages de données" : si les données brutes chargées dans un lac de données ne sont pas correctement cataloguées, gérées et gouvernées, le lac de données peut se transformer en "marécage de données", où il est difficile de trouver, de faire confiance ou d'utiliser efficacement les données. Une stratégie de gestion des données efficace est essentielle.
  • Responsabilité concernant la qualité des données : les transformations interviennent plus tard dans le processus. Il peut donc être nécessaire de prendre des mesures spécifiques après le chargement pour garantir la qualité des données. La surveillance et la validation des données au sein du système cible deviennent importantes.

En s'attaquant à ces défis de manière proactive, les entreprises peuvent exploiter pleinement les avantages du paradigme ELT.

Comparaison des approches ETL et ELT

Il est important de comprendre la différence entre ELT et le processus ETL (extraction, transformation, chargement) plus traditionnel pour choisir la bonne stratégie d'intégration des données. La principale différence réside dans le moment et l'endroit où la transformation est effectuée.

Fonctionnalité

ELT (extraction, chargement, transformation)

ETL (extraction, transformation et chargement)

Ordre de priorité des opérations

Extraction, chargement, transformation

Extraction, transformation et chargement

Lieu de transformation

Dans le datastore cible (entrepôt de données/lac de données)

Dans une zone de préproduction ou un environnement d'outil ETL distinct

Données chargées dans la cible

Données brutes non transformées

Données nettoyées, structurées et transformées

Puissance de traitement


Exploite la puissance du datastore cible

Repose sur un moteur ETL ou un serveur de préproduction dédié


Vitesse d'ingestion des données


Le chargement initial des données est généralement plus rapide

Peut être plus lent en raison du traitement de transformation préalable


Flexibilité pour de nouveaux usages


Élevé, car les données brutes sont disponibles pour une retransformation

Moins, car les transformations sont prédéfinies

Gestion des schémas

Convient bien aux schémas à lecture

Repose souvent sur le schéma au moment de l'écriture

Adéquation du type de données


Excellent pour les données structurées, semi-structurées et non structurées

Idéal pour les données structurées et certaines données semi-structurées

Utilisation des ressources

Optimise l'utilisation d'entrepôts de données cloud évolutifs

Peut nécessiter une infrastructure distincte pour les transformations


Fonctionnalité

ELT (extraction, chargement, transformation)

ETL (extraction, transformation et chargement)

Ordre de priorité des opérations

Extraction, chargement, transformation

Extraction, transformation et chargement

Lieu de transformation

Dans le datastore cible (entrepôt de données/lac de données)

Dans une zone de préproduction ou un environnement d'outil ETL distinct

Données chargées dans la cible

Données brutes non transformées

Données nettoyées, structurées et transformées

Puissance de traitement


Exploite la puissance du datastore cible

Repose sur un moteur ETL ou un serveur de préproduction dédié


Vitesse d'ingestion des données


Le chargement initial des données est généralement plus rapide

Peut être plus lent en raison du traitement de transformation préalable


Flexibilité pour de nouveaux usages


Élevé, car les données brutes sont disponibles pour une retransformation

Moins, car les transformations sont prédéfinies

Gestion des schémas

Convient bien aux schémas à lecture

Repose souvent sur le schéma au moment de l'écriture

Adéquation du type de données


Excellent pour les données structurées, semi-structurées et non structurées

Idéal pour les données structurées et certaines données semi-structurées

Utilisation des ressources

Optimise l'utilisation d'entrepôts de données cloud évolutifs

Peut nécessiter une infrastructure distincte pour les transformations


ELT est le modèle recommandé par Google Cloud pour l'intégration de données. L'extraction, le chargement et la transformation consiste à extraire les données des systèmes sources, à les charger dans BigQuery, puis à les transformer dans le format souhaité pour analyse. Contrairement à l'approche ETL (extraction, transformation, chargement), qui consiste à transformer les données avant de les charger dans un entrepôt de données, l'approche ELT permet à tout utilisateur SQL d'exploiter toute la puissance de BigQuery pour effectuer des transformations de données et de développer efficacement des pipelines d'intégration de données.

Le choix entre ETL et ELT dépend souvent de cas d'utilisation spécifiques, de l'infrastructure existante, des volumes de données et des besoins analytiques de l'entreprise. Dans de nombreuses architectures de données modernes, une approche hybride, utilisant à la fois l'ELT et l'ETL pour différentes parties du pipeline, peut également être employée.

Cas d'utilisation de l'ELT

Le modèle ELT est particulièrement efficace dans divers scénarios de données modernes :

Entreposage de données cloud

L'ELT est une solution naturelle pour les plates-formes de données cloud telles que BigQuery de Google Cloud, qui offrent une puissance de traitement et une évolutivité immenses pour gérer efficacement les transformations sur de grands ensembles de données.

Analyse de big data

Lorsque vous traitez des volumes massifs de données à grande vitesse et de grande variété, l'ELT permet une ingestion rapide dans un lac de données ou un espace de stockage évolutif. Les transformations peuvent ensuite être appliquées selon les besoins à l'aide de frameworks de traitement distribué.

Implémentation d'un lac de données

Les lacs de données sont conçus pour stocker d'énormes quantités de données brutes dans leur format natif. Les processus ELT chargent ces données brutes, et divers moteurs d'analyse et de traitement peuvent ensuite les transformer et les consommer.

Traitement des données en temps réel ou quasi en temps réel

Pour les cas d'utilisation nécessitant un accès rapide à des données récentes, l'ELT peut accélérer la phase de chargement. Des transformations peuvent ensuite être effectuées sur des sous-ensembles de ces données pour des tableaux de bord ou des applications spécifiques en temps quasi réel.

Analyse exploratoire des données et science des données

Les data scientists préfèrent souvent avoir accès à des données brutes non transformées pour effectuer l'extraction de caractéristiques, créer des modèles de machine learning et obtenir des insights sans être limités par des transformations prédéfinies. L'ELT permet de rendre ces données brutes facilement accessibles.

Consolider différentes sources de données

Lorsque vous intégrez des données provenant de nombreux systèmes disparates aux structures variées, ELT simplifie l'ingestion initiale en chargeant d'abord toutes les données dans un emplacement central, puis en les harmonisant par le biais de transformations.

Relevez vos plus grands défis avec Google Cloud

Les nouveaux clients bénéficient de 300 $ de crédits à dépenser sur Google Cloud.

Comment Google Cloud utilise l'ELT

Google Cloud fournit une suite complète de services qui aident à optimiser les architectures ELT, permettant aux organisations de créer des pipelines de données robustes et évolutifs. L'objectif est d'exploiter la puissance de services comme BigQuery pour les transformations dans la base de données.

Voici comment les services Google Cloud sont généralement utilisés dans les modèles ELT :

  • Extraction : les données peuvent être extraites de nombreuses sources à l'aide de services tels que Dataflow pour le traitement par lot et par flux, Dataproc pour les charges de travail Spark et Hadoop, ou directement via des connecteurs et des API dans les services Google Cloud. Pub/Sub peut être utilisé pour l'ingestion de données en flux continu en temps réel.
  • Chargement : les données brutes extraites sont généralement chargées dans Cloud Storage, qui agit comme un lac de données durable et hautement évolutif. Les données peuvent être chargées efficacement dans BigQuery, l'entrepôt de données multicloud sans serveur, hautement évolutif et économique de Google Cloud, à partir de Cloud Storage. Vous pouvez également diffuser des données directement dans BigQuery.
  • Transformation : c'est là que le "T" de ELT brille sur Google Cloud. BigQuery est conçu pour effectuer des transformations complexes à l'échelle du pétaoctet à l'aide de SQL standard. Son puissant moteur de traitement gère les jointures, les agrégations, les fonctions de fenêtre et d'autres transformations directement sur les données qui y sont stockées. Les utilisateurs peuvent également développer des fonctions définies par l'utilisateur (UDF) en JavaScript ou utiliser BigQuery ML pour le machine learning dans la base de données. Les données brutes restent souvent dans Cloud Storage ou dans des tables BigQuery distinctes, ce qui permet de les retransformer de manière flexible.

L'infrastructure de Google Cloud respecte les principes fondamentaux de l'ELT en fournissant un espace de stockage évolutif pour les données brutes, des capacités de chargement rapide et un moteur puissant dans BigQuery pour effectuer des transformations efficaces. Les ingénieurs de données peuvent ainsi créer des pipelines dans lesquels les données sont rapidement importées, puis affinées en fonction d'exigences analytiques spécifiques, le tout dans un environnement sans serveur géré.

Passez à l'étape suivante

Profitez de 300 $ de crédits gratuits et de plus de 20 produits Always Free pour commencer à créer des applications sur Google Cloud.

  • Faites des économies grâce à notre approche transparente concernant la tarification
  • Le paiement à l'usage de Google Cloud permet de réaliser des économies automatiques basées sur votre utilisation mensuelle et des tarifs réduits pour les ressources prépayées. Contactez-nous dès aujourd'hui afin d'obtenir un devis.
Google Cloud