YugabyteDBからAutonomous AI Transaction Processingへのデータのレプリケート

OCI GoldenGateを使用して、YugabyteDBソースからAutonomous AI Transaction Processingターゲットにデータをレプリケートする方法について学習します。

開始する前に

このクイックスタートを正常に完了するには、次のものがあることを確認します。

YugabyteDBの設定

YugabyteDBインスタンスを設定するには:
  1. Oracle Cloud Computeを使用してYugabyteDBをホストする場合は、ポート5433を開きます。
    sudo firewall-cmd --permanent --add-port=5432/tcp
    sudo firewall-cmd --reload 
    sudo firewall-cmd --list-all 
  2. VCNのセキュリティ・リストでポート5433を開きます。
  3. YugabyteDBに接続します
  4. サンプル・データをダウングレードします
  5. 次のコマンドを実行して、ユーザーを設定します。<password>プレースホルダを実際のパスワードに置き換えてください。
    create user ggadmin with password '<password>'; 
    alter user ggadmin with SUPERUSER; 
    GRANT ALL PRIVILEGES ON DATABASE ociggll TO ggadmin; 

環境設定: Autonomous AI Transaction Processing(ATP)

  1. サンプル・データベース・スキーマをダウンロードして解凍します。
  2. GGADMINユーザーをロック解除します。
    1. Oracle Cloudコンソールで、「Autonomous AI Database」ページからATPインスタンスを選択して、その詳細を表示し、データベース・アクションにアクセスします。
    2. 「データベース・アクション」をクリックし、「データベース・ユーザー」をクリックします。
    3. GGADMINを見つけて、その省略記号メニュー(3つのドット)をクリックし、「編集」を選択します。
    4. 「ユーザーの編集」パネルで、GGADMINパスワードを入力し、パスワードを確認して、「アカウントがロックされています」の選択を解除します。
    5. 「変更の適用」をクリックします。
  3. ターゲット・サンプル・スキーマおよびデータをロードします。
    1. 「データベース・アクション」メニューから、「SQL」を選択します。
    2. OCIGGLL_OCIGGS_SETUP_USERS_ADW.sqlからスクリプトをコピーしてSQLワークシートに貼り付けます。
    3. 「スクリプトの実行」をクリックします。「スクリプト出力」タブに確認メッセージが表示されます。
    4. SQLワークシートをクリアして、OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sqlからSQLをコピーして貼り付けます。
    5. 表が正常に作成されたことを確認するには、SQLウィンドウを閉じて再度開きます。「ナビゲータ」タブで、SRC_OCIGGLLスキーマを検索し、それぞれのドロップダウンから表を選択します。

タスク1: OCI GoldenGateリソースの作成

このクイックスタートの例では、ソースとターゲットの両方のデプロイメントおよび接続が必要です。
  1. ソースPostgreSQLデータベースのデプロイメントを作成します。
  2. ターゲットのAutonomous AI Transaction Processingインスタンスのデプロイメントを作成します
  3. ソースPostgreSQLデータベースへの接続を作成します
    1. 「タイプ」で、必ず「YugabyteDB」を選択します。
    2. 「データベース名」に、YugabyteDB名を入力します。
    3. 「ホスト」に、YugabyteDBが実行されるコンピュート・インスタンスのパブリックIPを入力します。
    4. 「ポート」に、5433と入力します。
    5. 「ユーザー名」に、ggadminと入力します。
    6. 「パスワード」で、パスワードを入力します。
    7. 「セキュリティ・プロトコル」で、「プレーン」を選択します。
  4. ターゲットのAutonomous AI Transaction Processingインスタンスの接続を作成します
  5. GoldenGateへの接続の作成から、この接続をソースPostgreSQLデプロイメントに割り当てます
  6. ソースPostgreSQLデプロイメントにソース接続を割り当てる
  7. ターゲットOracleデプロイメントにターゲット接続を割り当てます

タスク2: サプリメンタル・ログの有効化

