Qu'est-ce que l'ETL ?

Extract, transform, and load (ETL) est le processus utilisé pour rassembler des données provenant de plusieurs sources et les regrouper pour faciliter la découverte, la création de rapports, l'analyse et la prise de décision.

Les sources de données peuvent être très diverses en termes de type, de format, de volume et de fiabilité, de sorte que les données doivent être traitées pour être utiles lorsqu'elles sont rassemblées. Les magasins de données cibles peuvent être des bases de données, des data warehouses ou des lacs de données, selon les objectifs et la mise en œuvre technique.

Les trois étapes distinctes d'ETL

Extract
Pendant l'extraction, l'ETL identifie les données et les copie à partir de leurs sources, afin de pouvoir les transporter vers le datastore cible. Les données peuvent provenir de sources structurées et non structurées, notamment de documents, de courriels, d'applications commerciales, de bases de données, d'équipements, de capteurs, de tiers, etc.

Transform
Les données extraites étant brutes dans leur forme d'origine, elles doivent être cartographiées et transformées pour être préparées à l'éventuel stockage de données. Dans le processus de transformation, l'ETL valide, authentifie, déduplique et/ou agrège les données de manière à rendre les données résultantes fiables et interrogeables.

Load
L'ETL déplace les données transformées dans le datastore cible. Cette étape peut impliquer le chargement initial de toutes les données sources, ou le chargement de changements incrémentiels dans les données sources. Vous pouvez charger les données en temps réel ou par lots programmés.

ELT ou ETL : quelle est la différence ?

L'étape de transformation est de loin la plus complexe du processus ETL. L'ETL et l'ELT diffèrent donc sur deux points principaux :

  • Le moment où la transformation a lieu
  • Le lieu de la transformation

Dans un data warehouse traditionnel, les données sont d'abord extraites des « systèmes sources » (systèmes ERP, systèmes CRM, etc.). Les outils OLAP et les requêtes SQL dépendent de la normalisation des dimensions des ensembles de données pour obtenir des résultats agrégés. Cela signifie que les données doivent subir une série de transformations.

Traditionnellement, ces transformations sont effectuées avant que les données ne soient chargées dans le système cible, généralement un data warehouse relationnel. .

Cependant, avec l'évolution des technologies de stockage et de traitement des données qui sous-tendent l'entreposage des données, il est devenu possible d'effectuer des transformations au sein du système cible. Les processus ETL et ELT impliquent tous deux des zones de transit. Dans l'ETL, ces domaines se trouvent dans l'outil, qu'il soit propriétaire ou personnalisé. Ils se situent entre le système source (par exemple, un système CRM) et le système cible (le data warehouse).

En revanche, avec les ELT, la zone de transit se trouve dans le data warehouse et le moteur de base de données qui alimente le SGBD effectue les transformations, contrairement à un outil ETL. Par conséquent, l'une des conséquences immédiates des ELT est que vous perdez les fonctions de préparation et de nettoyage des données que les outils ETL fournissent pour faciliter le processus de transformation des données.

ETL et data warehouses d'entreprise

Traditionnellement, les outils d'ETL étaient principalement utilisés pour fournir des données aux data warehouses d'entreprise supportant les applications de business intelligence (BI). . Ces data warehouses sont conçus pour représenter une source fiable de vérité sur tout ce qui se passe dans une entreprise, toutes activités confondues. Les données de ces entrepôts sont soigneusement structurées à l'aide de schémas, de métadonnées et de règles strictes qui régissent la validation des données.

Les outils ETL pour les data warehouses d'entreprise doivent répondre aux exigences en matière d'intégration de données, telles que les chargements par lots à haut volume et à haute performance, les processus d'intégration par événements et à flux continu, les transformations programmables et les orchestrations, afin de pouvoir gérer les transformations et les flux de travail les plus exigeants et de disposer de connecteurs pour les sources de données les plus diverses.

