Skip to main content

En moyenne, les organisations gèrent régulièrement 400 sources de données. Avec littéralement des centaines d'ensembles de données à traiter, l'intégration des données et l'analyse précise des données peuvent devenir impossibles sans les bons flux de travail.

Dans ce guide, je vais vous présenter les workflows ETL et vous donner des conseils pour créer des pipelines de données ETL favorisant une meilleure fonctionnalité et une meilleure qualité des données.

Que sont les workflows ETL ?

Notre guide ultime sur l’ETL explique en détail le processus ETL, y compris les étapes d'extraction, de transformation et de chargement. Pour une fonctionnalité optimale, ces processus doivent fonctionner ensemble afin que l'information circule efficacement de la source de données jusqu'à l'entrepôt de données.

Want more from The CTO Club?

Create a free account to finish this piece and join a community of CTOs and engineering leaders sharing real-world frameworks, tools, and insights for designing, deploying, and scaling AI-driven technology.

This field is for validation purposes and should be left unchanged.
Name*

Les workflows ETL sont responsables de ce processus global. Ils incluent généralement divers outils API, connecteurs et étapes de traitement des données pour garantir que l'extraction, la transformation et le chargement s'effectuent correctement et répondent aux besoins de l'organisation.

Avantages des workflows ETL

Voici quelques avantages de workflows ETL performants :

  • Amélioration de l’accès aux données. Avec des processus ETL adaptés, vous pouvez offrir un accès en temps réel aux données pour les employés. L'extraction, la transformation et le chargement garantissent que les données sont prêtes à l'emploi une fois stockées, rendant plus facile la génération de rapports SQL, de modèles de données et d’autres requêtes.
  • Capacité à gérer le big data. Des processus ETL avancés peuvent traiter de grands ensembles de données et intégrer des données non structurées sans processus manuels chronophages. Cela permet aux organisations de mieux gérer et exploiter le big data.
  • Meilleurs processus de transformation des données. Un workflow ETL efficace intègre des éléments tels que le nettoyage et la transformation des données afin d'améliorer la conversion de données brutes en ensembles structurés exploitables.
  • Favorise l’efficacité grâce à l’automatisation. L'import des données sources, l'exécution de processus de validation et d'autres tâches peuvent être pris en charge par des outils ETL proposant l’automatisation, ce qui réduit le temps de gestion des données.
  • Possibilité d’appliquer des règles métier au sein des processus de gestion des données. Vous pouvez adapter les solutions ETL selon différents besoins organisationnels, y compris l'intégration de règles métier et de conformité au sein du workflow d'extraction, de transformation et de chargement.

Présentation du processus ETL

Avant d'aborder les principaux composants des workflows ETL et leur modélisation, voyons comment ces processus fonctionnent, ainsi que les objectifs et les défis propres à chaque étape.

Extraction

Pendant la partie extraction de l’ETL, les informations sont collectées à partir d’une ou plusieurs sources de données. L’extraction peut vous amener à rencontrer des données brutes ainsi que des données déjà traitées, dans divers formats, y compris CSV ou XML.

  • Objectif : Capturer les données les plus exhaustives et complètes possible.
  • Défis : Identifier les data lakes et sources, obtenir un accès approprié aux données, et bien choisir le moment de la collecte pour garantir des processus à jour.
Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

This field is for validation purposes and should be left unchanged.
Name*

Transformation

Le processus de transformation des données consiste à convertir les informations dans des formats compatibles avec les bases de données relationnelles et les autres méthodes de stockage ou d’analyse que vous souhaitez utiliser. Durant cette étape de l’ETL, vous pouvez considérer des outils pour la cartographie des données et le nettoyage, la déduplication, le formatage, l’ajout de métadonnées et d’autres opérations—automatisées comme manuelles.

  • Objectif : Obtenir des données propres et exploitables, formatées pour fonctionner dans votre système cible ou stockage.
  • Défis : La qualité des données constitue un défi courant lors de la transformation ; plus la qualité est faible, plus le travail de transformation est important. D'autres défis incluent les pertes de données potentielles, l'intégration de multiples types de données et la garantie de la sécurité tout au long du processus.

Chargement

Dans l’étape finale du processus ETL, les données sont chargées dans l’entrepôt de données final, afin d’être disponibles pour une utilisation par l’organisation selon les besoins.

  • Objectif : Garantir que des données propres et sécurisées sont prêtes à être utilisées pour l’analyse, les systèmes CRM ou d’autres logiciels métier.
  • Défis : Garantir la qualité et la sécurité des données sont aussi des enjeux à ce stade, et les organisations doivent mettre en place des processus de gouvernance de données pour définir qui y accède et comment. Offrir un accès en temps réel—ou aussi proche que possible—aux données peut aussi être important, mais le traitement par lots peut provoquer des retards dans le processus.

