Réplication de données de HeatWave vers Autonomous Data Warehouse

Découvrez comment utiliser OCI GoldenGate pour répliquer des données d'HeatWave vers Autonomous Data Warehouse.

Avant de commencer

Pour mener à bien ce démarrage rapide, vous devez disposer des éléments suivants :

  • OCI Bastion, pour vous connecter à HeatWave, charger l'exemple de base de données et effectuer des insérations
  • Une base de données HeatWave à utiliser comme base de données source
  • Une instance Autonomous Data Warehouse servant de base de données cible

Configuration de l'environnement : HeatWave

Afin de configurer l'environnement pour ce démarrage rapide, procédez comme suit :
  1. Téléchargez l'exemple de script de données, puis exécutez-le sur la base de données HeatWave pour créer la base de données et charger les données.
  2. Créez un utilisateur ggadmin à l'aide du script suivant. N'oubliez pas de remplacer <ggadmin-password> par un mot de passe valide :
    CREATE USER 'ggadmin' IDENTIFIED BY '<ggadmin-password>';
    GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT, CREATE,CREATE VIEW, EVENT, INSERT, UPDATE, DROP,EXECUTE, DELETE ON *.* TO 'ggadmin';
  3. Ouvrez port 3306, par le biais duquel OCI GoldenGate peut se connecter.
    1. Dans la console Oracle Cloud, localisez le sous-réseau utilisé par la base de données HeatWave.
    2. Dans la liste de sécurité du sous-réseau, créez une règle entrante pour port TCP/3306.
  4. Téléchargez les scripts de schéma cible, puis exécutez-les dans l'instance Autonomous Data Warehouse pour créer le schéma et les tables. Vous pouvez utiliser l'outil SQL Database Actions d'Autonomous Data Warehouse pour exécuter les scripts :
    1. Dans la console Oracle Cloud, ouvrez la page des détails de la base de données Autonomous Data Warehouse, puis cliquez sur Database Actions.
    2. Dans Database Actions, sous Développement, cliquez sur SQL.
    3. Dans l'outil SQL, copiez le script d'OCIGGLL_OCIGGS_SETUP_USERS_ADW.sql et collez-le dans la feuille de calcul SQL, puis cliquez sur Exécuter un script. Si l'opération réussit, l'onglet Sortie de script affiche des messages de confirmation.
    4. Effacez la feuille de calcul SQL, puis copiez et collez uniquement les scripts de création de table d'OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sql. Les données seront chargées dans une tâche ultérieure.

      Conseil :

      Vous devrez peut-être exécuter chaque instruction Create Table séparément pour que l'outil SQL parvienne à exécuter les scripts.
    5. Pour vérifier que les tables ont bien été créées, fermez la fenêtre SQL et rouvrez-la. Dans l'onglet Navigateur, recherchez le schéma SRC_OCIGGLL, puis sélectionnez les tables dans les listes déroulantes correspondantes.

Tâche 1 : créer les ressources OCI GoldenGate

Cet exemple de démarrage rapide nécessite des déploiements et des connexions pour la source et la cible.
  1. Créez un déploiement pour la base de données HeatWave source.
  2. Créez un déploiement pour l'instance Autonomous Data Warehouse cible.
  3. Créez une connexion à la base de données HeatWave source.
  4. Créez une connexion pour l'instance Autonomous Data Warehouse cible.
  5. Créez une connexion à GoldenGate, puis affectez cette connexion au déploiement MySQL source.
  6. Affectez la connexion source au déploiement MySQL source.
  7. Affectez la connexion cible au déploiement Oracle cible.

Tâche 2 : créer les extractions

  1. Sur la page Déploiements, sélectionnez le déploiement MySQL créé dans la tâche 1.
  2. Sur la page des détails du déploiement, cliquez sur Lancer la console.
  3. Connectez-vous à la console de déploiement MySQL source à l'aide des informations d'identification d'administrateur indiquées lors de la création du déploiement dans la tâche 1.
  4. Dans le menu de navigation, sélectionnez DB Connections.
  5. Vérifiez les informations d'identification de la connexion HeatWave. Notez le domaine et l'alias.
  6. Ajoutez et exécutez une commande Change Data Capture Extract avec les valeurs suivantes :
    • Pour Extract Type, sélectionnez Change Data Capture.
    • Dans Nom de processus, saisissez le nom du processus Extract.
    • Dans Domaine, sélectionnez le domaine.
    • Dans Alias, sélectionnez l'alias.
    • Dans Extract Nom de trace, entrez le nom du fichier de trace.
    • Dans la page Parameter File, ajoutez ce qui suit :
      TABLE SRC_OCIGGLL.*;
  7. Ajoutez et exécutez une extraction de chargement initial avec les valeurs suivantes :
    • Pour Extract Type, sélectionnez Initial Load Extract.
    • Dans Nom de processus, entrez un nom.
    • Dans la page Parameter File, ajoutez ce qui suit :
      TABLE SRC_OCIGGLL.*;

