Jump to section

Définition de la capture des modifications de données

Copier l'URL

La capture des modifications de données, ou CDC (Change Data Capture), est un modèle d'intégration de données qui permet de suivre et d'horodater les modifications apportées aux données, puis d'alerter les autres systèmes et services concernés par ces changements. Ce processus garantit la cohérence et le bon fonctionnement de tous les systèmes qui reposent sur des données.

Aujourd'hui, les données représentent des ressources essentielles pour toutes les entreprises. Or, elles sont constamment modifiées et mises à jour, et les entreprises doivent absolument suivre tous ces changements. Que ces données concernent des transactions, des commandes, des stocks ou des clients, il est vital de les actualiser en temps réel pour assurer le bon fonctionnement de l'entreprise. Dès la mise à jour d'un bon de commande, l'intégration d'un nouveau client ou la réception d'un paiement, les applications de l'entreprise doivent être informées afin d'exécuter correctement les processus métier essentiels.

La CDC doit être associée à un service de messagerie pour transmettre les notifications des modifications apportées aux bases de données aux systèmes et applications concernés. Le moyen le plus efficace consiste à traiter les modifications comme des événements, comme dans une architecture orientée événements, et à les communiquer de manière asynchrone.

La solution Apache Kafka permet d'assurer une communication asynchrone entre la base de données et les consommateurs de données qui requièrent un modèle de consommation réutilisable et à haut volume. Il s'agit d'une plateforme de diffusion distribuée, capable de publier des flux d'événements en temps réel, de les stocker, de les traiter et d'y souscrire. Elle est conçue pour gérer des flux de données provenant de plusieurs sources et les acheminer vers différentes destinations, avec un débit élevé et une forte évolutivité.

La capture des modifications de données permet de s'assurer que les événements transmis par Kafka sont cohérents avec les modifications apportées au système source ou à la base de données d'origine. Puisque la plateforme de messagerie Kafka est asynchrone, les événements sont dissociés des consommateurs, ce qui permet de distribuer chaque modification de manière plus fiable.

Les plateformes de capture des modifications de données, telles que Debezium, suivent les modifications apportées à la base de données au fur et à mesure de leur validation en surveillant le journal des transactions. Il est sinon possible d'utiliser un simple processus de sondage ou d'interrogation. 

La CDC, qui exploite le journal des transactions, offre plusieurs avantages par rapport à ces autres solutions :

  • Capture de toutes les modifications : la CDC est conçue pour enregistrer chaque modification apportée à la base de données. Sans la CDC, certaines modifications intermédiaires et nouvelles données, telles que des mises à jour et des suppressions, risquent d'être oubliées entre deux passages de la boucle de sondage.
  • Faible surcharge : l'utilisation de la CDC en association avec Kafka permet de distribuer les modifications de données en temps quasi réel, ce qui permet d'éviter l'augmentation de la charge du processeur que peuvent causer les fréquentes interrogations.
  • Aucun effet sur le modèle de données : avec la CDC, les colonnes d'horodatage ne sont plus nécessaires pour déterminer la dernière mise à jour des données.

Voici quelques exemples de cas d'utilisation pour la capture des modifications de données.

Intégration des microservices

La CDC peut servir à synchroniser des microservices avec des applications monolithiques traditionnelles, ce qui permet de transposer aisément les modifications de données des systèmes existants aux applications basées sur des microservices.

Réplication des données

La CDC peut être utilisée pour la réplication des données dans plusieurs bases de données, data lakes ou entrepôts de données, afin de garantir que chaque ressource dispose de la dernière version des données. Ainsi, la CDC peut fournir un accès aux mêmes données actualisées à plusieurs équipes distribuées (et même cloisonnées). 

Tableaux de bord d'analyse

La CDC peut servir à transmettre des modifications de données vers des tableaux de bord d'analyse, dans le cadre de l'informatique décisionnelle par exemple, afin d'accélérer la prise de décision.

Audit et conformité

Pour respecter les exigences strictes en matière de conformité des données et éviter de lourdes sanctions en cas de manquement, il est essentiel de conserver un historique des modifications apportées aux données. La CDC peut être utilisée pour consigner les modifications de données à des fins d'audit ou d'archivage. 

