Accueil les sujets Qu'est-ce qu'un pipeline de données Qu’est-ce qu’un pipeline de données ?
Découvrir IBM DataStage Abonnez-vous à la newsletter d’IBM
Illustration d’un collage de pictogrammes représentant des nuages, un graphique circulaire et des pictogrammes de graphique
Qu'est-ce qu'un pipeline de données ?

Un pipeline de données est une méthode selon laquelle des données brutes sont ingérées à partir de diverses sources de données, transformées, puis transférées vers un magasin de données tel qu’un data lake ou un entrepôt de données, à des fins d’analyse. 

Avant d’être injectées dans un référentiel de données, les données subissent généralement un certain traitement. Il s’agit notamment de transformations telles que le filtrage, le masquage et l’agrégation, qui garantissent une standardisation et une intégration des données toutes deux appropriées. Cela est particulièrement important lorsque la destination du jeu de données est une base de données relationnelle. Ce type de référentiel de données comporte un schéma défini qui nécessite un alignement, c’est-à-dire une mise en correspondance des colonnes et des types de données, afin de mettre à jour les données existantes avec de nouvelles données. 

Comme leur nom l’indique, les pipelines de données servent de « tuyaux » aux projets de science des données ou aux tableaux de bord de business intelligence. Les données peuvent provenir d’une grande variété d’endroits (API, bases de données SQL et NoSQL, fichiers, etc.) mais malheureusement, ces données ne sont généralement pas prêtes à être utilisées immédiatement. Lors du sourcing, la traçabilité des données est suivie pour documenter la relation entre les données présentes dans diverses applications d’entreprise et informatiques. Il s’agit de déterminer, par exemple, l’endroit où se trouvent actuellement les données et la manière dont elles sont stockées dans un environnement (sur site, dans un data lake ou dans un entrepôt de données).

Les tâches de préparation des données reposent généralement sur les épaules des data scientists ou des ingénieurs de données, qui structurent les données pour répondre aux besoins des cas d’utilisation métier et traitent d’énormes quantités de données. Le type de traitement requis par un pipeline de données est généralement déterminé en associant analyse exploratoire des données et définition des exigences métier. Après avoir été correctement filtrées, fusionnées et synthétisées, les données peuvent être stockées et extraites pour être utilisées. Un pipeline de données bien organisé constitue la base de divers projets axés sur les données, comme l’analyse exploratoire de données, la visualisation de données et les tâches de machine learning. 

Types de pipelines de données

Il existe deux principaux types de pipelines de données, qui sont le traitement par lot et les flux de données en continu.

Traitement par lot

Le développement du traitement par lots a été une étape cruciale dans la construction d’infrastructures de données fiables et évolutives. En 2004, MapReduce, un algorithme de traitement par lots, a été breveté, puis intégré dans des systèmes open source comme Hadoop, CouchDB et MongoDB.

Comme son nom l’indique, le traitement par lots permet de charger des « lots » de données dans un référentiel à des intervalles définis, généralement programmés pendant les heures creuses. Ainsi, les autres workloads ne sont pas affectées, car les tâches de traitement par lots impliquent généralement d’importants volumes de données et sont susceptibles de surcharger le système dans son intégralité. Le traitement par lots est généralement le pipeline de données optimal lorsqu’il n’y a pas un besoin immédiat d’analyser un jeu de données particulier (par exemple, les comptes mensuels), et il est davantage associé au processus d’intégration de données ETL (extraction, transformation, chargement).

Les tâches de traitement par lots forment un workflow de commandes séquencées, où la sortie d’une commande devient l’entrée de la commande suivante. Par exemple, une commande peut lancer l’ingestion de données, la commande suivante peut déclencher le filtrage de certaines colonnes, et la commande d’après peut gérer l’agrégation. Cette série de commandes se poursuit jusqu’à ce que la qualité des données soit complètement transformée et réécrite dans un référentiel de données.

