Qu’est-ce que la capture des données modifiées (CDC) ?

Une femme travaille sur un ordinateur portable dans un entrepôt.

Auteurs

Alice Gomstyn

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

Qu’est-ce que la capture des données modifiées (CDC) ?

La capture des données modifiées, ou (Change Data Capture ou CDC), est une technique permettant d’identifier et d’enregistrer les modifications apportées à une base de données.La CDC transmet ces changements en temps réel à différents systèmes cibles, ce qui permet de synchroniser les données dans toute l’entreprise immédiatement après une modification.

 

Il s’agit d’une méthode d’intégration des données en temps réel, visant à combiner et harmoniser des données potentiellement cloisonnées ou incohérentes au sein de l’entreprise. D’autres méthodes incluent l’intégration de flux de données, la virtualisation des données et l’intégration d’applications.

La capacité de la capture des données modifiées à maintenir les systèmes à jour en temps réel, avec une faible latence, est essentielle pour la réussite de nombreux projets : analyses en temps réel, migrations vers le cloud, ou encore modèles d’intelligence artificielle. Elle s’applique à de nombreux cas d’utilisation, dans des secteurs aussi variés que le commerce de détail, la finance ou la santé. Elle contribue notamment à la détection des fraudes, à la gestion de la chaîne d’approvisionnement et à la conformité réglementaire.

Il existe plusieurs approches de la capture des données modifiées, les plus courantes étant : la CDC basée sur les journaux (log-based), la CDC basée sur les horodatages (timestamp-based) et la CDC basée sur les déclencheurs (trigger-based). Les entreprises peuvent mettre en œuvre la capture des données modifiées à l’aide d’outils intégrés aux bases de données, de plateformes open source ou de solutions tierces.

Design 3D de balles roulant sur une piste

Les dernières actualités et informations en matière d’IA 


La newsletter hebdomadaire Think vous apporte toute l’actualité sur l’IA, le cloud et bien d’autres sujets. 

Quels sont les avantages de la capture des données modifiées ?

Dans la gestion moderne des données, la capture des données modifiées s’impose comme un mécanisme essentiel d’ingénierie des données. Les environnements de données des entreprises sont aujourd’hui de plus en plus vastes et complexes. Ils peuvent inclure des données issues d’objets connectés (Internet des objets ou IdO), de bases de données distribuées, d’applications et de nombreuses autres sources hétérogènes. Maintenir une qualité et une cohérence des données à l’échelle de cet écosystème en constante expansion est un défi permanent.

Dans le même temps, les entreprises ont besoin d’informations exactes et à jour, exploitables pour la prise de décision en temps réel. La capture des données modifiées fait partie des méthodes qui permettent de répondre à cette exigence.

Elle permet de créer un pipeline de données à faible latence, capable de transmettre des données actualisées de manière plus efficace et moins gourmande en ressources que d’autres méthodes d’intégration des données. Par exemple, la réplication des données consiste à copier des jeux de données entiers. En revanche, la CDC ne transmet que les données qui ont été modifiées, ce qui réduit la charge sur les systèmes sources, le trafic réseau et la consommation de ressources informatiques.

Cela permet d’accéder rapidement et efficacement à des informations récentes et fiables, avec de nombreux avantages à la clé :

Prise de décision en temps réel

Un flux en continu de données modifiées permet l’analyse en temps réel et la business intelligence. Grâce à ces capacités, les entreprises peuvent répondre aux exigences d’un environnement économique régi par l’instantanéité et la disponibilité 24 h/24.

Migration vers le cloud réussie

Lors de migrations vers le cloud, la capture des données modifiées permet de transmettre rapidement les changements intervenus sur site vers les tables de données dans le cloud, garantissant la cohérence entre les deux environnements. Cette approche réduit également les interruptions de service durant la migration.

Amélioration des processus ETL

