Présentation du plug-in de réplication SAP LT

Ce guide explique comment effectuer une réplication en temps réel des données provenant d'applications SAP vers Google Cloud à l'aide de SAP paysage Transformation (SLT). Il fournit les étapes de configuration pour le système source SAP, SLT, Cloud Storage et Cloud Data Fusion.

La réplication SAP LTS Cloud Data Fusion vous permet de répliquer vos données en continu et en temps réel depuis des sources SAP vers BigQuery. Vous pouvez configurer et exécuter des transferts de données à partir des systèmes SAP sans codage.

Le processus de réplication SLT de Cloud Data Fusion est le suivant:

  1. Les données proviennent d'un système source SAP.
  2. SLT suit et lit les données, puis les transmet à Cloud Storage.
  3. Cloud Data Fusion extrait les données du bucket de stockage et les écrit dans BigQuery.

Vous pouvez transférer des données depuis des systèmes SAP compatibles, y compris des systèmes SAP hébergés dans Google Cloud.

Pour en savoir plus, consultez la présentation de SAP sur Google Cloud et les détails de l'assistance.

Avant de commencer

Pour utiliser ce plug-in, vous devez connaître les domaines suivants :

  • Créer des pipelines dans Cloud Data Fusion
  • Gestion des accès avec IAM
  • Configurer SAP Cloud et les systèmes de progiciels de gestion intégrés (ERP) sur site

Les administrateurs et les utilisateurs qui effectuent les configurations.

Les tâches de cette page sont effectuées par les personnes disposant des rôles suivants dans Google Cloud ou dans leur système SAP:

Type d'utilisateur Description
Administrateur Google Cloud Les utilisateurs affectés à ce rôle sont des administrateurs de comptes Google Cloud.
Utilisateur Cloud Data Fusion Les utilisateurs auxquels ce rôle est attribué sont autorisés à concevoir et à exécuter des pipelines de données. Le rôle Lecteur de Data Fusion (roles/datafusion.viewer) leur est accordé au minimum. Si vous utilisez le contrôle des accès basé sur les rôles, vous aurez peut-être besoin de rôles supplémentaires.
Administrateur SAP Les utilisateurs affectés à ce rôle sont les administrateurs du système SAP. Ils ont accès au téléchargement du logiciel depuis le site de service SAP. Il ne s'agit pas d'un rôle IAM.
Utilisateur SAP Les utilisateurs auxquels ce rôle est attribué sont autorisés à se connecter à un système SAP. Il ne s'agit pas d'un rôle IAM.

Opérations de réplication compatibles

Le plug-in de réplication SLT SAP est compatible avec les opérations suivantes:

Modélisation des données : toutes les opérations de modélisation des données (enregistrements insert, delete et update) sont compatibles avec ce plug-in.

Définition des données : Comme décrit dans la note SAP 2055599 (connexion à l'assistance SAP requise pour la consultation), des restrictions s'appliquent aux changements de structure de table de système source dans SLT. Certaines opérations de définition des données ne sont pas compatibles avec le plug-in (vous devez les propager manuellement).

  • Compatible :
    • Ajouter un champ non clé
  • Non compatible :
    • Ajouter/Supprimer un champ de clé
    • Supprimer le champ non clé
    • Modifier les types de données

Conditions préalables pour SAP

Les éléments suivants sont requis dans votre système SAP:

  • SLT Server 2011 SP17 ou version ultérieure est installé sur le système SAP source (intégré) ou sur un système de hub SLT dédié.
  • Votre système SAP source est SAP ECC ou SAP S/4HANA, qui est compatible avec DMIS 2011 SP17 ou version ultérieure, tel que DMIS 2018, DMIS 2020.
  • Votre module complémentaire SAP UI doit être compatible avec votre version SAP Netweaver.
  • Votre formule d'assistance est compatible avec /UI2/CL_JSON classe PL 12 ou ultérieure. Sinon, implémentez la dernière note SAP pour la classe /UI2/CL_JSON corrections en fonction de la version du module complémentaire de votre interface utilisateur, par exemple la note SAP 2798102 pour PL12.

  • Les mesures de sécurité suivantes sont en place:

Prérequis pour Cloud Data Fusion

  • Vous devez disposer d'une instance Cloud Data Fusion version 6.4.0 ou ultérieure, quelle que soit l'édition.
  • Le compte de service attribué à l'instance Cloud Data Fusion dispose des rôles requis (voir Accorder l'autorisation utilisateur à un compte de service).
  • L'appairage de VPC est nécessaire pour les instances Cloud Data Fusion privées.

Conditions préalables pour utiliser Google Cloud

Créer le bucket de stockage

Avant de créer une tâche de réplication SLT, créez le bucket Cloud Storage. La tâche transfère les données vers le bucket et actualise le bucket de préproduction toutes les cinq minutes. Lorsque vous exécutez la tâche, Cloud Data Fusion lit les données dans le bucket de stockage et les écrit dans BigQuery.

Si SLT est installé sur Google Cloud

Le serveur SLT doit être autorisé à créer et à modifier des objets Cloud Storage dans le bucket que vous avez créé.

Attribuez au minimum les rôles suivants au compte de service:

Si SLT n'est pas installé sur Google Cloud