Principaux composants des workflows ETL

La première étape dans la conception de workflows ETL consiste à examiner les composants clés à inclure. Les cas d'usage de ces workflows varient et vous devrez peut-être prendre en compte des dépendances de données et de processus propres à votre organisation.

infographie des workflows ETL

Cependant, certains composants sont couramment pris en compte par les data engineers pour les workflows ETL, notamment :

  • Sources de données. D'où proviennent les données ? Cela peut inclure des fichiers importés, des courriels, des API externes et des bases de données internes.
  • Vérifications d'assurance qualité. Des processus de contrôle qualité automatisés et manuels peuvent être nécessaires à différentes étapes du workflow ETL afin de garantir que les données respectent les standards de qualité ou qu'elles répondent aux exigences du stockage final des données.
  • Processus de transformation des données. Déduplication, formatage, et autres tâches – souvent automatisées – permettent d'améliorer la qualité.
  • Connecteurs d'intégration. Des API et autres solutions techniques relient les différentes parties du processus pour assurer un flux de données fluide.
  • Lacs de données ou entrepôts. Les processus ETL traitent généralement de grandes quantités de données et il faut un espace pour stocker le produit final. Les ressources de cloud computing sont courantes.
  • Pipelines de données. Le pipeline constitue l'infrastructure globale permettant aux données de circuler de la source à la transformation puis à l'emplacement final de chargement.
  • Logiciels et solutions techniques. Vous pouvez intégrer diverses ressources technologiques pour soutenir le workflow et ses différentes tâches.

Modéliser les workflows ETL

Lors de la modélisation de vos pipelines ETL, il faut déterminer si vous souhaitez effectuer un traitement par lot ou en flux continu.

Construire un pipeline ETL avec un traitement par lot

Avec le traitement par lot, le workflow traite les données en lots ou en segments. Chaque lot est généralement déterminé à l'avance par une période temporelle—vous pouvez traiter quotidiennement, à intervalles réguliers durant la journée ou au début de chaque heure, par exemple.

Le traitement par lot est une bonne solution lorsque :

  • Vous souhaitez profiter des économies d'échelle
  • Vous disposez d'automatisation capable de traiter rapidement de grands volumes de données
  • L'accès aux données et leur traitement ne sont pas extrêmement sensibles au facteur temps

Construire un pipeline ETL avec un traitement en flux

Le traitement en flux permet aux données de circuler dans l'ETL en temps réel, sans qu'elles s'accumulent en lots à aucune étape du processus. C'est une solution plus flexible que le traitement par lot, mais il peut s'avérer plus difficile de garantir la qualité et la cohérence des données dans ce type de pipeline.

Le traitement en flux est une bonne solution lorsque :

  • Les données arrivent dans votre processus par petits segments et à des intervalles irréguliers
  • L'accès aux données est critique en temps réel, rendant nécessaire l'intégration immédiate dans le processus
  • Vous souhaitez disposer d'analyses en temps réel sans attendre le traitement par lot

Exemples de workflows ETL

Comprendre les besoins spécifiques de votre secteur en matière de flux et de gestion des données est fondamental pour bien planifier vos workflows ETL. Considérez ces exemples issus de différents secteurs pour voir comment les exigences et dépendances peuvent varier.

ETL pour les flux de données en santé

Les organisations de santé nécessitent un accès précis et rapide aux données patients et aux informations de traitement, ce qui rend les processus ETL essentiels pour réussir. Les données peuvent provenir de diverses sources, telles que des portails patients, des dossiers médicaux électroniques, des équipements d'imagerie et des fournisseurs tiers comme les laboratoires pharmaceutiques.

L'un des plus grands défis de l'ETL en santé est de créer des processus sécurisés conformes à la législation, telle que la HIPAA. Ces processus dépendent également de sources de données alimentées par les patients, les professionnels de santé et l'automatisation, ce qui introduit des défis supplémentaires dans la transformation des données.

Dans la conception des pipelines de données de santé, vous devrez parfois combiner traitements en flux et par lot. Par exemple, les professionnels de santé peuvent avoir besoin d'un accès immédiat aux données de diagnostic, tandis que la facturation et le codage peuvent être traités en lot en fin de journée à des fins de remboursement.

ETL pour les flux de données e-commerce