Les pipelines de données ETL (extraction, transformation, chargement) sont essentiels à l’analyse des données et aux flux de travail en machine learning. Mais l’exécution de l’ETL, qui repose sur un traitement par lots, est souvent lente et consommatrice de ressources. L’intégration de la CDC dans les processus ETL permet d’optimiser l’utilisation des ressources et d’accélérer le transfert des données.

Meilleures performances en intelligence artificielle

La mise en œuvre de la capture des données modifiées permet de garantir l’actualité des données sources utilisées par les modèles, afin que les grands modèles de langage (LLM) produisent des résultats précis et à jour. Par exemple, dans les cas d’utilisation de type génération augmentée de récupération (RAG), les modèles d’IA peuvent interagir avec des bases de connaissances externes pour fournir des réponses plus pertinentes.

Mixture of Experts | 12 décembre, épisode 85

Décryptage de l’IA : Tour d’horizon hebdomadaire

Rejoignez notre panel d’ingénieurs, de chercheurs, de chefs de produits et autres spécialistes de premier plan pour connaître l’essentiel de l’actualité et des dernières tendances dans le domaine de l’IA.

Comment fonctionne la capture des données modifiées ?

La capture des données modifiées identifie et enregistre les événements de modification qui se produisent dans différentes sources de données. Ces sources peuvent inclure des bases de données relationnelles telles qu’Oracle, PostgreSQL, MySQL, Azure SQL de Microsoft, SQL Server de Microsoft, mais aussi des bases de données non relationnelles (NoSQL) comme Apache Cassandra ou MongoDB.

Une fois les modifications détectées, elles sont transférées depuis la base de données source vers les systèmes cibles en temps réel ou quasi réel. Des magasins de données tels que les data lakes et les entrepôts de données ; les plateformes d’analyse en temps réel et de données en flux continu, comme Apache Kafka et Apache Spark ; ainsi que les solutions ETL (extraction, transformation, chargement) et ELT (extraction, chargement, transformation) sont autant d’exemples de systèmes cibles.

La capture des données modifiées peut être initiée soit par les systèmes cibles (approche dite « push »), soit par les systèmes sources (approche dite « pull »). Dans le premier cas, le système source « pousse » les modifications vers les systèmes cibles. Dans le second cas, le système cible interroge régulièrement le système source et « tire » les modifications dès qu’elles sont détectées.

Méthodes courantes de capture des données modifiées

Il existe plusieurs méthodes pour mettre en œuvre la capture des données modifiées. Les plus courantes sont les suivantes : 

  • CDC basée sur les journaux (log-based CDC)
  • CDC basée sur les horodatages (timestamp-based CDC)
  • CDC basée sur les déclencheurs (trigger-based CDC)

CDC basée sur les journaux (log-based CDC)

Les journaux de transactions sont une fonctionnalité standard des bases de données, utilisée pour enregistrer toutes les opérations effectuées. (Ces fichiers journaux peuvent également servir à restaurer une base de données en cas de défaillance système.)

Dans la CDC basée sur les journaux, une application CDC traite les modifications enregistrées dans le journal et transmet les mises à jour aux autres systèmes. Cette méthode gagne en popularité, notamment parce qu’elle repose sur les journaux plutôt que sur des requêtes, ce qui limite les impacts sur les performances du système source. Cependant, la diversité des formats de journaux de transactions peut compliquer la mise en œuvre de la CDC basée sur les journaux sur différents types de bases de données.

CDC basée sur les horodatages (timestamp-based CDC)

La capture des données modifiées basée sur les horodatages – également appelée CDC par requêtes – nécessite que les schémas des tables de la base de données comportent des colonnes (comme des colonnes de type timestamp) indiquant la date et l’heure des modifications apportées aux enregistrements. Un outil de CDC peut alors utiliser cette colonne d’horodatage pour identifier les enregistrements modifiés dans une table source, puis transmettre les mises à jour aux systèmes cibles.

