Comprendre la Capture des données de modification
Objectifs de formation
Une fois cette unité terminée, vous pourrez :
- Décrire en quoi consistent les événements de modification
- Expliquer les avantages de la technologie de flux continu
- Expliquer à quel moment utiliser les événements de modification
Avant de commencer ce module
Nous savons que vous êtes impatient de commencer ! Toutefois, avant de vous lancer dans ce module, vous devez être à l’aise avec certains concepts pour parvenir à le terminer.
Étant donné que les déclencheurs Apex constituent l’un des moyens de s’abonner à la capture des données de modification, vous devez comprendre les concepts de base des classes, des déclencheurs et des tests Apex.
- Si vous n’avez jamais utilisé Apex auparavant et que vous débutez avec la programmation orientée objet, consultez le parcours Développement des compétences relatives au code Apex. Ce parcours présente une série de modules qui vous aideront à développer vos connaissances sur Apex étape par étape.
- Si vous connaissez la programmation orientée objet et que vous souhaitez en savoir plus sur Apex, consultez les modules suivants : Concepts Apex de base et base de données, Déclencheurs Apex et Test Apex.
En outre, vous devez connaître les événements de plate-forme pour comprendre les événements de capture des données de modification, qui sont un type spécial d’événements de plate-forme. Bien que cela ne soit pas obligatoire pour compléter ce module, nous vous recommandons de suivre le module Concepts de base des événements de plate-forme.
Qu’est-ce que la Capture des données de modification ?
La Capture des données de modification est un produit de diffusion en continu sur la plate-forme Lightning qui vous permet d’intégrer efficacement vos données Salesforce à des systèmes externes. La Capture des données de modification vous indique en temps réel les modifications des enregistrements Salesforce et synchronise les enregistrements correspondants dans une banque de données externe. La Capture des données de modification publie des événements au sujet des modifications effectuées dans les enregistrements Salesforce correspondant à des opérations de création, de mise à jour, de suppression et de restauration.
Utilisez la Capture des données de modification pour mettre à jour les données d’un système externe au lieu d’effectuer des exportations périodiques ou d’interroger des API. La capture des modifications à l’aide des notifications d’événement issues de la Capture des données de modification garantit que vos données externes peuvent être mises à jour en temps réel et qu’elles restent à jour.
Vous pouvez considérer la capture des données de modification comme une composante du processus de réplication des données en temps réel pour le Cloud. La réplication de données comprend les étapes suivantes :
- Copie initiale (jour 0) de l’ensemble des données initialement présentes sur le système externe
- Synchronisation continue des données nouvelles et mises à jour sur le système externe
- Rapprochement des données en double entre les deux systèmes
La Capture des données de modification est la partie de la réplication consistant en une synchronisation continue (étape 2). En d’autres termes, elle publie les ajouts faits aux données Salesforce, qu’il s’agisse de nouveaux enregistrements ou d’enregistrements modifiés. La Capture des données de modification a besoin d’une application d’intégration pour recevoir des événements et effectuer des mises à jour dans le système externe.
En quoi consistent les événements de diffusion en continu et pourquoi les utiliser ?
Les événements de diffusion en continu sont des messages de notification instantanée qu’un système (l’éditeur) envoie à un autre (l’abonné). En utilisant le modèle éditeur/abonné, la capture des données de modification envoie des notifications aux abonnés chaque fois qu’une modification de données a lieu dans Salesforce. Les messages de notification sont envoyés au bus d’événements auquel les clients peuvent s’abonner à l’aide de l’API Pub/Sub ou de déclencheurs Apex. Les systèmes orientés événement optimisent la communication entre les systèmes d’entreprise distribués, améliorent l’évolutivité et fournissent des données en temps réel. L’utilisation d’une architecture pilotée par les événements pour connecter les systèmes est plus efficace que l’interrogation des données via des API telles que l’API SOAP ou l’API REST. Lorsque vous utilisez des API pour interroger le serveur concernant les mises à jour des données, le caractère nouveau des données dépend de la fréquence d’interrogation. De plus, les clients peuvent passer trop d’appels et provoquer un ralentissement du serveur.
Quand utiliser la Capture des données de modification
Supposons que vous disposiez d’un système de planification de ressource d’entreprise (ERP) stockant les informations de votre entreprise, et que certaines de vos données dans Salesforce y sont dupliquées. Pour vous assurer que vos données ERP sont à jour, vous pouvez utiliser des événements de modification pour synchroniser les modifications apportées aux enregistrements Salesforce dans votre système ERP. Par exemple, si des informations de commande sont présentes dans votre système ERP et dans Salesforce, vous pouvez transférer des événements de modification de commande de Salesforce vers une application d’intégration. L’application synchronise ensuite les modifications dans le système ERP.
Utilisez les événements de modification aux fins suivantes :
- Recevoir des notifications sur les modifications apportées aux enregistrements Salesforce, notamment les opérations de création, de mise à jour, de suppression et de restauration.
- Capturer les modifications apportées à la plupart des champs dans tous les enregistrements.
- Obtenir des informations sur les modifications apportées à l’en-tête d’événement, telles que l’origine de la modification, pour que vous puissiez ignorer les modifications générées par votre client.
- Effectuer des mises à jour de données à l’aide de limites de transaction lorsque plusieurs opérations font partie de la même transaction.
- Utiliser un schéma par version d’un événement.
- Vous abonner aux modifications en masse de manière évolutive.
- Accéder aux événements conservés pendant une durée allant jusqu’à 3 jours.
Les détails du message d’événement de modification, notamment les champs d’en-tête, vous seront présentés dans l’unité suivante.
Exemple d’application d’intégration
Robert Bullard est développeur de logiciels chez Get Cloudy Consulting, une société de conseil en hautes technologies spécialisée dans les implémentations CRM. Robert développe une application de synchronisation des ressources humaines pour un client. L’application synchronise les modifications des données d’enregistrement Salesforce avec un système RH externe à Salesforce. Le client de Robert, un service de conseil, crée et modifie certaines de ses données RH dans Salesforce en tant qu’enregistrements d’objet personnalisé appelés Employee__c. Le client souhaite que les données des employés présentes dans le système RH soient synchronisées avec Salesforce.
L’application d’intégration de Robert doit respecter les exigences suivantes :
- Répliquer dans la banque de données RH tous les enregistrements d’objet personnalisé Employee (Employee__c) nouveaux ou modifiés.
- Répliquer tous les enregistrements d’employés avec tous leurs champs.
- Utiliser un processus de réplication fondé sur les transactions. Si plusieurs mises à jour font partie d’une seule transaction, l’application d’intégration doit envoyer ces mises à jour dans le cadre d’une transaction unique.
- Reprendre la réplication à partir des notifications d’événement antérieures stockées pendant 3 jours au maximum, si le processus de réplication de données échoue.
Synchronisation de données à l’aide de la capture des données de modification
Après avoir examiné les différentes options de diffusion d’événements en continu dans Salesforce, Robert décide que la Capture des données de modification est la solution la plus adaptée pour lui. Lorsqu’il abonne son application au canal de l’objet personnalisé Employee, l’application reçoit des notifications pour chaque modification, comprenant l’ensemble des champs modifiés. L’application inspecte les champs d’en-tête dans le message de notification pour déterminer si la modification peut être validée immédiatement ou si elle doit être combinée à d’autres modifications. Étant donné que Salesforce stocke les événements de modification pendant 3 jours au maximum, l’application peut récupérer les notifications manquées.
Ressources
-
Développeurs Salesforce : Guide du développeur de la Capture des données de modification
-
Développeurs Salesforce : Guide du développeur d’API Pub/Sub
-
Trailhead : Concepts de base des événements de la plate-forme