Tâche 3 : créer le fichier Distribution Path pour un fichier Initial Load Extract

  1. Sur la page Déploiements, sélectionnez le déploiement Autonomous Database cible.
  2. Sur la page des détails du déploiement, cliquez sur Lancer la console, puis connectez-vous en tant qu'administrateur.
  3. Si vous utilisez la banque d'informations d'identification IAM, passez à l'étape Créer une Distribution Path. Si vous utilisez la banque d'informations d'identification GoldenGate, créez un utilisateur avec lequel la source GoldenGate utilise pour se connecter à la cible GoldenGate.
    1. Dans le menu de navigation, cliquez sur Administration des utilisateurs.
    2. Cliquez sur Ajouter un nouvel utilisateur (icône Plus), renseignez les champs ci-dessous, puis cliquez sur Envoyer :
      • Dans Nom utilisateur, entrez ggsnet.
      • Dans Rôle, sélectionnez Opérateur.
      • Indiquez le mot de passe à deux reprises pour vérification.
  4. Dans la console de déploiement source PostgreSQL, créez une connexion de chemin pour l'utilisateur créé à l'étape précédente.
    1. Dans le menu de navigation, cliquez sur Connexions de chemin.
    2. Cliquez sur Ajouter une connexion de chemin (icône plus), renseignez les champs comme suit, puis cliquez sur Soumettre :
      • Dans Alias d'informations d'identification, entrez dpuser.
      • Dans ID utilisateur, entrez ggsnet.
      • Dans Mot de passe, entrez le mot de passe utilisé à l'étape précédente.
  5. Créez un fichier Distribution Path.
    1. Dans la barre de menus du service, cliquez sur Distribution Service, puis sur Ajouter Distribution Path (icône Plus).
    2. Renseignez le formulaire Ajouter un chemin comme suit :
      • Sur la page Informations sur le chemin :
        1. Dans Nom de chemin, saisissez le nom de ce chemin.
        2. Cliquez sur Suivant.
      • Sur la page Options source :
        1. Laissez le champ Source Extract vide.
        2. Dans Nom de trace, saisissez le nom de trace Initial Load Extract (I1).
        3. Cliquez sur Suivant.
      • Dans la page Target Options :
        1. Dans Cible, sélectionnez Wss.
        2. Dans Hôte cible, entrez l'URL de déploiement cible, sans https :// ni barres obliques de fin.
        3. Dans Nombre de port, saisissez 443.
        4. Dans Nom de trace, entrez I1.
        5. Dans Méthode d'authentification cible, sélectionnez UserID Alias.
        6. Dans Domaine, entrez le nom de domaine créé à l'étape précédente.
        7. Dans Alias, entrez l'alias créé à l'étape précédente (dpuser).
        8. Cliquez sur Suivant.
    3. Cliquez sur Créer et exécuter.
    Vous revenez à la page Distribution Service, où vous pouvez examiner le chemin créé.
  6. Vérifiez le fichier Distribution Path :
    1. Cliquez sur Receiver Service.
    2. Vérifiez les détails de Distribution Path.

Tâche 4 : ajouter un élément Replicat pour Initial Load Extract

  1. Dans la console de déploiement OCI GoldenGate cible, ajoutez une table de point de reprise.
    1. Ouvrez le menu de navigation, puis cliquez sur Connexions de base de données.
    2. Cliquez sur Connecter à la base de données SourceATP.
    3. Dans le menu de navigation, cliquez sur Point de reprise.
    4. Sur la page Point de reprise, cliquez sur Ajouter un point de reprise (icône Plus).
    5. Dans Table de point de reprise, entrez SRCMIRROR_OCIGGLL.CHECKTABLE.
    6. Cliquez sur Soumettre.

      Conseil :

      L'écran n'est pas actualisé lors de la soumission. Pour vérifier que la table de point de reprise a été ajoutée, entrez SRCMIRROR_OCIGGLL.CHECKTABLE dans le champ de recherche, puis cliquez sur Rechercher.
  2. Ajoutez le fichier Replicat :
    1. Cliquez sur Administrator Service, puis sur Ajouter Replicat (icône Plus).
    2. Sur la page Ajouter Replicat, renseignez les champs de formulaire suivants, puis cliquez sur Suivant.
      • Pour le type de réplication, sélectionnez Nonintegrated Replicat.
      • Dans Nom de processus, entrez un nom, tel que RIL.
    3. Sur la page Options Replicat, renseignez les champs de formulaire suivants, puis cliquez sur Suivant :
      • Dans Nom, saisissez le nom de la trace de la tâche 2 (I1).
      • Dans Domaine, sélectionnez le domaine de la connexion Autonomous Database.
      • Dans Alias, sélectionnez l'alias de la connexion Autonomous Database.
      • Dans Table de point de reprise, sélectionnez la table de point de reprise créée à l'étape 1.
    4. Sur la page Options gérées, laissez les champs tels quels, puis cliquez sur Suivant.
    5. Sur la page Replicat Paramètres, ajoutez la correspondance suivante, puis cliquez sur Créer et exécuter :
      MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    Vous revenez à la page de présentation, dans laquelle vous pouvez consulter les détails de Replicat.
  3. Sélectionnez Replicat (RIL) et visualisez les Détails correspondants.
  4. Cliquez sur Statistics et vérifiez le nombre d'insertions. Actualisez la page.
    • Si le nombre d'insertion ne change pas, tous les enregistrements de Initial Load ont été chargés et vous pouvez arrêter Replicat (RIL).
    • Si le nombre d'insertions continue d'augmenter, actualisez la page jusqu'à ce que tous les enregistrements du chargement initial soient chargés avant de continuer.