サプリメンタル・ロギングの有効化の手順:
  1. PostgreSQL GoldenGateデプロイメント・コンソールを起動します:
    1. 「デプロイメント」ページから、PostgreSQLデプロイメントを選択してその詳細を表示します。
    2. PostgreSQLデプロイメントの詳細ページで、「コンソールの起動」をクリックします。
    3. デプロイメント・コンソールのサインイン・ページで、デプロイメントの作成時に指定したGoldenGoldenGate管理資格証明を入力します。

      ノート:

      デプロイメントの作成時にIAMが資格証明ストアとして選択されなかった場合は、サインインが必要です。
  2. GoldenGate 26aiでは、左側のナビゲーションで「DB接続」をクリックし、ソースYugabyteDBデータベース、「Trandata」の順にクリックします。
  3. 「TRANDATA」ページで、「TRANDATA情報」の横の「TRANDATAの追加」(プラス・アイコン)をクリックします。
  4. 「Trandata」パネルで、「スキーマ名」src_ociggll.*と入力して「送信」をクリックします。

    ノート:

    検索フィールドを使用してsrc_ociggllを検索し、表が追加されたことを確認します。

タスク3: Extractの作成

  1. Change Data Capture Extractを追加します。
    1. 左側のナビゲーション で、「Extracts」をクリックします。
    2. 「抽出」ページで、「抽出の追加」(プラス・アイコン)をクリックし、次のようにフィールドに入力します。
      • 「Extract Information」ページで、次の手順を実行します。
        1. 「抽出」タイプで、「チェンジ・データ・キャプチャ「抽出」を選択します。
        2. 「プロセス名」に、Extractの名前(ECDCなど)を入力します。
        3. 「次へ」をクリックします。
      • 「抽出オプション」ページで、次の手順を実行します。
        1. ソース資格証明の場合は、「ドメイン」ドロップダウンから「Oracle GoldenGate」を選択します
        2. 「別名」ドロップダウンからソースPostgreSQLデータベースを選択します。
        3. 「抽出」トレイル名に、2文字のトレイル名(C1など)を入力します。
        4. 「次へ」をクリックします。
      • 「抽出パラメータ」ページで、MAP *.*, TARGET *.*;を次のように置き換えます:
        TABLE SRC_OCIGGLL.*;
    3. 「作成および実行」をクリックします。
  2. 初期ロードExtractを追加します:
    1. 「抽出」ページで、「抽出の追加」をクリックし、次のように「抽出の追加」フォームに入力します。
      • 「抽出情報」ページで、次の手順を実行します。
        1. 「抽出」タイプの場合は、「初期ロード抽出」を選択します。
        2. 「プロセス名」に、名前(EILなど)を入力します。
        3. 「次へ」をクリックします。
      • 「抽出オプション」ページで、次の手順を実行します。
        1. ソース資格証明の場合は、「ドメイン」ドロップダウンから「Oracle GoldenGate」を選択します。
        2. 「別名」ドロップダウンから「YugabyteDB」を選択します。
        3. 「Extractトレイル名」に、2文字のトレイル名(I1など)を入力します。
        4. 「次へ」をクリックします。
      • 「抽出パラメータ」ページで、テキスト領域の内容を次のように置き換えます。
        EXTRACT EIL
        USERIDALIAS YugabyteDB_Compute, DOMAIN OracleGoldenGate
        EXTFILE I1, PURGE
        TABLE src_ociggll.*;

        ノート:

        移動する前に、必ずUSERIDALIASの前にあるSOURCEDBパラメータを削除してください。
    2. 「作成および実行」をクリックします。
「抽出」ページに戻り、「抽出」の開始を確認できます。