Installez Cloud VPN ou Cloud Interconnect entre la VM SAP et Google Cloud pour autoriser la connexion à un point de terminaison de métadonnées interne (consultez la page Configurer l'accès privé à Google pour les hôtes sur site).

Si les métadonnées internes ne peuvent pas être mappées:

  • Installez la CLI Google Cloud en fonction du système d'exploitation de l'infrastructure sur laquelle SLT s'exécute.

  • Créez un compte de service dans le projet Google Cloud où Cloud Storage est activé.

  • Sur le système d'exploitation SLT, autorisez l'accès à Google Cloud à l'aide d'un compte de service.

  • Créez une clé API pour le compte de service et autorisez le champ d'application associé à Cloud Storage.

  • Importez la clé API dans la CLI gcloud installée ci-dessus à l'aide de la CLI.

  • Pour autoriser la commande de CLI gcloud qui affiche le jeton d'accès, configurez la commande du système d'exploitation SAP dans l'outil SM69 de transaction du système SLT.

L'administrateur SAP configure la commande du système d'exploitation, SM69, qui récupère un jeton d'accès à partir de Google Cloud.

Créez un script pour imprimer un jeton d'accès et configurez une commande de système d'exploitation SAP pour l'appeler en tant qu'utilisateur <sid>adm à partir de l'hôte SAP LT Replication Server.

Linux

Pour créer une commande de l'OS:

  1. Sur l'hôte SAP LT Replication Server, dans un répertoire accessible à <sid>adm, créez un script bash contenant les lignes suivantes:

    PATH_TO_GCLOUD_CLI/bin/gcloud auth print-access-token SERVICE_ACCOUNT_NAME
    
  2. À l'aide de l'IUG SAP, créez une commande d'OS externe:

    1. Saisissez la transaction SM69.
    2. Cliquez sur Create (Créer).
    3. Dans la section Commande du panneau Commande externe, saisissez le nom de la commande, par exemple ZGOOGLE_CDF_TOKEN.
    4. Dans la section Définition :

      1. Dans le champ Operating System Command (Commande du système d'exploitation), saisissez sh comme extension de fichier de script.
      2. Dans le champ Paramètres pour la commande de système d'exploitation, saisissez :

        /PATH_TO_SCRIPT/FILE_NAME.sh
        
    5. Cliquez sur Enregistrer.

    6. Pour tester le script, cliquez sur Exécuter.

    7. Cliquez à nouveau sur Exécuter.

    Un jeton Google Cloud est renvoyé et affiché en bas du panneau IUG de SAP.

Windows

En utilisant l'interface utilisateur graphique de SAP, créez une commande de système d'exploitation externe :

  1. Saisissez la transaction SM69.
  2. Cliquez sur Create (Créer).
  3. Dans la section Commande du panneau Commande externe, saisissez le nom de la commande, par exemple ZGOOGLE_CDF_TOKEN.
  4. Dans la section Définition :

    1. Dans le champ Commande de système d'exploitation, saisissez cmd /c.
    2. Dans le champ Paramètres pour la commande de système d'exploitation, saisissez :

      gcloud auth print-access-token SERVICE_ACCOUNT_NAME
      
  5. Cliquez sur Enregistrer.

  6. Pour tester le script, cliquez sur Exécuter.

  7. Cliquez à nouveau sur Exécuter.

Un jeton Google Cloud est renvoyé et affiché en bas du panneau SAP GUI.

Prérequis pour le chargement partiel

Les conditions préalables suivantes doivent être remplies pour la configuration du connecteur SLT:

  • Le connecteur est compatible avec SAP ECC NW 7.02, DMIS 2011 SP17 et versions ultérieures.
  • Configurez une connexion RFC ou de base de données entre SLT et le système source.
  • Importez les certificats d'API Google dans SLT à partir de googleapis.com, y compris à la racine, à l'aide du code de transaction STRUST.
  • Vous devez configurer le gestionnaire de communication Internet (ICM) pour HTTPS. Assurez-vous que les ports HTTP et HTTPS sont conservés et activés dans le système SAP SLT. Vous pouvez vérifier cela avec le code de transaction SMICM > Services.
  • Activez l'accès aux API Google Cloud sur la VM hébergeant le système SAP SLT. Cela permet une communication privée entre les services Google Cloud sans routage via l'Internet public.
  • Assurez-vous que le réseau est compatible avec le volume et la vitesse de transfert de données requis entre l'infrastructure SAP et Cloud Storage. Pour une installation réussie, il est recommandé d'utiliser Cloud VPN et/ou Cloud Interconnect. Le débit de l'API Google Cloud Storage Streaming dépend des quotas client attribués à votre projet Cloud Storage.

Configurer le serveur de réplication SLT

L'utilisateur SAP effectue les étapes suivantes.

Au cours des étapes suivantes, vous allez connecter le serveur SLT au système source et le bucket dans Cloud Storage, en spécifiant le système source, les tables de données à répliquer et le bucket de stockage cible.

Configurer le SDK Google ABAP

Pour configurer SLT pour la réplication des données (une fois par instance Cloud Data Fusion), procédez comme suit:

  1. Pour configurer le connecteur SLT, SAP-User saisit les informations suivantes sur l'écran de configuration (transaction SAP)/GOOG/CDF_SETTINGS concernant la clé de compte de service Google Cloud pour le transfert des données vers Cloud Storage. Configurez les propriétés suivantes dans la table /GOOG/CDF_CLT_KY à l'aide de la transaction SE16 et notez cette clé:
  • NAME : nom de votre clé de compte de service (par exemple, CDFSLT)
  • SERVICE ACCOUNT NAME (Nom du compte de service) : nom du compte de service IAM.
  • SCOPE : champ d'application du compte de service
  • PROJECT ID: ID de votre projet Google Cloud
  • Facultatif: EXT OS Command (Commande d'OS EXT) : n'utilisez ce champ que si SLT n'est pas installé sur Google Cloud.
  • AUTH CLASS : valeur fixe /GOOG/CDF_CL_GCP_AUTH_GOOGLE
  • TOKEN REFRESH SEC: durée pour l'actualisation du jeton d'autorisation

Saisissez les détails de la clé de compte de service

Configurer la réplication

Créez une configuration de réplication dans le code de transaction: LTRC.

  • Avant de poursuivre la configuration LTRC, assurez-vous que la connexion RFC est établie entre SLT et le système SAP source.
  • Dans une même configuration SLT, plusieurs tables SAP peuvent être affectées à la réplication.
  1. Accédez au code de transaction LTRC, puis cliquez sur Nouvelle configuration.

    Saisissez les détails de la clé de compte de service

  2. Saisissez le nom de la configuration et sa description, puis cliquez sur Suivant.

  3. Spécifiez la connexion RFC du système SAP source, puis cliquez sur Next (Suivant).

    Spécifier les détails de la connexion RFC du système source

  4. Dans "Target System Connection Details" (Détails de la connexion système cible), sélectionnez Other (Autre).

  5. Développez le champ Scénario de communication RFC, sélectionnez SDK SLT, puis cliquez sur Suivant.

  6. Accédez à la fenêtre Specify Transfer Settings (Spécifier les paramètres de transfert) et saisissez le nom de l'application: ZGOOGLE_CDF.

    Spécifier les paramètres de transfert

  7. Saisissez le nombre de tâches de transfert de données, le nombre de tâches de chargement initiales et le nombre de tâches de calcul. Pour en savoir plus sur les performances, consultez le guide d'optimisation des performances de SAP LT Replication Server.

    Conseil: Si vous ne connaissez pas le nombre de tâches, saisissez 10,10,10, puis modifiez les valeurs ultérieurement, lorsque vous aurez obtenu plus d'informations.

  8. Cliquez sur Temps réel > Suivant.

  9. Après avoir vérifié la configuration, cliquez sur Save (Enregistrer). Pour connaître la procédure à suivre, consultez l'ID du transfert en masse.

    Enregistrer la configuration et noter l&#39;ID de transfert groupé

  10. Pour conserver les détails de l'ID de transfert de masse et de la table SAP, exécutez la transaction SAP: /GOOG/CDF_SETTINGS.

  11. Cliquez sur Exécuter ou appuyez sur F8.

  12. Créez une entrée en cliquant sur l'icône d'ajout de ligne.

    1. Saisissez les champs Mass Transfer ID (ID de transfert de masse), Mass Transfer Key (Clé de transfert de masse), GCP Key Name (Nom de la clé GCP) et Target GCS Bucket (Bucket GCS cible). Cochez la case Is Active (Est active), puis enregistrez les modifications.

      Saisissez les détails du transfert de masse

  13. Sélectionnez la configuration dans la colonne Configuration Name (Nom de la configuration), puis cliquez sur Data Provisioning (Provisionnement des données).

    Sélectionner le provisionnement des données

  14. Facultatif: Personnalisez les noms des tables et des champs.

    1. Cliquez sur Noms personnalisés, puis enregistrez.

    2. Cliquez sur Display.

    3. Créez une entrée en cliquant sur les boutons Ajouter une ligne ou Créer.

    4. Saisissez le nom de la table SAP et le nom de la table externe à utiliser dans BigQuery, puis enregistrez les modifications.

    5. Cliquez sur le bouton Afficher dans la colonne Champs d'affichage pour conserver le mappage des champs de la table.

    6. Une page s'ouvre avec les suggestions de mappage. Facultatif: Modifiez le nom du champ temporaire et la description du champ, puis enregistrez les mises en correspondance.

  15. Accédez à la transaction LTRC.

  16. Sélectionnez la valeur dans la colonne Configuration Name (Nom de la configuration), puis cliquez sur Data Provisioning (Provisionnement des données).

  17. Saisissez le nom de la table dans le champ Nom de la table dans la base de données et sélectionnez le scénario de réplication.

    Sélectionner le scénario de réplication

  18. Cliquez sur Exécuter. Cette action déclenche l'implémentation du SDK SLT et commence à transférer les données vers le bucket cible dans Cloud Storage.

Installer les fichiers de transport SAP

Les composants SAP sont nécessaires pour concevoir et exécuter des tâches de réplication dans Cloud Data Fusion. Ils sont distribués au format ZIP, sous la forme de fichiers de transport SAP archivés.

Les ID de requête de transport et les fichiers associés sont fournis dans le tableau suivant:

Transport SAP

ID de transport Fichier cofile Fichier de données Contenu
ED1K900346 K900346.ED1 K900346.ED1 Implémentation SAP BADI ES_IUUC_REPL_RUNTIME_OLO_EXIT
ED1K900340 K900340.ED1 K900340.ED1 Rôle d'autorisation /GOOG/SLT_CDF_AUTH

Pour installer les transports SAP, procédez comme suit:

Étape 1 : Importer les fichiers de requête de transport

  1. Connectez-vous au système d'exploitation de l'instance d'application SAP.
  2. Copiez les fichiers cofile dans le dossier /usr/sap/trans/cofiles.
  3. Copiez les fichiers de données dans le dossier /usr/sap/trans/data.
  4. Définissez l'utilisateur et le groupe de données/cofile sur <sid>adm et sapsys.

Étape 2 : Importer les fichiers de requête de transport

L'administrateur SAP peut importer les fichiers de requête de transport de l'une des façons suivantes :

Option 1 : Importer les fichiers de requête de transport à l'aide du système de gestion des transports SAP

  1. Connectez-vous au système SAP en tant qu'administrateur SAP.
  2. Saisissez le code STMS de la transaction.
  3. Cliquez sur Présentation > Importations.
  4. Dans la colonne Queue (File d'attente), double-cliquez sur le SID actuel.
  5. Cliquez sur Extras > Autres requêtes > Ajouter.
  6. Sélectionnez l'ID de la requête de transport, puis cliquez sur Continuer.
  7. Sélectionnez la demande de transport dans la file d'attente d'importation, puis cliquez sur Demander > Importer.
  8. Saisissez le numéro client.
  9. Dans l'onglet Options, sélectionnez Écraser les versions d'origine et Ignorer la version de composant non valide (si disponible).

    Facultatif: Pour planifier une réimportation des transports pour une utilisation ultérieure, sélectionnez Laissez les requêtes de transport en file d'attente pour une importation ultérieure et Réimportez les demandes de transport. Cette fonctionnalité est utile pour les mises à niveau du système SAP et les restaurations de sauvegarde.

  10. Cliquez sur Continuer.

  11. Vérifiez que le module de fonction et les rôles d'autorisation ont bien été importés à l'aide de transactions telles que SE80 et PFCG.

Option 2 : Importer les fichiers de requête de transport au niveau du système d'exploitation

  1. Connectez-vous au système SAP en tant qu'administrateur SAP.
  2. Ajoutez les requêtes appropriées au tampon d'importation:

    tp addtobuffer TRANSPORT_REQUEST_ID SID
    

    Par exemple : tp addtobuffer IB1K903958 DD1

  3. Importez les requêtes de transport:

    tp import TRANSPORT_REQUEST_ID SID client=NNN U1238
    

    Remplacez NNN par le numéro client. Exemple : tp import IB1K903958 DD1 client=800 U1238.

  4. Vérifiez que le module de fonction et les rôles d'autorisation ont bien été importés à l'aide des transactions appropriées, telles que SE80 et PFCG.

Autorisations SAP requises

Pour exécuter un pipeline de données dans Cloud Data Fusion, vous avez besoin d'un utilisateur SAP. L'utilisateur SAP doit être de type "Communications" ou "Dialog". Pour éviter d'utiliser les ressources de la boîte de dialogue SAP, nous vous recommandons d'utiliser le type de communication. Les utilisateurs peuvent être créés par l'administrateur SAP à l'aide du code de transaction SAP SU01.

Les autorisations SAP sont nécessaires pour gérer et configurer le connecteur pour SAP, une combinaison d'objets d'autorisation de connecteur standards et nouveaux. Vous gérez les objets d'autorisation en fonction des règles de sécurité de votre organisation. La liste suivante décrit certaines autorisations importantes nécessaires au connecteur:

  • Objet d'autorisation: l'objet d'autorisation ZGOOGCDFMT est expédié dans le cadre du rôle Requête de transport.

  • Création du rôle: créez un rôle à l'aide du code de transaction PFCG.

    Créer un rôle à l&#39;aide d&#39;un code de transaction SAP

  • Pour les objets d'autorisation SAP standards, votre organisation gère les autorisations à l'aide de son propre mécanisme de sécurité.

  • Pour les objets d'autorisation personnalisés, fournissez des valeurs dans les champs d'autorisation pour les objets d'autorisation ZGOOGCDFMT.

  • Pour un contrôle des accès précis, ZGOOGCDFMT fournit une autorisation basée sur un groupe d'autorisations. Les utilisateurs disposant d'un accès complet, partiel ou inexistant à des groupes d'autorisation bénéficient d'un accès basé sur le groupe d'autorisations attribué dans leur rôle.

  • /GOOG/SLT_CDF_AUTH: rôle avec accès à tous les groupes d'autorisation. Pour restreindre l'accès à un groupe d'autorisations spécifique, gérez le FICDF du groupe d'autorisation dans la configuration.

Créer une destination RFC pour la source

Avant de commencer la configuration, assurez-vous que la connexion RFC est établie entre la source et la destination.

  1. Accédez au code de transaction SM59.

  2. Cliquez sur Create > Connection Type 3 (ABAP Connection) (Type de connexion 3 (connexion ABAP)).

    Créer un code de transaction

  3. Dans la fenêtre Paramètres techniques, saisissez les informations relatives à la destination RFC.

  4. Cliquez sur l'onglet Connexion et sécurité pour conserver les identifiants RFC (utilisateur et mot de passe RFC).

  5. Cliquez sur Enregistrer.

  6. Cliquez sur Test de connexion. Une fois le test réussi, vous pouvez poursuivre.

  7. Vérifiez que le test d'autorisation RFC a bien été effectué.

  8. Cliquez sur Utilities > Test > Authorization Test (Tester les utilitaires > Test d'autorisation).

Déployer le plug-in dans Cloud Data Fusion

L'utilisateur Cloud Data Fusion effectue les étapes suivantes.

Avant de pouvoir exécuter la tâche de réplication Cloud Data Fusion, vous devez déployer le plug-in de réplication SAP SLT:

  1. Dans Google Cloud Console, accédez à la page Instances de Cloud Data Fusion.

  2. Ouvrez l'instance souhaitée.

    L'interface utilisateur de Cloud Data Fusion s'ouvre.

  3. Cliquez sur Hub > SAP > SAP SLT.

  4. Cliquez sur Deploy SAP LTLT.

Créer et déployer une tâche de réplication

Le plug-in de réplication SAP LTT lit le contenu des tables SAP à l'aide d'un bucket de préproduction de l'API Cloud Storage.

Pour créer une tâche de réplication pour votre transfert de données:

  1. Saisissez un nom et une description uniques pour la tâche de réplication.

  2. Cliquez sur Suivant.

Configurer la source

  1. Configurez la source en saisissant des valeurs dans les champs suivants:

    • PROJECT ID (ID du projet) : ID de votre projet Google Cloud (ce champ est prérempli)
    • Data réplication GCS Path (Chemin d'accès GCS de réplication de données) : chemin d'accès Cloud Storage contenant les données à répliquer. Il doit s'agir du même chemin d'accès que celui configuré dans les tâches SAP SLT. En interne, le chemin fourni est concaténé avec Mass Transfer ID et Source Table Name :

      Format : gs://<base-path>/<mass-transfer-id>/<source-table-name>

      Exemple : gs://slt_bucket/012/MARA

    • GUID: le GUID SLT, un identifiant unique attribué à l'ID de transfert de masse SAP SLT.

    • Mass Transfer ID : l'ID de transfert groupé de SLT est un identifiant unique attribué à la configuration dans SAP SLT.

    • Chemin d'accès GCS de la bibliothèque SAP JCo : chemin de stockage contenant les fichiers de bibliothèque SAP JCo importés par l'utilisateur. Vous pouvez télécharger les bibliothèques SAP JCo à partir du portail d'assistance SAP.

    • Hôte Server SLT : nom d'hôte ou adresse IP du serveur SLT.

    • Numéro système de l'application SAP : numéro du système d'installation fourni par l'administrateur système (par exemple, 00)

    • Client SAP: client SAP à utiliser (par exemple, 100).

    • SAP Language: langage de connexion SAP (par exemple, EN).

    • Nom d'utilisateur SAP Logon: nom d'utilisateur SAP.

      • Recommandation: Si le nom d'utilisateur de la connexion SAP change régulièrement, utilisez une macro.
    • SAP Logon Password (M) : mot de passe utilisateur SAP pour l'authentification de l'utilisateur

      • Recommandation: Utilisez des macros sécurisées pour les valeurs sensibles, telles que les mots de passe.
    • Suspendre la réplication SLT lorsque la tâche CDF s'arrête: tente d'arrêter la tâche de réplication SLT (pour les tables concernées) lorsque la tâche Cloud Fusion Replication est arrêtée. Peut échouer si la tâche s'arrête de manière inattendue dans Cloud Data Fusion.

    • Répliquer les données existantes: indique si vous souhaitez répliquer les données existantes dans les tables sources. Par défaut, les tâches répliquent les données existantes à partir des tables sources. S'il est défini sur false, toutes les données existantes des tables sources sont ignorées et seules les modifications apportées après le début de la tâche sont dupliquées.

    • Service Account Key (Clé de compte de service) : clé à utiliser lors des interactions avec Cloud Storage. Le compte de service doit être autorisé à écrire dans Cloud Storage. Lors de l'exécution sur une VM Google Cloud, ce paramètre peut être défini sur 'auto-detect', qui utilise la clé de compte de service sur la VM.

  2. À l'étape Sélectionner des tables, une liste des tables sélectionnées pour la réplication dans le système SLT s'affiche.

  3. Sélectionnez les tables à répliquer et cliquez sur Suivant.

Configurer la cible

Pour écrire des données dans BigQuery, le plug-in nécessite un accès en écriture à BigQuery et à un bucket de préproduction. Les événements de modification sont d'abord écrits dans des lots de SLT vers Cloud Storage. Ils sont ensuite chargés dans des tables de préproduction dans BigQuery. Les modifications apportées à la table de préproduction sont fusionnées dans la table cible finale à l'aide d'une requête de fusion BigQuery.

La table cible finale inclut toutes les colonnes d'origine de la table source et une colonne _sequence_num supplémentaire. Le numéro de séquence garantit que les données ne sont ni dupliquées, ni manquées dans les cas d'échec des instances dupliquées.

Identifiants

Si le plug-in est exécuté sur un cluster Dataproc, il est nécessaire de fournir la clé du compte de service et de la définir sur la détection automatique. Les identifiants sont lus automatiquement à partir de l'environnement de cluster.

Si le plug-in n'est pas exécuté sur un cluster Dataproc, le chemin d'accès à une clé de compte de service doit être fourni. La clé du compte de service est indiquée sur la page IAM de Google Cloud Console. Assurez-vous que la clé du compte est autorisée à accéder à BigQuery. Le fichier de clé de compte de service doit être disponible sur chaque nœud de votre cluster et doit être lisible par tous les utilisateurs qui exécutent la tâche.

Limites

  • Les tables doivent posséder une clé primaire à répliquer.
  • Les opérations de changement de nom de table ne sont pas compatibles.
  • Les modifications de table sont partiellement compatibles.
    • Une colonne existante ne peut pas être vide en une colonne pouvant être nulle.
    • Les nouvelles colonnes qui peuvent être nulles peuvent être ajoutées à une table existante.
    • Tout autre type d'altération du schéma de la table échouera.
    • Les modifications apportées à la clé primaire n'échouent pas, mais les données existantes ne sont pas réécrites pour respecter la singularité de la nouvelle clé primaire.

Properties

  • ID du projet: projet de l'ensemble de données BigQuery. Lors de l'exécution sur un cluster Dataproc, ce champ peut être vide, ce qui utilisera le projet du cluster.
  • Credentials (Identifiants) : consultez la section Credentials (Identifiants)
  • Emplacement: emplacement où l'ensemble de données BigQuery et le bucket de préproduction Cloud Storage sont créés. Par exemple, us-east1 pour les buckets régionaux, us pour les buckets multirégionaux (voir la section Emplacements). Cette valeur est ignorée si un bucket existant est spécifié, car le bucket de préproduction et l'ensemble de données BigQuery sont créés au même emplacement que ce bucket.
  • Bucket de préproduction: bucket dans lequel les événements de modification sont écrits avant d'être chargés dans les tables de préproduction. Les modifications sont écrites dans un répertoire contenant le nom de l'instance dupliquée et l'espace de noms. Vous pouvez utiliser le même bucket sur plusieurs réplicants au sein d'une même instance. S'il est partagé entre plusieurs instances, assurez-vous que l'espace de noms et le nom sont uniques, sinon le comportement n'est pas défini. Le bucket doit se trouver au même emplacement que l'ensemble de données BigQuery. S'il n'est pas fourni, un bucket est créé pour chaque tâche nommée df-rbq-<namespace-name>-<job-name>-<deployment-timestamp>.

  • Service Account Key (Clé de compte de service) : contenu de la clé de compte de service à utiliser lors de l'interaction avec Cloud Storage et BigQuery. Lors de l'exécution sur un cluster Dataproc, vous pouvez laisser ce champ vide, qui utilise le compte de service du cluster.

  • Intervalle de chargement (secondes): nombre de secondes d'attente avant de charger un lot de données dans BigQuery.

  • Préfixe de la table de préproduction : les modifications sont d'abord écrites dans une table de préproduction avant d'être fusionnées avec la table finale. Les noms de table de préproduction sont générés en ajoutant ce préfixe au nom de la table cible.

  • Exiger l'intervention manuelle pour les tentatives de dépôt : exigez une action d'administration manuelle pour supprimer des tables et des ensembles de données lorsqu'une table de dépôt ou un événement de base de données "déposer" se produisent. Lorsqu'elle est définie sur "true", le réplicant ne supprime pas une table ni un ensemble de données. Il échoue et réessaie jusqu'à ce que la table ou l'ensemble de données n'existent pas. Si l'ensemble de données ou la table n'existe pas encore, aucune intervention manuelle n'est requise. L'événement est ignoré normalement.

  • Nom de l'ensemble de données : nom de l'ensemble de données à créer dans BigQuery. Il est facultatif et, par défaut, le nom de l'ensemble de données est identique au nom de la base de données source. Un nom valide ne doit contenir que des lettres, des chiffres et des traits de soulignement, et la longueur maximale peut être de 1 024 caractères. Tous les caractères non valides sont remplacés par un trait de soulignement dans le nom de l'ensemble de données final, et tous les caractères dépassant la limite de longueur sont tronqués.

  • Nom de la clé de chiffrement: clé de chiffrement gérée par le client (CMEK) permettant de sécuriser les ressources créées par cette cible Le nom de la clé de chiffrement doit être au format projects/<project-id>/locations/<key-location>/keyRings/<key-ring-name>/cryptoKeys/<key-name>.

Facultatif: configurer les propriétés avancées

Si vous connaissez la quantité de données à répliquer dans une heure, vous pouvez sélectionner l'option appropriée.

Examiner l'évaluation

Vous pouvez obtenir une évaluation des problèmes de schéma, de fonctionnalités manquantes ou de connectivité qui surviennent lors de la réplication:

  1. Sur la page Évaluer l'évaluation, cliquez sur Afficher les mappages.

    En cas de problème, vous devez le résoudre avant de poursuivre.

  2. Cliquez sur Suivant.

Afficher le résumé et déployer la tâche de réplication

Sur la page Examiner les détails de la tâche de réplication, vérifiez les paramètres et cliquez sur Déployer la tâche de réplication.

Sélectionner un profil Compute Engine

  1. Après avoir déployé la tâche de réplication, cliquez sur Configurer à partir de n'importe quelle page de l'interface utilisateur de Cloud Data Fusion.

  2. Sélectionnez le profil Compute Engine que vous souhaitez utiliser pour exécuter cette tâche de réplication.

  3. Cliquez sur Enregistrer.

    Sélectionner un profil Compute dans l&#39;UI de Cloud Data Fusion

Démarrer et surveiller la tâche de réplication

Cliquez sur Démarrer pour exécuter la tâche de réplication.

Démarrer la tâche de réplication dans l&#39;interface utilisateur de Cloud Data Fusion

Pour surveiller l'état de la tâche, consultez les journaux de la tâche de réplication. La tâche de réplication récupère dans la table source sélectionnée l'état de la tâche de réplication à partir de SAP, avec un intervalle de 5 minutes.

Facultatif: Optimiser les performances

Par défaut, les performances du plug-in sont configurées. Pour découvrir d'autres optimisations, consultez la section Arguments d'exécution.

Les performances des communications SLT et Cloud Data Fusion dépendent de ces facteurs:

  • SLT sur le système source par rapport à un système SLT central dédié (option recommandée)
  • Traitement des tâches en arrière-plan sur le système SLT
  • Processus de dialogue sur le système SAP source
  • Nombre de processus de tâche en arrière-plan alloués à chaque ID de transfert de masse dans l'onglet Administration LTRC
  • Paramètres LTRS
  • Matériel (processeur et mémoire) du système SLT
  • Base de données utilisée (par exemple, HANA, Sybase ou DB2)
  • Bande passante Internet (connectivité entre le système SAP et Google Cloud sur Internet)
  • Utilisation préexistante (charge) sur le système
  • Nombre de colonnes dans la table. Avec plus de colonnes, la réplication ralentit et la latence peut augmenter.

Les types de lecture suivants dans les paramètres LTRS sont recommandés pour les chargements initiaux:

Système SLT Système source Type de table Type de lecture recommandé
[chargement initial]
SLT 3.0 autonome
[DMIS 2018_1_752 SP 2]
S/4 HANA 1909 Transparente (petite/moyenne)
Transparent (grande taille)
Table de cluster
1 calcul de plage
1 calcul de plage
4 file d'attente d'expéditeur
SLT intégré
[S4CORE 104 HANA 1909]
N/A Transparente (petite/moyenne)
Transparent (grande taille)
Table de cluster
1 calcul de plage
1 calcul de plage
4 file d'attente d'expéditeur
SLT 2.0 autonome
[DMIS 2011_1_731 SP 17]
ECC NW 7.02 Transparente (petite/moyenne)
Transparent (grande taille)
Table de cluster
5 file d'attente pour expéditeur
5 file d'attente d'expéditeur
4 file d'attente d'expéditeur
SLT intégré
[DMIS 2011_1_700 SP 17]
N/A Transparente (petite/moyenne)
Transparent (grande taille)
Table de cluster
5 file d'attente pour expéditeur
5 file d'attente d'expéditeur
4 file d'attente d'expéditeur
  • En cas de réplication, l'observation de l'absence de plage peut fournir de meilleures performances :
    • Les plages ne doivent être utilisées que lorsque des tâches en attente sont générées dans une table de journalisation avec une latence élevée.
    • Utilisation du calcul d'une plage: le type de lecture pour le chargement initial n'est pas recommandé dans le cas des systèmes SLT 2.0 et non-HANA.
    • En utilisant le calcul d'une plage: un type de lecture pour le chargement initial peut entraîner des enregistrements en double dans BigQuery.
  • Les performances sont toujours améliorées lorsqu'un système SLT autonome est utilisé.
  • Nous vous recommandons de toujours utiliser un système SLT autonome si l'utilisation des ressources du système source est déjà élevée.

Arguments d'exécution

  • snapshot.thread.count: transmet le nombre de threads pour commencer à effectuer un chargement de données SNAPSHOT/INITIAL en parallèle. Par défaut, il utilise le nombre de processeurs virtuels disponibles dans le cluster Dataproc sur lequel s'exécute la tâche de réplication.

    Recommandation: Définissez ce paramètre uniquement dans les cas où vous avez besoin de contrôler avec précision le nombre de threads parallèles (par exemple, pour réduire l'utilisation sur le cluster).

  • poll.file.count : transmet le nombre de fichiers à interroger à partir du chemin d'accès Cloud Storage fourni dans le champ Chemin d'accès GCS pour la réplication des données dans l'interface utilisateur. Par défaut, la valeur est de 500 par sondage, mais en fonction de la configuration du cluster, elle peut augmenter ou diminuer.

    Recommandé: Ne définissez ce paramètre que si vous avez des exigences strictes en matière de délai de réplication. Plus la valeur est faible, plus la latence est faible. Vous pouvez l'utiliser pour améliorer le débit (si vous ne répondez pas, utilisez des valeurs supérieures à la valeur par défaut).

  • bad.files.base.path : transmet le chemin d'accès Cloud Storage de base où tous les fichiers de données d'erreur ou défectueux sont copiés lors de la réplication. Cette fonctionnalité est utile lorsque les exigences de l'audit des données sont strictes et qu'un emplacement spécifique doit être utilisé pour enregistrer les transferts ayant échoué.

    Par défaut, tous les fichiers défaillants sont copiés sous le chemin d'accès Cloud Storage fourni dans le champ Chemin d'accès Cloud Storage à la réplication des données dans l'interface utilisateur.

    • Format de chemin d'accès final des fichiers de données défectueux:

      gs://BASE_FILE_PATH/MASS_TRANSFER_ID/SOURCE_TABLE_NAME/bad_files/REPLICATION_JOB_NAME/REPLICATION_JOB_ID/BAD_FILE_NAME
      

    • Exemple :

      gs://slt_to_cdf_bucket/001/MARA/bad_files/MaraRepl/05f97349-7398-11ec-9443-8
      ac0640fc83c/20220205_1901205168830_DATA_INIT.xml
      

    Les critères d'un fichier incorrect peuvent être des fichiers XML corrompus ou non valides, des valeurs PK manquantes ou un problème de non-concordance du type de données de champ.

Informations relatives à l'assistance

Produits et versions SAP compatibles

  • Serveur SAP Pays Transformation (SLT) version 2011 SP17 ou version ultérieure
  • SAP ECC ou SAP S/4HANA compatible avec DMIS 2011 SP17 ou version ultérieure, tel que DMIS 2018 ou DMIS 2020.

Versions SLT compatibles

Les versions 2 et 3 de SLT sont compatibles.

Modèles de déploiement SAP compatibles

SLT en tant que système autonome ou intégré au système source.

Notes SAP à implémenter avant de commencer à utiliser le SLT

Si votre formule d'assistance n'inclut pas de corrections de classe /UI2/CL_JSON pour PL12 ou version ultérieure, implémentez la dernière note SAP pour /UI2/CL_JSON corrections, par exemple "Note de 2798102" pour PL12.

Recommandation: Implémentez les notes SAP recommandées par le rapport CNV_NOTE_ANALYZER_SLT en fonction de la condition du système central ou de la source. Pour en savoir plus, consultez la note SAP 3016862 (connexion SAP requise).

Si SAP est déjà configuré, aucune note supplémentaire n'est nécessaire. Pour les erreurs ou les problèmes spécifiques, consultez la note SAP centrale pour votre version de SPT.

Limites applicables au volume de données ou à la largeur de l'enregistrement

Il n'existe pas de limite définie pour le volume de données extraites et la largeur d'enregistrement.

Débit attendu pour le plug-in de réplication SAP LTT

Pour un environnement configuré conformément aux consignes d'optimisation des performances, le plug-in peut extraire environ 13 Go/heure pour le chargement initial et 3 Go/heure pour la réplication (CDC). Les performances réelles peuvent varier en fonction de la charge du système Cloud Data Fusion et de la charge du système SAP, ou du trafic réseau.

Compatibilité avec l'extraction delta (données modifiées) de SAP

L'extraction SAP Delta (données modifiées) est possible.

Obligatoire: appairage de locataires pour les instances Cloud Data Fusion

L'appairage de locataire est requis lorsque l'instance Cloud Data Fusion est créée avec une adresse IP privée. Pour en savoir plus sur l'appairage de locataires, consultez la section Créer une instance privée.

Dépannage

Si la tâche de réplication continue à redémarrer automatiquement, augmentez sa mémoire et exécutez à nouveau la tâche de réplication.

Scénarios d'erreur

Le tableau suivant répertorie certains messages d'erreur courants (le texte entre crochets sera remplacé par des valeurs réelles lors de l'exécution):

ID du message Message Action recommandée
Pour la livraison active La clé de compte de service fournie n'est pas valide en raison d'une erreur: 'rootcause'. Veuillez fournir une clé de compte de service valide. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_02403 L'utilisateur n'est pas autorisé à accéder à la valeur de l'interface utilisateur à partir de l'ID de transfert de masse ; ID de transfert de masse dans SAP SLT. Veuillez vérifier que l'autorisation appropriée est attribuée. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
Pour la livraison active Impossible de trouver l'ID de transfert groupé ou le GUID. Assurez-vous qu'il existe et qu'il est actif dans SAP SLT. Vérifiez que l'ID de transfert de masse et le Guid existent.
CDF_SAP_SLT_01502 Impossible de trouver le chemin d'accès Cloud Storage de la réplication des données spécifié et le champ #33;Chemin d'accès de la réplication de données dans l'interface utilisateur. Assurez-vous qu'il existe dans Cloud Storage. Assurez-vous que le chemin d'accès Cloud Storage fourni est correct.
Pour la livraison active Type d'opération de réplication SLT non valide. Types acceptés: 'RESUME' & 'SUSPEND'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_01400 Configuration non valide pour la ou les tables SAP fournies et le nom des tables sélectionnées. Veuillez vérifier que le GUID et l'ID de transfert de masse fournis sont corrects. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_01504 Échec de la réactivation de la tâche de réplication. Pour en savoir plus, consultez les journaux. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
Pour la livraison active Échec de l'obtention de l'état de réplication pour une table et le nom de table donnés. Pour en savoir plus, consultez les journaux. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_02503 Échec de l'obtention de l'état de réplication pour une table et le nom de table donnés. Pour en savoir plus, consultez les journaux. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03403 Autorisation de démarrer une tâche de réplication pour une table donnée 'sélection de noms Veuillez vérifier que l'autorisation requise est attribuée à l'utilisateur SAP utilisé pour la réplication. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03408 Échec du démarrage du lecteur d'événements. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03409 Erreur lors du traitement du fichier de la table de réplication, du nom de la table source et du nom de la table. Cause: 'origine du problème'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03410 Échec de la réplication des données de la table source 'nom de la table' à partir du fichier : 'Chemin d'accès au fichier de réplication des données Storage. Cause: 'origine du problème'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03411 Échec de la réplication des données pour la table source 'nom de table'. Cause: 'cause racine'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03412 Échec de la création de la table cible pour la table source 'nom de table'. Cause : 'cause principale'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03413 Échec de la suspension de la tâche de réplication SLT pour la ou les tables sources 'nom de la table sélectionnée'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.
CDF_SAP_SLT_03414 Impossible d'obtenir l'état de la tâche de réplication SLT pour la table source 'table name'. Vérifiez la cause première affichée dans le message et prenez les mesures appropriées.

Mappage des types de données

Le tableau suivant indique le mappage entre les types de données utilisés dans les applications SAP et Cloud Data Fusion.

Type de données SAP Type ABAP Description (SAP) Type de données Cloud Data Fusion
Numérique
INT1 b Entier à 1 octet int
INT2 s Entier à 2 octets int
INT4 i Entier à 4 octets int
INT8 8 Entier à 8 octets long
DÉC p Nombre compressé au format BCD (DEC) decimal
DF16_DEC
DF16_RAW
a virgule flottante décimal 8 octets IEEE 754r decimal
DF34_DEC
DF34_RAW
e virgule flottante décimal 16 octets IEEE 754r decimal
FLTP f Nombre à virgule flottante binaire double
Caractère
CHAR
La LCHR
c Chaîne de caractères string
SSTRING
GEOM_EWKB
string Chaîne de caractères string
CHAÎNE
GEOM_EWKB
string Chaîne de caractères CLOB bytes
NUMC
ACCP
n Texte numérique string
Byte
RAW
LRAW
X Données binaires bytes
RAWSTRING chaîne BLOB de chaîne d'octets bytes
Date/Heure
DATS d Date date
Tims t Chronologie time
TIMESTAMP UUT ( Utclong)
Horodatage
timestamp

Étapes suivantes