Traitement de la capture des données modifiées (CDC)

Cette page vous explique comment utiliser la capture de données modifiées (CDC) dans Google Cloud Cortex Framework dans BigQuery. BigQuery est conçu pour stocker et analyser efficacement de nouvelles données.

Processus CDC

Lorsque des données changent dans votre système de données source (comme SAP), BigQuery ne modifie pas les enregistrements existants. À la place, les informations mises à jour sont ajoutées en tant que nouvel enregistrement. Pour éviter les doublons, une opération de fusion doit être appliquée par la suite. Ce processus est appelé traitement de la capture de données modifiées (CDC).

Data Foundation pour SAP inclut la possibilité de créer des scripts pour Cloud Composer ou Apache Airflow afin de fusionner ou upsert les nouveaux enregistrements issus des mises à jour et de ne conserver que la dernière version dans un nouvel ensemble de données. Pour que ces scripts fonctionnent, les tables doivent comporter certains champs spécifiques:

  • operation_flag: cet indicateur indique au script si un enregistrement a été inséré, mis à jour ou supprimé.
  • recordstamp: ce code temporel permet d'identifier la version la plus récente d'un enregistrement. Cet indicateur indique si l'enregistrement est :
    • Inséré (I)
    • Mise à jour (U)
    • Supprimé (D)

En utilisant le traitement CDC, vous pouvez vous assurer que vos données BigQuery reflètent précisément l'état le plus récent de votre système source. Cela élimine les entrées en double et fournit une base fiable pour votre analyse de données.

Structure de l'ensemble de données

Pour toutes les sources de données compatibles, les données des systèmes en amont sont d'abord répliquées dans un ensemble de données BigQuery (source ou replicated dataset), et les résultats mis à jour ou fusionnés sont insérés dans un autre ensemble de données (ensemble de données CDC). Les vues de reporting sélectionnent des données à partir du jeu de données CDC pour s'assurer que les outils et applications de reporting disposent toujours de la dernière version d'une table.

Le flux suivant montre comment le traitement CDC pour SAP dépend de operational_flag et recordstamp.

Exemple de traitement CDC pour SAP

Figure 1 Exemple de traitement CDC pour SAP.

Le flux suivant illustre l'intégration des API dans les données brutes et le traitement CDC pour Salesforce, en fonction des champs Id et SystemModStamp produits par les API Salesforce.

Intégration des API aux données brutes et au traitement CDC pour Salesforce

Figure 2 Intégration des API aux données brutes et au traitement CDC pour Salesforce.

Certains outils de réplication peuvent fusionner ou mettre à jour les enregistrements lors de leur insertion dans BigQuery. La génération de ces scripts est donc facultative. Dans ce cas, la configuration ne comporte qu'un seul ensemble de données. L'ensemble de données de création de rapports extrait les enregistrements mis à jour à partir de cet ensemble de données pour les rapports.