Bien que la CDC basée sur les horodatages soit relativement simple à mettre en œuvre, elle peut entraîner une charge supplémentaire sur le système lorsque les interrogations des colonnes d’horodatage sont fréquentes. Elle présente également une limite importante : les opérations de suppression ne sont pas capturées si la colonne d’horodatage est supprimée en même temps que le reste de la ligne.

CDC basée sur les déclencheurs (trigger-based CDC)

Dans la CDC basée sur les déclencheurs, des procédures stockées ou fonctions, appelées déclencheurs, sont exécutées dès qu’une modification spécifique (insertion, suppression ou mise à jour) se produit dans une base de données. Les données modifiées sont enregistrées dans ce qu’on appelle une table de changement (parfois aussi appelée table miroir).

À l’instar de la méthode basée sur les horodatages, la CDC par déclencheurs est généralement facile à implémenter. Cependant, elle peut également alourdir les systèmes sources, car les déclencheurs sont « déclenchés » à chaque transaction dans la table source.

Outils de capture des données modifiées

Les outils de capture des données modifiées peuvent être natifs à certains environnements et systèmes de bases de données, comme AWS Database Migration Service, ou être déployés plus largement. Parmi les solutions logicielles non natives de CDC, on trouve des plateformes open source comme Debezium, ainsi que des plateformes commerciales comme IBM Streamsets ou Oracle GoldenGate.

Lorsqu’elles évaluent la solution à adopter, les entreprises peuvent prendre en compte plusieurs critères : le coût, la compatibilité avec les systèmes sources et cibles via des connecteurs, ainsi que les interfaces de programmation (API) nécessaires à l’intégration dans leur système d’information.

Cas d’utilisation de la capture des données modifiées

Les entreprises peuvent mettre en œuvre la CDC dans de nombreux cas d’usage, notamment :

Détection des fraudes

Le suivi continu des modifications apportées aux enregistrements financiers grâce à la CDC peut permettre de détecter des activités frauduleuses avant qu’elles n’occasionnent des pertes importantes.

Intégration de l’Internet des objets (IdO)

La CDC permet d’intégrer efficacement les volumes massifs de données en temps réel générés par les objets connectés, facilitant ainsi la maintenance prédictive et la surveillance en temps réel.

Gestion des stocks et de la chaîne d’approvisionnement

L’accès en temps réel aux données de ventes, de stocks et de chaîne d’approvisionnement, rendu possible par la CDC, aide les entreprises à éviter les ruptures de stock et à prendre des décisions tarifaires stratégiques.

Conformité réglementaire

La CDC permet aux entreprises fortement réglementées de maintenir des enregistrements précis, nécessaires aux obligations de déclaration et à la conformité avec des réglementations telles que le RGPD, le Sarbanes-Oxley Act (SOX) ou encore la loi HIPAA aux États-Unis.

Solutions connexes
IBM StreamSets

Créez et gérez des pipelines intelligents de diffusion de données en continu via une interface graphique intuitive, facilitant ainsi une intégration fluide des données dans les environnements hybrides et multicloud.

Découvrir StreamSets
IBM Databand

Découvrez IBM Databand, le logiciel d’observabilité pour les pipelines de données. Il collecte automatiquement les métadonnées pour établir des lignes de base historiques, détecter les anomalies et créer des workflows afin de résoudre les problèmes de qualité des données.

Découvrir Databand
Solutions d’intégration de données

Créez des pipelines de données résilients, performants et optimisés en termes de coûts pour vos initiatives d’IA générative, vos analyses en temps réel, la modernisation de vos entrepôts et vos besoins opérationnels avec les solutions d’intégration des données d’IBM.

Découvrir les solutions d’intégration des données
Passez à l’étape suivante

Découvrez IBM DataStage, un outil ETL (Extraction, Transformation, Chargement) qui offre une interface visuelle destinée à la conception, au développement et au déploiement de pipelines de données. Il est disponible en version SaaS géré sur IBM Cloud, en auto-hébergement et en tant qu’extension pour IBM Cloud Pak for Data.

Explorer DataStage Découvrir les services d’analytique