Traitement de l'ingestion de la capture de données modifiées (CDC)

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

Processus de CDC

Lorsque des données sont modifiées dans votre système de données source (comme SAP), BigQuery ne modifie pas les enregistrements existants. Au lieu de cela, 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é ingestion de la capture de données modifiées (CDC).

Data Foundation for SAP inclut la possibilité de créer des scripts pour Managed Service pour Apache Airflow ou Apache Airflow afin de fusionner ou upsert les nouveaux enregistrements résultant 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 des champs spécifiques :

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

En utilisant le traitement CDC, vous pouvez vous assurer que vos données BigQuery reflètent avec précision 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 création de rapports sélectionnent les données de l'ensemble de données CDC pour s'assurer que les outils et applications de création de rapports 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 générés par les API Salesforce.

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

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

Certains outils de réplication peuvent fusionner ou upsert 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 récupère les enregistrements mis à jour pour la création de rapports à partir de cet ensemble de données.