8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OCI GoldenGate Veridataを試してみた

8
Last updated at Posted at 2026-07-14

はじめに

OCI GoldenGateに新しいデプロイメント・タイプ「データ検証」が追加され、Oracle GoldenGate Veridata 26cをOCI GoldenGate上で利用できるようになりました。
以下の記事をご参照ください:
Introducing Data verification deployments powered by GoldenGate Veridata 26c in OCI GoldenGate(英語)

これまでOCI GoldenGateは、主にデータのレプリケーション、データ変換、ストリーム分析を担っていました。今回追加されたデータ検証デプロイメントにより、データを「移動する」だけでなく、ソースとターゲットの内容が一致しているかをOCI GoldenGate上で「検証する」ことも可能になりました。

本記事では、OCI GoldenGate Veridataの環境を構成し、2つのOracle DatabaseにあるHR.EMPLOYEES表を比較するところまでを試します。

GoldenGate Veridataとは

Oracle GoldenGate Veridataは、ソースとターゲットのデータを比較し、不整合なデータを検出するための製品です。製品の基本的な仕組みについては、Oracle公式ドキュメントのOracle GoldenGate Veridataとは(日本語・23c)で確認できます。なお、今回利用する26cの最新情報はOracle GoldenGate Veridata 26cドキュメント(英語)を参照してください。

主な特徴は次のとおりです。

  • レプリケーション処理を継続したまま、ソースとターゲットのデータを比較できる
  • ソースとターゲットで異なるデータ型を標準化して比較できる
  • 不一致行を検出し、レポートとして確認できる
  • 必要に応じて不一致データを修復できる
  • ジョブをスケジュールして、定期的な検証を自動化できる

比較時には、ソース側とターゲット側のVeridata Agentがデータを取得し、標準化とハッシュ処理を行います。Veridata Serverは両者の結果を比較し、不一致の可能性がある行を確認処理によって絞り込みます。この2段階の比較により、更新やレプリケーションが進行中の環境でも不整合を判定できます。

OCI GoldenGate Veridataの基本構成は次のようになります。

OCI GoldenGateでは、データベース接続ごとにVeridata Agentデプロイメントを1つ作成します。さらに、各Agentを参照するGoldenGate接続を作成し、そのGoldenGate接続をVeridata Serverへ割り当てます。

今回の構成では、次のリソースを作成します。

リソース 用途
データベース接続 2 ソースDB、ターゲットDBへの接続
Veridata Agentデプロイメント 2 各データベースから比較対象データを取得
GoldenGate接続 2 Veridata Serverから各Agentへ接続
Veridata Serverデプロイメント 1 比較ジョブの管理、実行、結果表示

今回の検証内容

前提として、ソースDBとターゲットDBは作成済みです。また、OCI GoldenGateによるデータ連携も構成済みで、今回比較するHR.EMPLOYEESのデータはソースからターゲットへ連携済みの状態から検証を開始します。データベースの作成およびOCI GoldenGateを使用したレプリケーション構成は、本記事の対象外です。OCI GoldenGateのデータ連携の構成方法については、OCIチュートリアル:Autonomous Database間のデータ連携(OCI GoldenGate)をご参照ください。

検証環境は次のとおりです。

項目 設定
ソース Oracle Base Database ServiceのPDB1
ターゲット Oracle Autonomous AI Database
ソース接続 SourcePDB
ターゲット接続 TargetADB
ソースAgent GGVeridataAgent1
ターゲットAgent GGVeridataAgent2
Veridata Server GGVeridataServer
スキーマ ソース、ターゲットともにHR
比較対象 HR.EMPLOYEES
グループ Compare_HR
ジョブ Compare_HR_Job
プロファイル $default

今回の目的は、次の一連の動作を確認することです。

  1. Veridata AgentとVeridata ServerをOCI GoldenGate上に作成する
  2. Veridata Serverから各Agentへ接続できるようにする
  3. ソース表とターゲット表の比較ペアを作成する
  4. 比較ジョブを実行する
  5. 2つの表が同期していることをレポートで確認する

今回は比較処理のみを対象とし、差分データの自動修復は実行しておりません。

前提条件

本手順を実施する前に、次の準備が必要です。

  • OCI GoldenGateを利用できるIAMポリシーが設定されていること
  • Veridataデプロイメントを配置するVCNおよびサブネットがあること
  • ソースDBとターゲットDBが作成済みであること
  • ソースDBとターゲットDBにネットワーク到達できること
  • ソースDB用、ターゲットDB用のOCI GoldenGateデータベース接続が作成済みであること
  • 両データベースに比較対象となるHR.EMPLOYEES表があること
  • OCI GoldenGateによるデータ連携が構成済みで、比較対象データがターゲットへ連携済みであること
  • 接続でOCI Vaultのシークレットを使用する場合、デプロイメントからシークレットを参照できるポリシーがあること

パブリック・コンソール・アクセスを有効にする場合やZero Trust Packet Routingを利用する場合には、追加のポリシー、サービス制限、ネットワーク設定も確認してください。

