7.3 Google Cloud Storageレプリケーション

Google Cloud Storage (GCS)は、Google Cloud Platformにオブジェクトを格納するためのサービスです。

GoldenGate for Big Dataを使用して、様々なファイル形式をGCSに収集できます。Oracle GoldenGate for Big Dataでは、次のファイル形式がサポートされています:

  • delimited-text.json
  • json
  • json_row
  • json_op
  • avro_row
  • avro_op
  • avro_row_ocf
  • avro_op_ocf
  • parquet
Oracle GoldenGate for Big Dataは、GCSレプリケーションで2ステップのプロセスを使用します。まず、ファイル・ライター・ハンドラを使用してサーバー上のディレクトリにローカルにファイルを作成し、これらのファイルをGCSにロードします。

ファイルがクローズ状態であることを確認して、GCSにロードします。ファイル・ライターの動作を制御する方法の詳細は、 ファイル・ライターの動作ブログを参照してください。

このクイックスタートは、デフォルト設定を使用してロードされます。

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

Oracle GoldenGate for Big Dataは、レプリケーション・プロセスでクライアント・ライブラリを使用します。レプリケーション・プロセスを設定する前に、Oracle GoldenGate for Big Dataで使用可能な依存性ダウンローダ・ユーティリティを使用してこれらのライブラリをダウンロードする必要があります。依存性ダウンローダは、Mavenおよび他のリポジトリから依存性jarファイルをダウンロードするシェル・スクリプトのセットです。

必要な依存性ファイルをインストールするには:

  1. 依存性ダウンローダのインストール場所に移動します: GG_HOME/opt/DependencyDownloader/
  2. 必要なバージョンを指定してgcs.shbigquery.shを実行します。

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

    必要なバージョンを指定してgcs.shとbigquery.shを実行します
    ディレクトリはGG_HOME/opt/DependencyDownloader/dependenciesに作成されます。たとえば、/u01/app/ogg/opt/DependencyDownloader/dependencies/gcs_1.113.9です

7.3.2 Oracle GoldenGate for Big DataでのReplicatの作成

Oracle GoldenGate for Big DataでReplicatを作成するには:

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

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

    図7-12 「+」記号をクリックしてReplicatを追加

    「管理」タブで「+」記号をクリックしてReplicatを追加します
  2. Replicatのタイプを選択して、「次へ」をクリックします。

    ここには、クラシックと調整済の2つの異なるReplicatタイプがあります。クラシックReplicatは単一のスレッド・プロセスですが、調整済Replicatは、トランザクションをパラレルに適用するマルチスレッド・プロセスです。

    図7-13 Replicatのタイプを選択して、「次へ」をクリックします。

    Replicatのタイプを選択して、「次へ」をクリックします。
  3. 基本情報を入力し、「次へ」をクリックします:
    1. プロセス名: Replicatの名前
    2. 証跡名: 必要な証跡ファイルの名前Oracle GoldenGate for Big Dataに付属しているサンプル証跡ファイルtrを使用できます。
    3. 証跡サブディレクトリ: 証跡ファイルへのパスを設定します。サンプル証跡ファイルtrは、OGG_HOME/opt/AdapterExamples/trailにあります。
    4. ターゲット: Google Cloud Storage

      図7-14 プロセス名、証跡名およびターゲット名

      すべての情報を入力し、「次へ」をクリックします。
  4. 「パラメータ・ファイル」の詳細を入力し、「次へ」をクリックします。「パラメータ・ファイル」では、ソースからターゲットへのマッピングを指定するか、ワイルドカード選択でそのままにしておくことができます。Replicatタイプとして「調整済Replicat」を選択した場合は、追加のパラメータTARGETDB LIBFILE libggjava.so SET property=<ggbd-deployment_home>/etc/conf/ogg/your_replicat_name.propertiesを指定する必要があります

    図7-15 「パラメータ・ファイル」の詳細を指定し、「次へ」をクリックします。

    「パラメータ・ファイル」の詳細を指定し、「次へ」をクリックします。
  5. 次の画面で、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-deps/*:/path/to/bq-deps/*
    

    これらのプロパティがない場合、Replicatは失敗します。変更できるオプションのプロパティもあります:

    gg.handler.filewriter.formatは、出力ファイルの形式を制御します。デフォルトでは、avro_row_ocfに設定されます。jsondelimitedtext、または他のファイル・ライター・ハンドラの構成のいずれかに変更できます。

    gg.handler.filewriter.fileRollIntervalおよびgg.handler.filewriter.inactivityRollIntervalは、ファイルの動作を制御します。GCSバケットにロードするには、ファイルをクローズ状態にする必要があります。

    fileRollIntervalは、ファイルが作成されるとタイマーを起動し、これに達すると、ファイルがクローズ状態に移行してGCSバケットに移動します。Replicatプロパティでは、0(オフ)に設定されています。このクイックスタートでは、これを5s (5秒)に設定できます。

    inactivityRollIntervalは、非アクティブ期間を追跡します。ここで、非アクティブとは、ソース・システムからの操作がないことを意味します。このクイックスタートでは、これを5s (5秒)に設定できます。

    図7-16 Replicatの追加

    Replicatの追加
  6. Replicatが正常に起動すると、実行状態になります。action/details/statisticsに移動して、レプリケーション統計を確認します:

    図7-17 レプリケーション統計

    レプリケーション統計
  7. GCP Cloud Storageバケットに移動し、表を確認します。

    図7-18 バケットの詳細

    バケットの詳細