Les données du commerce en ligne proviennent de nombreuses sources : courriels, portails clients, API et applications, réseaux sociaux, sites web, CRM, systèmes de comptabilité ou de paiement. Cela représente un défi majeur pour transformer les données sans en altérer la qualité.

Le traitement par lots fonctionne généralement bien pour de nombreux processus e-commerce. Par exemple, vous pouvez récupérer les données de commandes chaque heure et les intégrer dans des processus ETL qui soutiennent les tâches d'entrepôt et d'expédition. Il est aussi possible d'extraire les données de paiement quotidiennement afin que les dossiers financiers soient mis à jour. 

Cependant, si vous souhaitez offrir un service client en libre-service 24h/24 et 7j/7, des flux de travail basés sur le streaming peuvent être plus adaptés. Supposons, par exemple, que vous disposiez d'un chatbot qui fournit aux clients des informations sur les commandes, paiements, retours et crédits. Si vos processus ETL fonctionnent sur des lots quotidiens, les informations fournies par votre chatbot auront toujours au moins 24 heures de retard. 

ETL pour les flux de données financières

Les banques, les sociétés de cartes de crédit, les applications de gestion financière et autres organisations et services du secteur financier dépendent fortement de données précises. Ces organismes doivent également respecter des réglementations strictes et des normes de conformité pour assurer la sécurité des données.

Les sources de données peuvent inclure des données importées d'autres organismes financiers, des données ACH et chambres de compensation, des informations provenant d'applications destinées aux clients, ainsi que des formats moins structurés comme les e-mails. Les entreprises financières peuvent également souhaiter combiner des pipelines batch et stream pour répondre aux besoins de leurs clients. 

Avancées technologiques dans les processus ETL

Il y a plusieurs décennies, le cloud a révolutionné le traitement des données, et il reste encore aujourd'hui un élément central des avancées en logiciels d'entrepôt de données et solutions associées. Cependant, actuellement, les tendances dans l'évolution des technologies ETL sont axées sur l'intégration de l'IA, du machine learning et de l'automatisation dans les flux de travail. Parmi les avancées spécifiques, on peut citer :

  • La capacité de l'IA à gérer le Big Data. Les outils d'intelligence artificielle peuvent traiter d'énormes volumes de données en quelques secondes, ce qui permet une montée en charge des processus ETL auparavant impossible. 
  • Traitement du langage naturel. Le machine learning et le traitement du langage naturel permettent aux solutions automatisées d'aborder la transformation des données avec un éventail de compétences de « réflexion critique » bien plus large qu'auparavant. Cela crée des opportunités d'automatiser des tâches qui nécessitaient historiquement l'intervention humaine. 
  • Soutien à la gouvernance des données. Presque tous les secteurs doivent aujourd'hui répondre à des exigences réglementaires accrues, et les solutions technologiques aident de plus en plus à soutenir la conformité et la sécurisation des données. 

Meilleures pratiques pour optimiser les flux ETL

Ce qui fonctionne pour une entreprise n'est pas nécessairement la meilleure approche pour la vôtre en matière d'ETL. Cependant, j'ai rassemblé quelques bonnes pratiques générales que vous pouvez mettre en œuvre afin d'optimiser vos flux ETL, quel que soit votre environnement. 

  • Choisissez les bons outils selon vos besoins. Faites des recherches sur les outils de processus et de flux ETL afin de trouver des partenaires et des solutions adaptés à vos besoins spécifiques en matière de données. Pensez à réunir une équipe pour cartographier les flux ETL souhaités, lister les défis rencontrés, et évaluer les solutions potentielles à la lumière de ces éléments. 
  • Assurez-vous de faire les bons choix de workflow. Prenez le temps de comprendre la différence entre ETL et ELT et de déterminer si vous avez besoin d'un traitement par lots ou de flux. 
  • Surveillez régulièrement vos processus. Utilisez des outils comme SQL Server Performance Monitor — ou d'autres outils de surveillance pertinents — pour comprendre comment vos flux ETL fonctionnent. Surveillez les indicateurs d'efficacité et de qualité et ajustez au besoin pour une amélioration continue.  
  • Intégrez des technologies favorisant la qualité et l'évolutivité. Envisagez des options telles que le calcul parallèle et la compression des données pour optimiser vos workflows. 

À retenir

La conception de vos flux ETL peut faire ou défaire l'efficacité de vos processus de données. Prenez le temps d'analyser les implications de vos choix, cartographiez les workflows idéaux et sélectionnez les meilleurs outils pour extraire, transformer et charger vos données.

Restez à jour sur la technologie et les bonnes pratiques en matière de données en vous abonnant à la newsletter du CTO Club.