1. OCI GoldenGateの管理画面を開く

OCIコンソールのナビゲーション・メニューから、Oracle AI Database → GoldenGateを選択します。

01-oci-goldengate-menu.png

以降のデプロイメントと接続は、原則として同じコンパートメントに作成します。

2. ソースDB用のVeridata Agentデプロイメントを作成する

GoldenGateのデプロイメント画面でデプロイメントの作成をクリックします。

デプロイメントの作成画面で、Veridata Agentの設定を入力します。
今回のソース用Agent名はGGVeridataAgent1としました。

02-create-veridata-agent.png

一般情報を入力した後、デプロイメント・タイプとしてデータ検証、テクノロジとしてOracle GoldenGate Veridata Agentを選択します。

03-select-veridata-agent.png

今回は本番構成、2 OCPU、自動スケーリング無効を選択しました。2 OCPUの場合、画面上ではメモリー32 GB、ネットワーク帯域幅2 Gbps、ストレージ1,000 GBが割り当てられます。

04-agent-sizing.png

続いて、プライベート・サブネットとライセンス・タイプを選択してデプロイメントを作成します。Veridata Agentで選択できるライセンス・タイプはBYOLです。ここでのOCPU数は検証時の設定であり、推奨値ではありません。実際の比較ペア数や同時実行数に合わせて選択してください。

05-agent-network-license.png

デプロイメントがアクティブになったら、割当て済接続 → 接続の割当てをクリックし、ソースDB接続SourcePDBを割り当てます。

06-agent1-source-connection.png

3. ターゲットDB用のVeridata Agentデプロイメントを作成する

同じ手順で、ターゲット用のGGVeridataAgent2を作成します。

07-agent2-create.png

デプロイメントがアクティブになったら、ターゲットDB接続TargetADBを割り当てます。

08-agent2-target-connection.png

これで、ソースとターゲットにそれぞれ専用のVeridata Agentが用意できました。

4. Veridata Serverデプロイメントを作成する

再度デプロイメントの作成を開き、名前をGGVeridataServerとします。

09-create-veridata-server.png

デプロイメント・タイプはデータ検証、テクノロジはOracle GoldenGate Veridata Serverを選択します。AgentではなくServerを選択していることを確認してください。

10-select-veridata-server.png

今回は、本番構成、4 OCPU、自動スケーリング無効としました。画面上ではメモリー64 GB、ネットワーク帯域幅4 Gbps、ストレージ2,000 GBが割り当てました。

11-server-sizing.png

次に、サブネット、ライセンス・タイプ、GoldenGateインスタンス名、資格証明ストア、管理者ユーザー名、管理者パスワードを設定します。Veridata Serverでは、ライセンス込みまたはBYOLを選択できます。

12-server-settings.png

ここで設定した管理者ユーザー名とパスワードは、後ほどVeridata管理コンソールへのログインに使用します。

13-server-admin-settings.png

デプロイメント作成後の詳細画面で、作成したVeridata Serverの状態を確認します。

14-server-created.png

5. 各AgentデプロイメントへのGoldenGate接続を作成する

ここで作成するのはデータベース接続ではなく、Veridata ServerからVeridata Agentへ接続するためのGoldenGate接続です。

GoldenGateの接続の管理画面から接続の作成をクリックします。

15-goldengate-connection-create.png

1つ目の接続はGGConnection4agent1とし、タイプにGoldenGateを選択し、デプロイメントにGGVeridataAgent1を選択します。

16-goldengate-connection-agent1.png

同様に、2つ目の接続GGConnection4agent2を作成し、GGVeridataAgent2を選択します。

17-goldengate-connection-agent2.png

6. GoldenGate接続をVeridata Serverデプロイメントへ割り当てる

GGVeridataServerの詳細画面を開き、割当て済接続 → 接続の割当てから、先ほど作成した2つのGoldenGate接続を割り当てます。

割当て後、両方の接続がアクティブになっていることを確認します。

18-server-assigned-connections.png

構成上の関係は次のようになります。

Veridata Serverに割り当てた接続 Veridata Agentのデプロイメント Veridata Agentのデプロイメントに割り当てたDB接続
GGConnection4agent1 GGVeridataAgent1 SourcePDB
GGConnection4agent2 GGVeridataAgent2 TargetADB

7. Veridata管理コンソールへログインする

GGVeridataServerの詳細画面にあるコンソールの起動をクリックします。

19-veridata-console-launch.png

Veridata Server作成時に設定した管理者ユーザー名とパスワードを入力してログインします。

20-veridata-login.png

ログイン後、左メニューの接続を開くと、OCI GoldenGate側で割り当てた2つのAgentがVeridata接続として自動生成されていました。

21-veridata-connections.png

この検証では、GGVeridataAgent1がソース、GGVeridataAgent2がターゲットです。

8. グループと比較ペアを作成する

左メニューからグループと比較ペアを開き、作成をクリックします。

22-compare-group-create.png

8.1 構成

グループ名をCompare_HRとし、次のように設定します。

