Répliquer des données de HeatWave vers Amazon Kinesis

Découvrez comment utiliser OCI GoldenGate pour répliquer des données de HeatWave vers Amazon Kinesis.

Avant de commencer

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

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 des données, puis exécutez-le sur la base de donnée HeatWave sur OCI pour créer la base de donnée 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 le port port 3306, via lequel OCI GoldenGate peut se connecter.

    1. Dans la console Oracle Cloud, localisez le sous-réseau que la base de données HeatWave sur OCI utilise.

    2. Dans la liste de sécurité du sous-réseau, créez une règle d'entrée pour port TCP/3306.

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

  1. Créez un déploiement MySQL pour la base de données HeatWave source.

  2. Créez un déploiement Big Data pour la cible Amazon Kinesis.

  3. Créez une connexion à la base de données Heatwave source.

  4. Connexion à Amazon Kinesis.

  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 Big Data cible.

Tâche 2 : créer l'extraction

  1. Sur la page Déploiements, sélectionnez le déploiement MySQL créé dans la tâche 1.

  2. Sur la page de détails du déploiement, sélectionnez 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. Ajoutez une extraction de capture des données de modification avec les valeurs suivantes :

    • Type d'extraction : Extraction de capture des données de modification

    • Process Name (Nom du processus) : ECDC

    • Nom de trace d'extraction : C1

    • Fichier de paramètres : remplacez MAP *.*, TARGET *.*; par TABLE SRC_OCIGGLL.*;.

Tâche 3 : créer le chemin de distribution pour le déploiement Big Data cible

  1. Si vous utilisez la banque d'informations d'identification IAM, passez à l'étape 3. Si vous utilisez la banque d'informations d'identification GoldenGate, créez un utilisateur avec lequel GoldenGate source se connecte à GoldenGate cible.

    1. Sur la page Déploiements, sélectionnez le déploiement Big Data cible.

    2. Sur la page de détails du déploiement, sélectionnez Lancer la console, puis connectez-vous en tant qu'administrateur.

    3. Dans le menu de navigation de la console de déploiement, sélectionnez Administration des utilisateurs.

    4. Sélectionnez Ajouter un nouvel utilisateur (icône Plus), renseignez les champs comme suit, puis sélectionnez Soumettre :

      • Dans Nom utilisateur, entrez ggsnet.

      • Dans Rôle, sélectionnez Opérateur.

      • Indiquez le mot de passe à deux reprises pour vérification.

  2. Dans la console du déploiement MySQL source , créez une connexion de chemin pour l'utilisateur créé à l'étape précédente.

    1. Ouvrez le menu de navigation, puis sélectionnez Connexion de chemin.

    2. Sélectionnez Ajouter une connexion de chemin (icône Plus), renseignez les champs comme suit, puis sélectionnez Soumettre :

      • Dans Alias d'informations d'identification, entrez dpuser.

      • Dans ID utilisateur, entrez ggsnet.

      • Dans Mot de passe, entrez le même mot de passe que celui utilisé à l'étape précédente.

  3. Dans la console de déploiement MySQL source, ajoutez un chemin de distribution avec les valeurs suivantes :

    1. Sur la page Options source :

      • Dans Extraction source, sélectionnez l'extraction créée dans la tâche 2.

      • Dans Nom de la trace, saisissez un Nom à deux caractères, tel que C1

    2. Sur la page Options cible :

      • Dans Hôte cible, entrez le domaine hôte du déploiement cible.

      • Dans Numéro de port, saisissez 443.

      • Dans Nom de la trace, saisissez un Nom à deux caractères, tel que C1

      • Dans Alias, entrez l'alias d'informations d'identification créé à l'étape 2.

  4. Dans la console de déploiement Big Data OCI GoldenGate cible, vérifiez le chemin de destinataire créé consécutivements au chemin de distribution :

    1. Sélectionnez Service du destinataire.

    2. Vérifiez les détails du chemin du destinataire.

Tâche 4 : ajouter une réplication pour Amazon Kinesis

  1. Dans le déploiement Big Data, sélectionnez Réplications, puis Ajouter une réplication (icône Plus).

  2. Ajoutez une réplication avec les valeurs suivantes :

    • Pour le type de réplication, sélectionnez Réplication classique.

    • Dans Nom de processus, entrez un nom.

    • Dans Nom de traçabilité cible, saisissez le nom de cette trace à partir de l'étape 2.

    • Pour Cible, sélectionnez Amazon Kinesis.

    • Pour Alias disponibles pour Amazon Kinesis, sélectionnez votre alias dans la liste déroulante.

    • Dans la page Properties File, modifiez les champs marqués comme #TODO :

      • gg.handler.kinesis.region : indiquez la région Amazon Web Services (AWS) pour le flux Kinesis cible.

      • gg.handler.kinesis.streamMappingTemplate : par défaut, elle est définie sur ${tableName}, ce qui met en correspondance les flux de données en fonction du nom de la table source. Si vous souhaitez effectuer une mise en correspondance avec un flux de données existant, vous pouvez fournir des noms de flux statiques ou utiliser des mots-clés de modèle pour affecter des noms de flux de données de manière dynamique.

Tâche 5 : vérification de la réplication de données d'HeatWave vers Amazon Kinesis

Effectuez des mises à jour de la base de données HeatWave source pour vérifier la réplication vers Amazon Kinesis.

  1. Dans OCI Bastion, créez une session de transmission de port SSH à l'utilisation de l'adresse IP MySQL et du port port 3306. Ajoutez la clé SSH publique.

  2. Connectez-vous à MySQL dans Cloud Shell à l'aide de votre clé privée et du port 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 insertions 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 du déploiement MySQL source, sélectionnez le nom de l' extraction de capture de données de modification (ECDC), puis cliquez sur Statistiques. Vérifiez que SRC_OCIGGLL.SRC_CITY comporte 10 insertions.

  6. Dans la console de déploiement Big Data cible, sélectionnez le nom de réplication, puis Statistiques. Vérifiez que SRC_OCIGGLL.SRC_CITY comporte 10 insertions.

  7. Dans Amazon Kinesis, vous pouvez vérifier les messages dans le flux de données cible / visualiseur de données.