Ce guide présente BigQuery Connector pour SAP, en détaillant ses fonctionnalités et en expliquant comment il facilite l'intégration des données entre les systèmes SAP et BigQuery. BigQuery Connector pour SAP réplique vos données SAP dans BigQuery en temps quasi réel. En stockant vos données dans BigQuery, vous pouvez effectuer des analyses en exploitant l'intelligence artificielle ou le machine learning avec des données d'applications SAP en direct. Dans BigQuery, vous pouvez également intégrer vos données SAP à des données provenant d'autres sources.
BigQuery Connector pour SAP s'installe sur SAP Landscape Transformation Replication Server (SAP LT Replication Server) et utilise les interfaces et les fonctionnalités standards de SAP Landscape Transformation Replication Server. BigQuery Connector pour SAP est compatible avec toutes les sources de données compatibles avec SAP LT Replication Server.
Google Cloud a développé BigQuery Connector pour SAP en tant qu'implémentation d'un BAdI (Business Add In) SAP pour SAP LT Replication Server, en suivant le processus SDK de SAP LT Replication Server. Le connecteur utilise la fonctionnalité de capture des données modifiées (CDC, Change Data Capture) de SAP LT Replication Server.
Traitement des données
BigQuery Connector pour SAP n'autorise qu'une transformation minimale des données et met en œuvre un modèle ELT (extraction, chargement, transformation) plutôt qu'un modèle ETL (extraction, transformation et chargement). Pour plus d'informations sur ces modèles, consultez la page Procédures et modèles pour les pipelines de données.
Le connecteur suggère automatiquement les champs, les noms de champs et les types de données pour la table cible en se basant sur les données sources. Avant de créer la table BigQuery cible, vous pouvez modifier les valeurs suggérées si nécessaire. Les noms suggérés pour les champs cibles sont basés sur les descriptions des champs de la table source. Pour en savoir plus, consultez la section Options de nommage par défaut pour les champs.
Bien que BigQuery Connector pour SAP suggère automatiquement les types de données BigQuery pour la plupart des champs, les valeurs booléennes, d'horodatage et hexadécimales ne peuvent pas être interprétées automatiquement et doivent donc être mappées manuellement. Pour en savoir plus, consultez la section Mappage des types de données.
BigQuery Connector pour SAP fournit plusieurs interfaces d'amélioration qui vous permettent d'insérer vos propres améliorations personnalisées dans le code de BigQuery Connector pour SAP. Pour en savoir plus, consultez la section Sorties optimisées.
Si une table cible n'existe pas déjà dans BigQuery, BigQuery Connector pour SAP en crée une. Pour la réplication CDC via Pub/Sub, BigQuery Connector pour SAP crée également automatiquement le sujet, le schéma et l'abonnement Pub/Sub nécessaires.
Chemins de réplication compatibles
BigQuery Connector pour SAP est compatible avec les chemins de réplication suivants :
Réplication de la capture de données modifiées (CDC) via Pub/Sub
Grâce à la réplication de la capture de données modifiées (CDC) via Pub/Sub, votre table BigQuery reflète directement les modifications apportées aux tables SAP sources. Elle met à jour les données existantes et ajoute de nouveaux enregistrements pour que les données restent synchronisées. Cette approche utilise les fonctionnalités CDC de l'API Storage Write, ce qui élimine le besoin de déduplication manuelle. La CDC se concentre sur la capture et l'application des seules modifications (mises à jour, suppressions et nouvelles insertions) qui se produisent dans vos tables SAP sources.
Lorsqu'un enregistrement d'une table SAP est mis à jour ou supprimé, BigQuery Connector pour SAP publie cette modification dans un sujet Pub/Sub. Un abonnement BigQuery le transmet ensuite directement à la table BigQuery correspondante, en appliquant la modification sans doublons.
Réplication des données en flux continu
Avec la réplication de données en flux continu, votre table BigQuery ajoute en continu de nouveaux enregistrements, reflétant chaque modification sous forme d'entrée distincte en mode insertion seule. Si BigQuery reçoit une mise à jour d'un enregistrement qui existe déjà dans la table BigQuery, il insère une nouvelle instance de l'enregistrement dans cette table sans modifier l'instance existante. La dernière instance insérée de l'enregistrement reflète l'état actuel de l'enregistrement dans la table source.
Pour la réplication des données en flux continu, BigQuery Connector pour SAP utilise l'API de streaming BigQuery.
Le schéma suivant illustre les deux chemins de réplication des données de SAP vers BigQuery à l'aide de BigQuery Connector pour SAP :
Voici la répartition du flux de données et des composants pour chaque chemin :
Extraction et traitement initial des données (communs aux deux parcours)
- Source de données SAP : elle est à l'origine des données dans l'environnement SAP.
- SAP LT Replication Server : se connecte à la source de données SAP via une connexion RFC. Son rôle principal est d'extraire les données CDC de la source SAP.
- BigQuery Connector pour SAP : reçoit les données CDC extraites et détermine le chemin de réplication que les données vont emprunter en fonction des configurations.
Chemin de réplication CDC
Ce chemin d'accès se concentre sur la réplication des modifications apportées à une table CDC BigQuery via Pub/Sub :
- API REST Pub/Sub : BigQuery Connector pour SAP publie les données CDC dans Pub/Sub à l'aide de l'API REST Pub/Sub.
- Sujet Pub/Sub : il sert de courtier de messages central et reçoit les données CDC publiées.
- Schéma Pub/Sub : associé au sujet Pub/Sub, le schéma applique la structure des données, ce qui permet de maintenir la cohérence des données.
- Abonnement Pub/Sub BigQuery : s'abonne au sujet Pub/Sub et diffuse les données CDC dans la table CDC BigQuery.
- Table CDC BigQuery : destination finale des données CDC dans BigQuery. Il applique les modifications (mises à jour/suppressions) et insère de nouveaux enregistrements, en conservant une vue dédupliquée et à jour des données SAP.
- Sujet de lettres mortes : sujet Pub/Sub auquel sont envoyés les messages qui n'ont pas pu être traités par l'abonnement BigQuery. Ils peuvent ainsi être examinés manuellement plus en détail, ce qui permet d'éviter toute perte de données.
Chemin de réplication des flux de données (insertion uniquement)
Ce chemin est conçu pour insérer en continu de nouveaux enregistrements dans une table de préparation BigQuery, en conservant chaque modification sous forme de nouvelle entrée :
- API REST de streaming BigQuery : BigQuery Connector pour SAP diffuse les données directement dans BigQuery à l'aide de l'API REST de streaming BigQuery.
- Table de préproduction BigQuery : destination des données en flux continu. Dans ce mode d'insertion seule, chaque modification (y compris les mises à jour et les suppressions d'enregistrements SAP existants) entraîne l'ajout d'une nouvelle ligne à cette table.
Choisir votre chemin de réplication
Cette section compare les chemins de réplication pour vous aider à déterminer celui qui correspond le mieux à vos besoins spécifiques en termes de données et à vos exigences opérationnelles.
Facteur | Réplication CDC via Pub/Sub | Réplication des données en flux continu (mode insertion uniquement) |
---|---|---|
Fonctionnement | Capture et applique uniquement les modifications apportées à la table BigQuery. | Insère chaque modification en tant que nouvel enregistrement dans la table BigQuery. |
Résultat BigQuery | Maintient un enregistrement unique et à jour en mettant à jour ou en supprimant les lignes existantes de manière native. | Chaque modification crée une entrée, ce qui entraîne la création de plusieurs versions du même enregistrement. |
Principaux avantages | Fournit une cohérence élevée des données avec les données les plus récentes. | Utile pour l'ingestion de base et fournit un audit historique. |
Architectures de déploiement
Vous devez installer BigQuery Connector pour SAP en tant que module complémentaire Business Add-In (BAdI) dans une instance SAP LT Replication Server.
L'instance SAP LT Replication Server peut se trouver sur Google Cloud, sur site ou sur un autre fournisseur cloud. Nous vous recommandons de placer votre instance SAP LT Replication Server aussi près que possible de la source de données SAP. Collaborez avec votre équipe réseau pour vous assurer qu'il y a une faible latence et un débit élevé entre le système SAP source, SAP LT Replication Server et votre ensemble de données BigQuery.
Les sections suivantes décrivent les architectures courantes recommandées pour BigQuery Connector pour SAP.
Architectures de déploiement pour la réplication CDC via Pub/Sub
Architecture des sources de données SAP sur Google Cloud
Le schéma suivant montre deux exemples d'installations SAP LT Replication Server sur Google Cloud, avec la source de données SAP sur Google Cloud.
Pour illustrer un exemple de chaque architecture, une installation utilise une architecture SAP LT Replication Server autonome, dans laquelle SAP LT Replication Server est installé sur un serveur distinct, et l'autre utilise une architecture SAP LT Replication Server intégrée, dans laquelle SAP LT Replication Server est installé sur le serveur système SAP source.
Étant donné que les instances SAP LT Replication Server sont installées surGoogle Cloud, BigQuery Connector pour SAP se connecte directement au point de terminaison de l'API Pub/Sub, sans nécessiter de connexion Cloud Interconnect ou Cloud VPN.
Architecture des sources de données SAP sur site ou sur un autre fournisseur cloud
Le schéma suivant présente deux exemples d'installations SAP LT Replication Server exécutées sur site ou sur un autre fournisseur cloud.
Pour illustrer un exemple de chaque architecture, une installation utilise une architecture SAP LT Replication Server autonome et l'autre utilise une architecture SAP LT Replication Server intégrée.
Dans les deux exemples, SAP LT Replication Server est installé dans le même environnement que la source de données SAP.
La connexion de BigQuery Connector pour SAP dans SAP LT Replication Server à Pub/Sub est fournie par une connexion Cloud Interconnect ou une connexion Cloud VPN.
Vue architecturale détaillée du flux de données
Le schéma suivant montre où BigQuery Connector pour SAP s'intègre au flux de données SAP LT Replication Server :
Les explications numérotées suivantes correspondent aux numéros du diagramme :
- Une fois SAP LT Replication Server initialisé, lorsque les enregistrements des tables sources sont insérés, mis à jour ou supprimés, le déclencheur de base de données enregistre les modifications dans les tables de journalisation.
- SAP LT Replication Server vérifie en permanence les tables de journalisation pour détecter les nouvelles entrées à l'aide d'appels RFC.
- Si SAP LT Replication Server trouve de nouvelles entrées, le moteur de lecture lit les enregistrements et appelle le moteur de mappage et de transformation.
- Le moteur de mappage et de transformation appelle le moteur d'écriture, qui appelle BigQuery Connector pour SAP.
- Le moteur d'écriture transmet les données traitées à BigQuery Connector pour SAP. Ici, l'implémentation BAdI personnalisée du connecteur transforme les enregistrements de modifications SAP en un format JSON compatible avec Avro.
Il renseigne des champs de métadonnées spécifiques comme suit :
_CHANGE_TYPE
: renseigné en fonction de l'opération SAP SLT. Par exemple,UPSERT
pour les insertions ou les mises à jour,DELETE
pour les suppressions._CHANGE_SEQUENCE_NUMBER
: code temporel précis pour l'ordre chronologique et la résolution des conflits dans BigQuery.
- Les messages transformés sont ensuite publiés par BigQuery Connector pour SAP dans Pub/Sub via l'API REST Pub/Sub, à l'aide de HTTPS sur une connexion sécurisée.
- À la réception des données, Pub/Sub effectue les actions suivantes :
- Il effectue des contrôles de validation en fonction du schéma.
- Il envoie un code d'état HTTP 200 (
OK
) à BigQuery Connector pour SAP pour les messages valides. - Insère les enregistrements dans la table BigQuery cible via l'abonnement BigQuery.
- Capture les messages qui ne peuvent pas être ingérés dans BigQuery dans une file d'attente de lettres mortes, ce qui évite la perte de données et simplifie le dépannage.
- L'API BigQuery Storage Write utilise les champs
_CHANGE_TYPE
et_CHANGE_SEQUENCE_NUMBER
dans les messages pour appliquer les modifications. L'API effectue des opérations d'insertion, de mise à jour ou de suppression, ce qui permet de maintenir des données synchronisées dans les tables BigQuery pour l'analyse des données. - BigQuery Connector pour SAP transmet le code d'état HTTP
OK
à SAP LT Replication Server, qui supprime les entrées répliquées de la table de journalisation et libère des ressources sur le système source SAP.
Architectures de déploiement pour la réplication des flux de données
Le schéma suivant montre deux exemples d'installations SAP LT Replication Server sur Google Cloud, avec la source de données SAP sur Google Cloud.
Pour illustrer un exemple de chaque architecture, un déploiement utilise une architecture SAP LT Replication Server autonome, dans laquelle SAP LT Replication Server est installé sur un serveur distinct, et l'autre utilise une architecture SAP LT Replication Server intégrée, dans laquelle SAP LT Replication Server est installé sur le serveur du système source SAP.
Étant donné que les instances SAP LT Replication Server sont installées surGoogle Cloud, BigQuery Connector pour SAP se connecte directement au point de terminaison de l'API BigQuery, sans nécessiter de connexion Cloud Interconnect ni Cloud VPN.
Dans le schéma, les systèmes SAP et BigQuery sont présentés dans différents projets Google Cloud , mais vous pouvez utiliser le même projet pour les deux, si nécessaire.
Architecture des sources de données SAP sur site ou sur un autre fournisseur cloud
Le schéma suivant présente deux exemples d'installations SAP LT Replication Server exécutées sur site ou sur un autre fournisseur cloud.
Pour illustrer un exemple de chaque architecture, une installation utilise une architecture SAP LT Replication Server autonome et l'autre utilise une architecture SAP LT Replication Server intégrée.
Dans les deux exemples, SAP LT Replication Server est installé dans le même environnement que la source de données SAP.
La connexion de BigQuery Connector pour SAP dans SAP LT Replication Server à BigQuery est fournie par une connexion Cloud Interconnect ou une connexion Cloud VPN.
Vue architecturale détaillée du flux de données
Le schéma suivant montre où BigQuery Connector pour SAP s'intègre au flux de données SAP LT Replication Server :
Les explications numérotées suivantes correspondent aux numéros du diagramme :
- Une fois SAP LT Replication Server initialisé, lorsque les enregistrements des tables sources sont insérés, mis à jour ou supprimés, le déclencheur de base de données enregistre les modifications dans les tables de journalisation.
- SAP LT Replication Server vérifie en permanence les tables de journalisation pour détecter les nouvelles entrées à l'aide d'appels RFC.
- Si SAP LT Replication Server trouve de nouvelles entrées, le moteur de lecture lit les enregistrements et appelle le moteur de mappage et de transformation.
- Le moteur de mappage et de transformation appelle le moteur d'écriture, qui appelle BigQuery Connector pour SAP.
- BigQuery Connector pour SAP effectue les actions suivantes :
- Il mappe les données SAP avec le nom de la table cible, les noms de champs et les types de données BigQuery.
- Il crée la table BigQuery, si nécessaire.
- Il envoie des enregistrements à BigQuery par fragments via l'API de streaming BigQuery.
- À la réception des données, BigQuery effectue les actions suivantes :
- Il effectue des contrôles de validation.
- Il insère des enregistrements dans la table cible.
- Il envoie un code d'état HTTP 200 (
OK
) à BigQuery Connector pour SAP.
- BigQuery Connector pour SAP transmet le code d'état HTTP
OK
à SAP LT Replication Server, qui supprime les entrées répliquées de la table de journalisation et libère des ressources sur le système source SAP.
Étapes suivantes
Pour savoir comment planifier l'installation et la configuration de BigQuery Connector pour SAP, consultez le guide de planification de BigQuery Connector pour SAP.