Après avoir chargé les données, vous disposez de plusieurs stratégies pour les maintenir synchronisées entre les datastores source et cible. Vous pouvez recharger périodiquement l'ensemble des données, planifier des mises à jour périodiques des dernières données ou vous engager à maintenir une synchronisation complète entre le data warehouse source et le data warehouse cible. Une telle intégration en temps réel est désignée sous le nom de « change data capture » (CDC). Pour ce processus avancé, les outils ETL doivent comprendre la sémantique des transactions des bases de données sources et transmettre correctement ces transactions au data warehouse cible.

ETL et data marts

Les data marts sont des magasins de données cibles plus petits et plus ciblés que les data warehouses d'entreprise. Ils peuvent, par exemple, se concentrer sur les informations relatives à un seul département ou à une seule ligne de produits. Pour cette raison, les utilisateurs d'outils ETL pour les data marts sont souvent des spécialistes de la ligne de métier (LOB), des analystes de données et/ou des data scientists.

Les outils ETL pour les data marts doivent être utilisables par le personnel commercial et les gestionnaires de données, plutôt que par les programmeurs et le personnel informatique. Par conséquent, ces outils doivent disposer d'un flux de travail visuel pour faciliter la mise en place de pipelines ETL.

En savoir plus sur la conception de flux de données sans code

ETL ou ELT et lacs de données

Les lacs de données suivent un modèle différent des data warehouses et des data marts. Les lacs de données stockent généralement leurs données dans des systèmes de stockage objet ou des systèmes de fichiers distribués Hadoop (HDFS), ce qui leur permet de stocker des données moins structurées et sans schéma, et de prendre en charge plusieurs outils pour interroger ces données non structurées.

Un autre modèle que cela permet est l'extraction, le chargement et la transformation (ELT), dans lequel les données sont d'abord stockées « telles quelles » et seront transformées, analysées et traitées après avoir été capturées dans le lac de données. Ce modèle offre plusieurs avantages.

  • Toutes les données sont enregistrées ; aucun signal n'est perdu en raison de l'agrégation ou du filtrage.
  • Les données peuvent être ingérées très rapidement, ce qui est utile pour l'Internet of Things (IoT) le streaming, l'analyse des journaux, les métriques des sites Web, etc.
  • Cela permet de découvrir des tendances qui n'étaient pas prévues au moment de la capture.
  • Il permet le déploiement de nouvelles techniques d'intelligence artificielle (IA) qui excellent dans la détection de motifs dans de grands ensembles de données non structurés.

Les outils ETL pour les lacs de données comprennent des outils d'intégration visuelle des données, car ils sont efficaces pour les scientifiques et les ingénieurs de données. Les outils supplémentaires souvent utilisés dans l'architecture des lacs de données sont les suivants :

  • Services Cloud Streaming capables d'ingérer de grands flux de données en temps réel dans des lacs de données pour la messagerie, les journaux d'application, la télémétrie opérationnelle, le suivi des données de clickstream web, le traitement des événements et l'analyse de la sécurité. La compatibilité avec Kafka garantit que ces services peuvent récupérer des données à partir de sources de données quasi infinies.
  • Services cloud basés sur Spark qui peuvent effectuer rapidement des tâches de traitement et de transformation des données sur de très grands ensembles de données. Les services Spark peuvent charger les ensembles de données à partir d'un stockage objet ou de HDFS, les traiter et les transformer en mémoire à travers des clusters évolutifs d'instances de calcul, et réécrire la sortie vers le lac de données ou vers des data marts et/ou des data warehouses.

Cas d'utilisation d'ETL

Le processus ETL est fondamental pour de nombreux secteurs en raison de sa capacité à ingérer des données rapidement et de manière fiable dans des lacs de données pour la data science et l'analyse, tout en créant des modèles de haute qualité. Les solutions ETL peuvent également charger et transformer des données transactionnelles à grande échelle pour créer une vue organisée à partir de grands volumes de données. Les entreprises peuvent ainsi visualiser et prévoir les tendances du secteur. Plusieurs secteurs s'appuient sur l'ETL pour obtenir des informations exploitables, prendre des décisions rapides et gagner en efficacité.