Flux de données en continu

Contrairement au traitement par lots, les pipelines de données en continu, également appelés « architectures orientées événements », traitent en permanence les événements générés par diverses sources telles que les capteurs ou les interactions des utilisateurs au sein d’une application. Les événements sont traités et analysés, puis stockés dans des bases de données ou envoyés en aval pour une analyse plus approfondie. 

Les données en continu sont utilisées lorsqu’il est nécessaire de les mettre à jour en permanence. Par exemple, les applications et les systèmes de point de vente ont besoin de données en temps réel pour mettre à jour les stocks et l’historique des ventes. Cela permet aux commerçants d’informer les consommateurs sur la disponibilité des produits. Une action telle la vente d’un produit est considérée comme un « événement », et les événements associés, comme l’ajout d’un article dans le panier, sont généralement regroupés pour former un « sujet » ou un « flux ». Ces événements sont ensuite transmis par le biais de systèmes de messagerie ou de courtiers de messages tels que l’offre open source Apache Kafka. 

Étant donné que les événements de données sont traités peu de temps après leur survenue, les systèmes de traitement en continu ont une latence plus faible que les systèmes de traitement par lots, mais sont considérés moins fiables que ces derniers, car les messages peuvent être involontairement abandonnés ou rester longtemps dans la file d’attente. Les courtiers de messages permettent de répondre à cette préoccupation grâce aux accusés de réception, qui permettent au consommateur de confirmer le traitement du message au courtier pour qu’il le supprime de la file d’attente. 

Démarrer avec IBM Cloud Pak for Data

Architecture de pipeline de données

Trois étapes principales composent l’architecture d’un pipeline de données. 

1. Ingestion de données : les données sont collectées à partir de diverses sources comme les plateformes SaaS (logiciel à la demande), les appareils connectés (IdO) et les appareils mobiles, et à partir de diverses structures (données structurées et non structurées). Dans le cas des données de streaming, ces sources de données brutes sont généralement appelées producteurs, éditeurs ou expéditeurs. Si les entreprises peuvent choisir d’extraire les données uniquement lorsqu’elles sont prêtes à les traiter, il est préférable de transférer tout d’abord les données brutes auprès d’un fournisseur d’entrepôt de données cloud. Ainsi, si l’entreprise doit apporter des modifications aux tâches de traitement des données, elle peut mettre à jour les données historiques. Au cours de ce processus d’ingestion des données, plusieurs contrôles et vérifications peuvent être effectués pour garantir la cohérence et l’exactitude des données.

2. Transformation des données : au cours de cette étape, une série de tâches est exécutée pour traiter les données dans le format requis par le référentiel de destination. Ces tâches intègrent l’automatisation et la gouvernance des flux de travaux répétitifs tels que le reporting d’entreprise, afin de garantir que les données sont nettoyées et transformées de manière cohérente.  Dans le cas d’un flux de données au format JSON imbriqué, l’étape de transformation des données consistera à dérouler ce fichier JSON pour en extraire les champs clés à des fins d’analyse.

3. Stockage des données : les données transformées sont ensuite stockées dans un référentiel auquel différentes parties prenantes peuvent accéder. Dans le cas des données de streaming, ces données transformées sont généralement appelées consommateurs, abonnés ou destinataires.  

Pipeline de données vs pipeline ETL