Tâche 5 : vérifier le chargement initial

  1. Dans la console Oracle Cloud, ouvrez Database Actions à partir de la page des détails de la base de données Autonomous Data Warehouse.
  2. Dans Database Actions, sous Développement, cliquez sur SQL.
  3. Dans l'outil SQL, entrez chacune des instructions suivantes dans la feuille de calcul et cliquez sur Run Statement :
    SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CITY;
    SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CUSTOMER;
La sortie doit renvoyer les données chargées dans les tables de base de données cible suite au chargement initial.

Tâche 6 : créer un fichier Distribution Path pour un fichier Change Data Capture

  1. Dans la console de déploiement source, cliquez sur Distribution Service.
  2. Cliquez sur Ajouter Distribution Path.
  3. Renseignez le formulaire Ajouter un chemin comme suit :
    1. Sur la page Informations sur le chemin :
      1. Dans Nom de chemin, entrez un nom.
      2. Cliquez sur Suivant.
    2. Sur la page Options source :
      1. Pour Source Extract, sélectionnez Change Data Capture Extract (ECDC)).
      2. Dans Nom de trace, sélectionnez le fichier de trace Change Data Capture (C1).
      3. Cliquez sur Suivant.
    3. Dans la page Target Options :
      1. Dans Cible, sélectionnez Wss.
      2. Dans Hôte cible, entrez l'URL de la console de déploiement cible (vous pouvez le trouver sur la page de détails du déploiement, sans https :// ni barres obliques de fin).
      3. Dans Nombre de port, saisissez 443.
      4. Dans Nom de trace, entrez C1.
      5. Dans Méthode d'authentification cible, sélectionnez UserID Alias.
      6. Dans Domaine, entrez le nom du domaine.
      7. Dans Alias, saisissez l'alias.
    4. Cliquez sur Créer un chemin et exécuter.
  4. Dans la console de déploiement cible, cliquez sur Receiver Service, puis vérifiez le fichier Receiver path créé.

Tâche 7 : ajoutez Replicat pour Change Data Capture.

  1. Ajoutez Replicat avec les valeurs suivantes :
    1. Sur la page d'informations Replicat :
      • Pour Replicat Type, sélectionnez Coordinated Replicat.
      • Dans Nom de processus, entrez un nom, tel que RCDC.
    2. Sur la page Options Replicat :
      • Dans Replicat Trail, saisissez le nom de la trace de la tâche 2 (C1).
      • Dans Domaine, sélectionnez le domaine de la connexion Autonomous Database.
      • Dans Alias, entrez l'alias d'informations d'identification.
      • Dans Table de point de reprise, sélectionnez la table de point de reprise que vous avez créée.
    3. Sur la page Replicat Paramètres, ajoutez la correspondance suivante, puis cliquez sur Créer et exécuter :
      MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
  2. Sur la page de présentation Administration Service, sélectionnez Replicat pour Initial Load (RIL) et consultez ses informations.
  3. Cliquez sur Statistics et vérifiez le nombre d'insertions. Actualisez la page.
    • Si le nombre d'insertion ne change pas, tous les enregistrements du chargement initial ont été chargés et vous pouvez arrêter Replicat (RIL).
    • Si le nombre d'insertions continue d'augmenter, actualisez la page jusqu'à ce que tous les enregistrements du chargement initial soient chargés avant de continuer.
  4. Revenez à la page de présentation du service d'administration, puis lancez Coordinated Replicat (RCDC).
  5. Après avoir démarré Coordinated Replicat, consultez ses détails et ses statistiques afin de connaître le nombre d'insertions.

Tâche 8 : vérifier Change Data Capture

Effectuez des mises à jour de la base de données HeatWave source pour vérifier la réplication vers Autonomous Data Warehouse.
  1. Dans OCI Bastion, créez une session de transmission de port SSH à l'aide de l'adresse IP MySQL et du port 3306. Ajoutez la clé SSH publique.
  2. Connectez-vous à MySQL dans Cloud Shell à l'aide de votre clé privée et du port 3306.
  3. Une fois la connexion établie, exécutez la commande suivante :
    mysqlsh admin@localhost:3306 --sql
  4. Exécutez le script suivant pour effectuer des opérations d'insertion dans la base de données HeatWave :
    use SRC_OCIGGLL;
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
    commit;
  5. Dans la console de déploiement MySQL source, sélectionnez le nom Change Data Capture Extract, puis cliquez sur Statistiques. Vérifiez que SRC_OCIGGLL.SRC_CITY comporte 10 insérations.

    Remarques :

    Si Extract n'a capturé aucune insertion, redémarrez Extract.

Tâche 9 : surveiller les processus et en assurer la maintenance

  1. Surveillez les performances.
  2. Gérez les fichiers de trace.