Services financiers
Les établissements de services financiers collectent de grandes quantités de données structurées et non structurées pour obtenir des informations sur le comportement des clients. Ces informations permettent d'analyser les risques, d'optimiser les services financiers des banques, d'améliorer les plateformes en ligne et même d'approvisionner les distributeurs automatiques de billets en espèces.

Pétrole
Les industries pétrolières et gazières utilisent des solutions ETL pour générer des prévisions sur l'utilisation, le stockage et les tendances dans des zones géographiques spécifiques. L'ETL s'efforce de rassembler le plus d'informations possible à partir de tous les capteurs d'un site d'extraction et de traiter ces informations pour en faciliter la lecture.

Automobile
Les solutions ETL permettent aux concessionnaires et aux fabricants de comprendre leurs modèles de vente, de calibrer leurs campagnes marketing, de réapprovisionner les stocks et de suivre les pistes clients.

Télécommations
Avec le volume et la variété sans précédent des données produites aujourd'hui, les fournisseurs de télécommunications s'appuient sur les solutions ETL pour mieux gérer et comprendre ces données. Une fois ces données traitées et analysées, les entreprises peuvent les utiliser pour améliorer la publicité, les médias sociaux, le référencement, la satisfaction des clients, la rentabilité, etc.

Santé
Dans le but de réduire les coûts tout en améliorant les soins, le secteur de la santé utilise des solutions ETL pour gérer les dossiers des patients, recueillir des informations sur les assurances et répondre aux exigences réglementaires en constante évolution.

Sciences de la vie
Les laboratoires cliniques s'appuient sur les solutions ETL et l'intelligence artificielle (IA) pour traiter les différents types de données produites par les instituts de recherche. Par exemple, la collaboration au développement d'un vaccin nécessite la collecte, le traitement et l'analyse d'énormes quantités de données.

Secteur public
Avec l'émergence rapide des capacités de l'Internet of Things (IoT), les villes intelligentes utilisent l'ETL et la puissance de l'IA pour optimiser le trafic, surveiller la qualité de l'eau, améliorer le stationnement, etc.

Produits et solutions ETL

Suite SOA (architecture orientée service)
Comment réduire la complexité de l'intégration d'applications ? Grâce à des capacités d'intégration simplifiées dans le cloud, sur le mobile, sur site et dans l'IdO, le tout au sein d'une seule et même plateforme, cette solution permet d'accélérer l'intégration et d'accroître la productivité, tout en réduisant le coût total de possession (TCO). De nombreuses applications d'entreprise, dont Oracle E-Business Suite, utilisent largement ce produit pour orchestrer les flux de données.

GoldenGate
La transformation digitale exige souvent de déplacer les données de l'endroit où elles sont capturées à celui où elles sont nécessaires, et GoldenGate est conçu pour simplifier ce processus. Oracle GoldenGate est une solution de réplication de données à haut débit pour l'intégration en temps réel de bases de données hétérogènes situées sur site, dans le cloud ou dans une base de données autonome. GoldenGate améliore la disponibilité des données sans affecter les performances du système, en fournissant un accès aux données en temps réel et des rapports opérationnels.

Cloud Streaming
Notre solution Cloud Streaming fournit une solution entièrement gérée, évolutive et durable pour l'ingestion et la consommation de flux de données volumineux en temps réel. Utilisez ce service pour la messagerie, les journaux d'application, la télémétrie opérationnelle, les données de flux de clics sur le Web ou toute autre instance dans laquelle les données sont produites et traitées de manière continue et séquentielle dans un modèle de messagerie de type publication-abonnement. Il est entièrement compatible avec Spark et Kafka.