タスク4: Initial LoadExtractDistribution Pathの作成

  1. 「デプロイメント」ページで、ターゲットOracleデプロイメントを選択します。
  2. デプロイメントの詳細ページで、「コンソールの起動」をクリックし、管理ユーザーとしてログインします。
  3. IAM資格証明ストアを使用する場合は、Distribution Pathの作成ステップに進みます。GoldenGate資格証明ストアを使用する場合は、ソースGoldenGateがターゲットGoldenGateへの接続に使用するユーザーを作成します。
    1. ナビゲーション・メニューで、「ユーザー管理」をクリックします。
    2. 「新規ユーザーの追加」(プラス・アイコン)をクリックして、次のようにフィールドに入力します。「送信」をクリックします:
      • 「ユーザー名」に、ggsnetと入力します。
      • 「ロール」で、「演算子」を選択します。
      • 確認のためにパスワードを2回入力します。
  4. ソースのPostgreSQLデプロイメント・コンソールで、前のステップで作成したユーザーのパス接続を作成します。
    1. ナビゲータ・メニューで、「パス接続」をクリックします。
    2. 「パス接続の追加」(プラス・アイコン)をクリックし、次のようにフィールドに入力します。「送信」をクリックします:
      • 「資格証明別名」に、dpuserと入力します。
      • 「ユーザーID」に、ggsnetと入力します
      • 「パスワード」に、前のステップで使用したものと同じパスワードを入力します。
  5. Distribution Pathを作成します。
    1. サービス・メニュー・バーで、Distribution Serviceをクリックし、「追加」Distribution Path(プラス・アイコン)をクリックします。
    2. 「パスの追加」フォームに次のように入力します。
      • 「パス情報」ページで、次の手順を実行します。
        1. 「パス名」に、このパスの名前を入力します。
        2. 「次へ」をクリックします。
      • 「ソース・オプション」ページで、次の手順を実行します。
        1. 「ソース」Extractの場合は、空白のままにします。
        2. 「トレイル名」に、Initial Load Extractトレイル名(I1)を入力します。
        3. 「次へ」をクリックします。
      • 「ターゲット・オプション」ページで、次の手順を実行します。
        1. 「ターゲット・プロトコル」で、「wss」を選択します。
        2. 「ターゲット・ホスト」に、ターゲット3デプロイメントURLをhttps://または後続のスラッシュなしで入力します。
        3. 「ポート番号」に、443と入力します。
        4. 「トレイル名」に、I1と入力します。
        5. 「ターゲット認証方式」で、「OAuth」を選択します。

          ノート:

          デプロイメントの作成時にGoldenGateが資格証明ストアとして選択されている場合は、「ユーザーID別名」を選択します。それ以外の場合は、「OAuth」を選択します。
        6. 「ドメイン」に、前のステップで作成したドメイン名を入力します。
        7. 「別名」に、前のステップで作成した別名を入力します(dpuser)。
        8. 「次へ」をクリックします。
    3. 「作成および実行」をクリックします。
    Distribution Serviceページに戻り、作成したパスを確認できます。
  6. ターゲットOracleデプロイメント・コンソールで、分散パスの結果として作成された受信パスを確認します:
    1. Receiver Serviceをクリックします。
    2. Distribution Pathの詳細を確認します。

タスク5: Initial LoadのためのReplicatの追加

  1. ターゲットのOracleデプロイメントで、Checkpoint表を追加します。
    1. ナビゲーション・メニューで、「DB接続」をクリックします
    2. ターゲットのAutonomous AI Databaseインスタンスを選択し、Checkpointsを選択します。
    3. Checkpointsページで、「チェックポイントの追加」(プラス・アイコン)をクリックします。
    4. Checkpointパネルで、「スキーマ表」SRCMIRROR_OCIGGLL.CHECKTABLEと入力します。
    5. 「送信」をクリックします。
  2. Replicatを追加します。
    1. ナビゲーション・メニューで、Replicatsをクリックします。
    2. Replicatsページで、「追加」Replicat(プラス・アイコン)をクリックし、次のように「追加」Replicatフィールドに入力します。
      • Replicat情報ページで、次の手順を実行します。
        1. Replicatタイプで、Nonintegrated Replicatを選択します。
        2. 「プロセス名」に、名前(RILなど)を入力します。
        3. 「次」をクリックします
      • Replicatオプション・ページで、次の手順を実行します。
        1. Replicat「トレイル名」に、タスク2からトレイルの名前(I1)を入力します。
        2. 「ターゲット資格証明」で、Autonomous AI Database接続の「ドメイン」および「別名」を選択します。
        3. 「チェックポイント表」で、ステップ1で作成したチェックポイント表を選択します。
        4. 「次へ」をクリックします。
      • 「パラメータ・ファイル」ページで、MAP *.*, TARGET *.*;を次のように置き換えます。
        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    3. 「作成および実行」をクリックします。
      Replicatsページに戻り、Replicatの詳細を確認できます。
  3. Replicat (RIL)を選択し、その詳細を表示します。
  4. 「統計」をクリックし、挿入の数を確認します。ページをリフレッシュします。
    • 挿入の数が変更されない場合、Initial Loadのすべてのレコードがロードされており、Replicat (RIL)を停止できます
    • 挿入の数が増加し続ける場合、Initial Loadレコードがすべて読み込まれるまでページをリフレッシュしてから続行してください。
  5. Initial Loadを確認します。
    1. Oracle CloudコンソールAutonomous AI Databaseの詳細ページで、「データベース・アクション」をクリックし、「SQL」をクリックします。
    2. SQLツールで、次の各文をワークシートに入力し、「文の実行」をクリックします:
      SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CITY;
      SELECT * FROM SRCMIRROR_OCIGGLL.SRC_CUSTOMER;
    出力では、Initial Loadの結果としてターゲット・データベース表に読み込まれたデータが返されます。