Les termes « pipeline de données » et « pipeline ETL » sont parfois utilisés de manière interchangeable. Il convient toutefois de rappeler que les pipelines ETL représentent une sous-catégorie de pipelines de données. Trois aspects principaux permettent de distinguer ces deux types de pipelines :

  • Les pipelines ETL suivent une séquence bien spécifique. Ils extraient les données, les transforment, puis les chargent et les stockent dans un référentiel. Tous les pipelines de données ne suivent pas nécessairement cette séquence. En fait, les pipelines ELT (extraction, chargement, transformation) se sont popularisés avec l'avènement des outils cloud natifs grâce auxquels les données peuvent être générées et stockées sur plusieurs sources et plateformes. Si l’ingestion de données demeure la première étape, avec ce type de pipeline, la transformation intervient une fois les données chargées dans l’entrepôt de données cloud.  

  • Les pipelines ETL impliquent souvent un traitement par lots, mais comme indiqué ci-dessus, la portée des pipelines de données est plus large. Ils peuvent également inclure un traitement des flux. 

  • Enfin, bien que cela soit peu probable, les pipelines de données dans leur ensemble n’exigent pas nécessairement une transformation des données, contrairement aux pipelines ETL. Il est rare qu’un pipeline de données n’ait pas recours aux transformations pour faciliter l’analyse des données.  
Cas d'utilisation des pipelines de données

Face à l’évolution continue du big data, l’importance de la gestion des données ne cesse de croître. Parmi les diverses fonctions remplies par les pipelines de données, voici celles qui sont destinées aux applications métier :

  • Analyse exploratoire des données : les data scientists s’appuient sur l’analyse exploratoire des données (EDA) pour étudier les jeux de données et synthétiser leurs principales caractéristiques, souvent grâce aux méthodes de visualisation. Cela leur permet de déterminer la meilleure façon de manipuler les sources de données pour obtenir les réponses recherchées et facilite la découverte des schémas, la détection des anomalies, le test des hypothèses, ainsi que la vérification des suppositions

  • Visualisation de données : pour représenter les données par le biais de graphiques courants, on peut créer différents types de visualisations de données : diagrammes, tracés, infographies et animations. Ces présentations visuelles informatives illustrent les relations complexes entre les données, ainsi que les analyses axées sur les données d’une manière facile à comprendre.

  • Machine learning : le machine learning est une branche de l’intelligence artificielle (IA) et de l’informatique qui utilise données et algorithmes pour imiter la façon dont les humains apprennent, et améliorer progressivement sa précision. Grâce à des méthodes statistiques, les algorithmes sont entraînés pour effectuer des classifications ou des prédictions et révéler des informations clés dans le cadre des projets d’exploration de données.

  • Observabilité des données : afin de vérifier l’exactitude et la sûreté des données utilisées, la pratique d’observabilité des données associe divers outils de surveillance, de suivi et d’alerte, tant pour les événements attendus que pour les anomalies.
Solutions IBM
Ressources Créer un pipeline de données complet avec IBM Cloud Pak® for Data et Datameer

Lisez le blog sur la façon dont le partenariat entre IBM Cloud Pak for Data et Datameer peut vous aider à créer un pipeline de données solide.

Créez une base de données solide pour l'IA

Lisez le smartpaper sur la façon de créer une base de données solide pour l'IA en se concentrant sur trois domaines clés de la gestion des données : l'accès, la gouvernance, la confidentialité et la conformité.

State Bank of India

Découvrez comment la State Bank of India a utilisé plusieurs solutions IBM, ainsi que la méthodologie IBM Garage, pour développer une plateforme complète de banque en ligne.

Pipelines de données et IBM

IBM Cloud Pak for Data s'appuie sur les microservices et ses fonctionnalités remarquables en matière de données et d'IA pour permettre l'intégration intelligente des données dans les systèmes distribués, offrant ainsi aux entreprises une vision globales des performances de l'entreprise. Cela facilite une collecte, une organisation et un aperçu plus rapides des données d'entreprise, et permet aux entreprises de prendre des décisions à plus grande échelle. Les équipes de gestion des données peuvent également être sûres que leurs données sont sécurisées grâce aux cadres de sécurité compétitifs d'IBM qui permettent de garantir le respect des politiques réglementaires et de réduire tout risque de conformité. Découvrez comment IBM Cloud Pak® for Data et IBM Streams peuvent améliorer l'architecture du pipeline de données de votre entreprise dans plusieurs environnements.

IBM Cloud Pak® for Data