8.9 Oracle GoldenGate for Distributed Applications and AnalyticsによるGCP BigQueryへのリアルタイム・データ取込み

概要

このクイックスタートでは、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)を使用してGCP BigQueryにリアルタイム・データを取り込む方法を手順を追って説明します。

GCP BigQueryは、データの格納、処理および分析のための完全管理型サービスを提供するクラウドベースのデータ・ウェアハウス・プラットフォームです。

GG for DAAでは、ステージングおよびマージストリーミングAPIの設計がサポートされています。ステージングおよびマージでは、変更データがマイクロバッチで一時的な場所にステージングされ、最終的にターゲット表にマージされます。GCSはステージングの場所として使用されます。

すべてのレプリケーション・プロセスは、GoldenGate for Distributed Applications and Analytics (GG for DAA)のGCP BigQueryステージングおよびマージ・ハンドラによって自動的に処理されます。

8.9.1 Google Cloud Platform BigQueryのステージングおよびマージの前提条件

  • Google Cloud Platform (GCP)アカウントの設定。
  • 関連するBigQuery権限があるGoogle Cloud Platform (GCP)サービス・アカウント・キー。GCPサービス・アカウント・キーを、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)サーバー上のディレクトリにコピーします。
  • 関連する権限があるGoogle Cloud Storageバケット。GCSバケットとBigQueryデータセットが同じ場所またはリージョンにあることを確認します。
  • ターゲットのBigQuery表は、Replicatを構成する前に作成できます。必要な権限が提供されている場合は、GG for DAAでターゲットBigQuery表を自動作成できます。

このクイック・スタートでは、GG for DAAに付属のサンプル証跡ファイル(trという名前)を使用します。サンプル証跡ファイルを使用して続行する場合、それはGG for DAAインスタンスのGG_HOME/opt/AdapterExamples/trail/にあります。

GG for DAAによって表が自動的に作成されます。

8.9.2 依存性ファイルのインストール

Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)では、Googleによって提供されているJava SDKが使用されます。それらのSDKは、GG for DAAに付属の依存性ダウンローダ・ユーティリティを使用してダウンロードできます。依存性ダウンローダは、Mavenおよび他のリポジトリから依存性jarファイルをダウンロードするシェル・スクリプトのセットです。

  1. GG for DAA VMで、依存性ダウンローダ・ユーティリティに移動します。それはGG_HOME/opt/DependencyDownloader/にあります。
  2. 必要なバージョンを指定してgcs.shbigquery.shを実行します。

    図8-59 必要なバージョンでのgcs.shおよびbigquery.shの実行

    必要なバージョンでgcs.shおよびbigquery.shを実行します
  3. 2つのディレクトリがGG_HOME/opt/DependencyDownloader/dependenciesに作成されます。これらのディレクトリを書き留めます:
    • /u01/app/ogg/opt/DependencyDownloader/dependencies/bigquery_1.111.1
    • /u01/app/ogg/opt/DependencyDownloader/dependencies/gcs_1.113.9

8.9.3 Oracle GoldenGate for Distributed Applications and AnalyticsでのReplicatの作成

Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)でReplicatを作成するには:

  1. 「管理サービス」タブで、「+」記号をクリックしてReplicatを追加します。

    図8-60 「管理サービス」タブの「+」をクリックします。

    「管理サービス」タブの「+」をクリックします。
  2. 「クラシックReplicat」のReplicatのタイプを選択し、「次へ」をクリックします。クラシックと調整済という2つの異なるReplicatタイプがあります。クラシックReplicatは単一のスレッド・プロセスですが、調整済Replicatは、トランザクションをパラレルに適用するマルチスレッド・プロセスです。

    図8-61 Replicatの追加

    Replicatの追加
  3. Replicatオプションを入力し、「次」をクリックします。
    1. トレイル名: 必要な証跡ファイルの名前(サンプル証跡を使用している場合は、trと指定します)
    2. サブディレクトリ: サンプル証跡を使用する場合は、GG_HOME/opt/AdapterExamples/trail/と指定します。
    3. ターゲット: Google BigQuery
    ステージングおよびマージを有効にし、「使用可能なステージングの場所」として「Google Cloud Storage」を選択します。

    図8-62 Replicatオプション

    Replicatオプション
  4. 「管理対象オプション」はそのままにして、「次」をクリックします。

    図8-63 管理対象オプション

    管理対象オプション
  5. 「パラメータ・ファイル」の詳細を入力し、「次へ」をクリックします。「パラメータ・ファイル」では、ソースからターゲットへのマッピングを指定できます。サンプル証跡ファイル(tr)を使用している場合は、次のように入力します: MAP QASOURCE.*, TARGET <your_schema_name>.*;

    「Replicatタイプ」として「調整済Replicat」を選択した場合は、さらにパラメータを指定する必要があります: TARGETDB LIBFILE libggjava.so SET property=<ggbd-deployment_home>/etc/conf/ogg/your_replicat_name.properties

    図8-64 パラメータ・ファイル

    パラメータ・ファイル
  6. 次の画面で、TODOとタグ付けされているプロパティのみを更新し、「作成および実行」をクリックする必要があります。
    GCSバケット名を指定します:
    #TODO: Edit the GCS bucket name
    gg.eventhandler.gcs.bucketMappingTemplate=<gcs-bucket-name>
    
    GCPサービス・アカウント・キーへのパスを指定します:
    #TODO: Edit the GCS credentialsFile
    gg.eventhandler.gcs.credentialsFile=/path/to/gcp/credentialsFile
    
    前提条件でダウンロードした依存性jarファイルへのパスを指定します:
    #TODO: Edit to include the GCS Java SDK and BQ Java SDK.
    gg.classpath=/path/to/gcs_dependencies/*:/path/to/bq_dependencies/*		

    図8-65 プロパティ・ファイル

    プロパティ・ファイル

    レプリケーション構成の詳細は、「Google BigQueryにおけるステージングおよびマージ」を参照してください。

  7. Replicatが正常に起動すると、実行状態になります。「アクション」/「詳細」/「統計」に移動して、レプリケーション統計を確認できます。

    図8-66 レプリケーション統計

    レプリケーション統計

    図8-67 GCPBQ統計

    GCPBQ統計
  8. GCP Big Queryコンソールに移動して表を確認できます。表の作成およびロードには、少し時間がかかる場合があります。

    図8-68 GCPBQコンソール

    GCPBQコンソール

ノート:

  • BigQueryのReplicatで初期ロードを実行できます。詳細は、BigQueryハンドラを参照してください。