タスク6: Change Data Capture ExtractのためのDistribution Pathの作成

  1. ソースPostgreSQLデプロイメント・コンソールで、Distribution Serviceをクリックします。
  2. 「Add Distribution Pathをクリックします。
  3. 「パスの追加」フォームに次のように入力します。
    1. 「パス情報」ページで、次の手順を実行します。
      1. 「パス名」に、名前を入力します。
      2. 「次へ」をクリックします。
    2. 「ソース・オプション」ページで、次の手順を実行します。
      1. 「ソース」Extractで、Change Data Capture Extract (ECDC))を選択します。
      2. 「トレイル名」で、Change Data Captureトレイル・ファイル(C1)を選択します。
      3. 「次へ」をクリックします。
    3. 「ターゲット・オプション」ページで、次の手順を実行します。
      1. 「ターゲット」で、「wss」を選択します。
      2. 「ターゲット・ホスト」に、ターゲット・デプロイメント・コンソールのURLを入力します(これは、https://または後続のスラッシュなしで、デプロイメントの詳細ページで確認できます)。
      3. 「ポート番号」に、443と入力します。
      4. 「トレイル名」に、C1と入力します。
      5. 「ターゲット認証方式」で、「OAuth」を選択します。

        ノート:

        デプロイメントの作成時にGoldenGateが資格証明ストアとして選択されている場合は、「ユーザーID別名」を選択します。それ以外の場合は、「OAuth」を選択します。
      6. 「ドメイン」に、ドメイン名を入力します。
      7. 「別名」に、別名を入力してください。
    4. 「パスの作成および実行」をクリックします。
  4. ターゲットOracleデプロイメント・コンソールで、「レシーバ・サービス」をクリックし、作成された受信パスを確認します。

タスク7: Change Data CaptureReplicatの追加

  1. ターゲットのOracleデプロイメント・コンソールで、Replicatを追加します。
    1. 管理サービスのナビゲーション・メニューで、Replicatsをクリックします。
    2. Replicatsページで、「追加」Replicat (プラス・アイコン)をクリックし、次のように「追加」Replicatフォームに入力します。
      • 「Replicat情報」ページで、次の手順を実行します。
        1. Replicatタイプで、Nonintegrated Replicatを選択します。
        2. 「プロセス名」に、名前(RCDCなど)を入力します。
        3. 「次へ」をクリックします。
      • Replicatオプション・ページで、次の手順を実行します。
        1. Replicat「トレイル名」に、タスク3からトレイルの名前(C1)を入力します。
        2. 「ターゲット資格証明」で、Autonomous AI Database接続のドメインおよび別名を選択します。
        3. 「チェックポイント表」で、チェックポイント表を選択します。
      • Replicatパラメータ・ページで、MAP *.*, TARGET *.*;を次のマッピングに置き換えます。
        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    3. 「作成」をクリックします。Replicatは実行しないでください。
  2. Replicatsページで、Initial LoadReplicat (RIL)を選択し、その詳細を表示します。
  3. 「統計」をクリックし、挿入の数を確認します。ページをリフレッシュします。
    • 挿入の数が変更されない場合、Initial Loadのすべてのレコードがロードされており、Replicat (RIL)を停止できます
    • 挿入の数が増加し続ける場合、続行する前に、Initial Loadレコードがすべて読み込まれるまでページをリフレッシュしてから続行してください。

    ノート:

    挿入が表示されない場合は、「パフォーマンス・メトリック・サービス」をクリックし、「抽出」を選択して、「データベース統計」をクリックします。
  4. Replicatsページに戻り、Change Data Capture (RCDC)用のReplicatを起動します。
  5. Change Data CaptureReplicatを起動した後、その詳細および統計を確認して、挿入の数を表示します。
  6. レプリケーションの検証:
    1. 次のスクリプトを実行して、PostgreSQLデータベースへの挿入を実行します。
      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);
    2. ソースPostgreSQLデプロイメント・コンソールで、Change Data Capture Extract (ECDC)を選択し、「統計」をクリックします。src_ociggll.src_cityに10の挿入があることを確認します。

      ノート:

      Extractが挿入を取得しなかった場合は、ECDC Extractを再起動します。
    3. ターゲットのOracleデプロイメント・コンソールで、Replicat名(RCDC)を選択し、その「詳細」を表示して、「統計」を選択します。SRCMIRROR_OCIGGLL.SRC_CITYに10個の挿入があることを確認します。

タスク8: プロセスのモニターおよびメンテナンス

  1. パフォーマンスをモニターします
  2. トレイル・ファイルを管理します