Invalidation du cache

La CDC peut être utilisée pour invalider le cache et ainsi s'assurer que les entrées obsolètes d'un cache sont supprimées ou remplacées par les dernières versions.

Mises à jour des modèles CQRS

La CDC peut assurer la synchronisation des modèles de lecture CQRS (Command Query Responsibility Separation) avec les modèles primaires.

Recherche en texte intégral

La CDC peut être utilisée pour assurer la synchronisation automatique d'un index de recherche en texte intégral avec la base de données.

La capture des modifications de données aide votre entreprise à accélérer la prise de décision fondée sur les données et à réduire les pertes de temps, les efforts inutiles et les manques à gagner.

Maximisez la valeur de vos données

La CDC aide les entreprises à maximiser la valeur de leurs données en leur permettant d'exploiter les informations à différentes fins. En proposant une méthode pour mettre à jour les mêmes données de manière cohérente dans différents silos de données, la CDC offre aux entreprises la possibilité de tirer le meilleur parti des données tout en préservant leur intégrité.

Maintenez l'entreprise à jour

La CDC permet de synchroniser plusieurs bases de données et applications avec les données les plus récentes. Ainsi, les parties prenantes de l'entreprise disposent toujours d'informations pertinentes.

Prenez de meilleures décisions, plus rapidement

La CDC permet aux utilisateurs métier de prendre des décisions plus éclairées et plus rapides en se basant sur les informations les plus récentes. Sachant que les données décisionnelles perdent rapidement de la valeur, il est primordial de les mettre à la disposition de toutes les parties prenantes aussi rapidement que possible, en utilisant la CDC et Kafka. Pour développer et conserver votre avantage concurrentiel, vous devez avoir accès à des analyses fiables et en temps quasi réel.

Évitez les ralentissements

Si les données stockées dans plusieurs systèmes ne sont pas synchronisées, elles peuvent engendrer des problèmes sur ces systèmes, notamment pour le rapprochement des commandes, le traitement des transactions, le service aux clients, la génération de rapports ou le respect des calendriers de production. Chacune de ces situations peut ralentir votre activité, ce qui se traduit par un manque à gagner. La CDC permet à votre entreprise de synchroniser les données sur de nombreux systèmes, avec une faible latence, afin de garantir le bon déroulement de votre activité.

L'offre Red Hat Integration fournit des fonctions de capture des modifications de données via Debezium, en association avec Red Hat AMQ Streams et Apache Kafka. Debezium est une plateforme Open Source de CDC, distribuée et basée sur les journaux, qui prend en charge la capture des modifications issues de différents systèmes de base de données. Rapide et durable, Debezium permet aux applications de réagir rapidement sans manquer un seul événement.

Keep reading

Article

L'intégration, qu'est-ce que c'est ?

Vous souhaitez savoir en quoi consiste l'intégration ? Découvrez ce que c'est, comment l'adopter et pourquoi elle est plus efficace avec des solutions Open Source.

Article

Apache Kafka, qu'est-ce que c'est ?

Apache Kafka est une plateforme distribuée de diffusion de données en continu, capable de publier des flux d'enregistrement en temps réel, de les stocker, de les traiter et d'y souscrire.

Article

Une API, qu'est-ce que c'est ?

Une API, ou interface de programmation d'application, est un ensemble de définitions et de protocoles qui facilite la création et l'intégration de logiciels d'applications.

En savoir plus sur l'intégration

Produits

Ensemble complet de technologies d'intégration et de messagerie.

Un ensemble de produits, d'outils et de composants qui facilitent le développement et la maintenance des applications cloud-native.

Un ensemble de produits pour automatiser les décisions et processus métiers de manière intelligente. Comprend Red Hat Decision Manager, Red Hat Process Automation Manager et Red Hat Runtimes.

Services gérés et hébergés de plateforme, d'applications et de données qui rationalisent l'expérience dans le cloud hybride, réduisant ainsi les coûts d'exploitation et la complexité liés à la distribution des applications cloud-native.

Ressources

Livre numérique

Créer une infrastructure agile et renforcer la capacité d'adaptation de l'entreprise

Formations

Cours gratuit

L'intégration agile avec Red Hat : présentation technique