項目 ソース ターゲット
接続 GGVeridataAgent1 GGVeridataAgent2
カタログ PDB1 Autonomous Database側のカタログ
スキーマ HR HR

23-compare-group-settings.png

8.2 マッピング・ルール

今回はソースとターゲットで表名が同じため、正確な名前を使用を選択します。

24-exact-name-rule.png

異なる命名規則の表を一括で対応付ける場合は、ワイルドカード・パターンも利用できます。また、画面上では表パーティションやビューを比較対象に含めるかを指定できます。

8.3 表のマッピング

ソースとターゲットのオブジェクト一覧からEMPLOYEESを選択します。ターゲット側にもEMPLOYEESが自動的にマッピングされました。

25-map-tables.png

プレビュー画面で、次の比較ペアが生成されることを確認します。

比較ペア名 ソース表 ターゲット表 プロファイル
EMPLOYEES=EMPLOYEES HR.EMPLOYEES HR.EMPLOYEES $default

26-compare-pair-preview.png

問題がなければ比較ペアの生成をクリックします。

9. ジョブを作成する

左メニューのジョブから作成をクリックし、ジョブ名をCompare_HR_Job、プロファイルを$defaultとします。

グループの追加からCompare_HRを選択し、ジョブへ追加します。

27-create-job.png

作成後のジョブ詳細では、EMPLOYEES=EMPLOYEESの比較ペアがリンクされていることを確認できます。

28-job-details.png

画面にはSchedule Jobも用意されており、定期的な比較ジョブとして実行することもできます。今回は手動実行します。

10. ジョブを実行する

左メニューのジョブの実行を開き、ジョブCompare_HR_Jobとプロファイル$defaultを選択します。

EMPLOYEES=EMPLOYEESにチェックを入れ、ジョブの実行をクリックします。

29-run-job.png

今回は比較のみを確認するため、比較後に修復を自動で実行は選択していません。

11. 実行結果を確認する

ジョブのモニターから実行結果を確認します。

今回の結果は次のとおりでした。

項目 結果
比較ステータス 同期
比較ペア合計 1
同期 1
非同期 0
失敗 0
取消 0
実行時間 3秒

30-job-summary.png

レポート画面でも、In-Sync Compare Pairsが1、Out-of-Sync Compare PairsFailed Compare Pairsが0で、Job completed successfully.と表示されました。

31-job-report.png
これにより、OCI GoldenGate Veridataを使用して、ソースとターゲットのHR.EMPLOYEES表を正常に比較できることを確認しました。

試して分かったこと

OCIコンソールのGUI操作でVeridataの構成を完結できる

従来のようにVeridata ServerやAgentを個別のホストへインストールすることなく、OCI GoldenGateのデプロイメントとして作成できました。デプロイメントの作成、接続の割当て、コンソールの起動まで、OCIコンソール上のGUI操作で実施できます。

OCI GoldenGate Veridataでは3つのデプロイメントを作成する必要がある

OCI GoldenGateでVeridataを構成する場合、ソース用・ターゲット用のVeridata Agent 2台と、比較ジョブを管理するVeridata Server 1台の、合計3つのデプロイメントを作成します。

OCI GoldenGate Veridataでは2種類の接続割り当てが必要

OCI GoldenGate Veridataでは、まずソースDBとターゲットDBのデータベース接続を、それぞれ対応するVeridata Agentデプロイメントに割り当てます。

さらに、AgentデプロイメントごとにVeridata Serverから参照するためのGoldenGate接続を作成し、作成したGoldenGate接続をVeridata Serverデプロイメントに割り当てます。今回の構成では、SourcePDBGGVeridataAgent1へ、TargetADBGGVeridataAgent2へ割り当てたうえで、2つのGoldenGate接続をGGVeridataServerへ割り当てました。

このように、データベース接続はAgentへ、GoldenGate接続はServerへという2段階の割り当てが必要になる点が、OCI GoldenGateでVeridataを構成する際のポイントです。リソース間の関係を整理してから作成すると、接続の割当て先を間違えにくくなります。

まとめ

今回は、OCI GoldenGate Veridataについて、次の流れで動作を確認しました。

  1. ソース用とターゲット用のVeridata Agentを作成
  2. Veridata Serverを作成
  3. Agentを参照するGoldenGate接続をServerへ割り当て
  4. ソースとターゲットの比較ペアを作成
  5. 比較ジョブを実行
  6. HR.EMPLOYEESが同期していることをレポートで確認

OCI GoldenGateにデータ検証 (Veridata) デプロイメントが追加されたことで、OCIコンソール上のGUI操作により、データ・レプリケーションとデータ整合性チェックを同じOCIサービスの中で構成できるようになりました。

OCI GoldenGate Veridataは従量課金モデルで利用できるため、利用量に応じたコストで運用でき、ライセンス版と比べてコストパフォーマンスの向上が期待できます。詳細はOCI GoldenGateの課金情報をご確認ください。

データ移行のカットオーバー前後、GoldenGateレプリケーションの稼働確認、定期的なデータ整合性監視などで活用できそうです。

参考資料

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?