レプリケーションの概要

Cloud Data Fusion レプリケーションでは、SQL Server や MySQL などの運用データストアから継続的かつリアルタイムにデータを BigQuery に複製できます。

レプリケーションを使用するには、次のいずれかの方法を選択します。

  • Cloud Data Fusion の新しいインスタンスを作成して、レプリケーション アプリを追加します。
  • 既存のインスタンスにレプリケーション アプリを追加する。

次のような利点があります。

  • 複製を開始する前にスキーマの非互換性、接続性の問題、不足機能を特定し、是正措置を提供します。

  • BigQuery 内の分析のために、最新のオペレーション データをリアルタイムに使用します。Microsoft SQL Server(SQL Server CDC を使用)と MySQL(MySQL Binary Log を使用)から BigQuery に直接ログベースの複製を行います。

  • 変更データ キャプチャ(CDC)が、ストリーム内で変更されたデータの表現を提供するので、直近で変更されたレコードだけに焦点を当ててコンピューティング処理を行います。これにより、機密性の高い本番環境システムのアウトバウンド データ料金が最小限に抑えられます。

  • 大容量トランザクション データベース対応できるエンタープライズ クラスのスケーラビリティにより、ダウンタイムが発生しないスナップショット レプリケーションによって BigQuery への最初のデータ読み込みが行われるため、データ ウェアハウスでは継続的に変更を受け取ることができます。最初のスナップショットが完了すると、スループットの高い、変更の継続的なレプリケーションがリアルタイムで開始されます。

  • ダッシュボードには、レプリケーションのパフォーマンスに関するリアルタイムな分析情報が表示されます。これは、ボトルネックの特定とデータ配信の SLA のモニタリングに役立ちます。

  • データ所在地、顧客管理の暗号鍵(CMEK)、VPC Service Controls のサポートが含まれています。Google Cloud に Cloud Data Fusion を統合することで、最高水準のエンタープライズ セキュリティとプライバシーを実現しながら、データ ウェアハウスの最新データを分析に使用できるようにしています。

複製が実行されると、Dataproc クラスタに対して課金され、BigQuery の処理料金が発生します。これらの費用を最適化するには、BigQuery 定額料金を適用することを強くおすすめします。

詳細については、Cloud Data Fusion の料金ページをご覧ください。

レプリケーション エンティティ

エンティティ 説明
レプリケーション レプリケーションは Cloud Data Fusion の機能で、運用データストアから分析データ ウェアハウスに低レイテンシでデータを継続的に複製できます。ソースとターゲットを構成してオプションの変換を行い、レプリケーション ジョブを作成します。
ソース データベース、テーブル、列の変更イベントを読み取り、レプリケーション ジョブでのさらなる処理に使用できるようにします。レプリケーション ジョブには 1 つのソースが含まれています。このソースは、変更を実現する変更キャプチャ ソリューションに依存しています。1 つのデータベースに複数のソースを指定して、それぞれに異なる変更キャプチャ ソリューションを指定できます。ソースは、CDAP のプラグイン アーキテクチャを使用して構築されたプラグイン可能なモジュールです。ソースがニーズを満たすことができない場合は、ソース インターフェースを実装して独自のソースを構築し、それを CDAP または Cloud Data Fusion にアップロードできます。
ターゲット ソースから受信した変更をターゲット データベースに書き込みます。レプリケーション ジョブには 1 つのターゲットが含まれます。ターゲットは、CDAP のプラグイン アーキテクチャを使用して構築されたプラグイン可能なモジュールです。ターゲットがニーズを満たすことができない場合は、ターゲット インターフェースを実装して独自のターゲットを構築し、それを CDAP または Cloud Data Fusion にアップロードできます。
ソース プロパティ 接続の詳細、ソース データベースとテーブル名、認証情報、その他のプロパティを含め、ソースを構成します。
ターゲット プロパティ 接続の詳細、ターゲット データベースとテーブル名、認証情報、その他のプロパティを含め、ターゲットを構成します。
レプリケーション ジョブのプロパティ 障害しきい値、ステージング領域、通知、検証の設定などのレプリケーション ジョブを構成します。
ドラフト 部分的に完了して保存されたレプリケーション ジョブ。レプリケーション パイプラインの定義が完了したら、開始できます。
イベント ターゲットに複製されるソースのイベントを変更します。イベントには挿入、更新、削除、DDL(データ定義言語)の変更が含まれます。
挿入 ソースへの新しいレコードの追加。
更新 ソースの既存のレコードの更新。
削除 ソース内の既存のレコードの削除。
DDL 変更 データ型や名前の変更など、スキーマの変更を含むイベント。
ログ レプリケーション ジョブの運用ログ。
レプリケーション ジョブの詳細 現在の状態、運用指標、時系列ビュー、検証結果、構成などのレプリケーション ジョブ情報を含む詳細ページ。
ダッシュボード スループット、レイテンシ、エラー率、検証結果など、変更データ キャプチャ アクティビティの状態をすべて一覧表示するページ。

アクション

アクション 説明
デプロイ ウェブ インターフェースのフローに沿ってソース、ターゲット、構成を指定して、新しいレプリケーション ジョブを作成します。
保存 後で作成を再開できるよう、部分的に作成されたレプリケーション ジョブを保存します。
削除 既存のレプリケーション ジョブを削除します。削除できるのは、停止したパイプラインのみです。
開始 レプリケーション ジョブの開始。処理する変更がある場合、レプリケーション ジョブは「アクティブ」状態になります。それ以外の場合は、「待機中」状態になります。
停止 レプリケーション ジョブを停止します。レプリケーション ジョブは、ソースからの変更の処理を停止します。
ログを表示 デバッグやその他の分析を行うためのレプリケーション ジョブのログを表示します。
検索 名前、説明、その他のレプリケーション ジョブのメタデータによってレプリケーション ジョブを検索します。
評価 複製を開始する前に、複製の影響を評価します。レプリケーション ジョブを評価することで、スキーマの不適合と欠損している機能を報告する評価レポートが生成されます。

モニタリング

レプリケータの状態 説明
デプロイ済み レプリケーション ジョブはデプロイされていますが、開始されません。この状態では、レプリケーション ジョブはイベントを複製しません。
開始中 レプリケーション ジョブは初期化中で、変更を複製する準備が完了していません。
実行中 レプリケーション ジョブが開始され、変更が複製されています。
停止中 レプリケーション ジョブが停止しています。
停止 レプリケーション ジョブが停止します。
失敗 致命的なエラーのため、レプリケーション ジョブが失敗しました。

テーブルの状態

コンセプト 説明
スナップショット作成 レプリケーション ジョブは、変更を複製する前にテーブルの現在の状態のスナップショットを取得します。
複製中 レプリケーション ジョブは、ソーステーブルからコピー先テーブルに変更を複製します。
失敗 エラーのため、レプリケーション ジョブでソーステーブルからの変更を複製できません。

指標

コンセプト 説明
挿入 選択した期間内にターゲットに適用される挿入の数。
更新 指定した期間にターゲットに適用される更新の数。
削除 選択した期間にターゲットに適用される削除の数。
DDLs 選択した期間にターゲットに適用される DDL 変更の数。
スループット 選択した期間にターゲットに複製されたイベントの数とバイト数。
レイテンシ 選択した期間にターゲットにデータがレプリケートされる場合のレイテンシ。

コンポーネント

コンポーネント 説明
サービス レプリケーション ジョブのエンドツーエンドのオーケストレーションを監督し、レプリケーション ジョブを設計、デプロイ、管理、モニタリングする機能を提供します。これは Cloud Data Fusion テナント プロジェクト内で実行されます(テナント プロジェクトはユーザーには表示されません)。ステータスは、Cloud Data Fusion ウェブ インターフェースの **[システム管理]** ページに表示されます。
状態管理 このサービスは、顧客プロジェクトの Cloud Storage バケット内の各レプリケーション ジョブの状態を管理します。レプリケーション ジョブの作成時にバケットを構成できます。各レプリケーション ジョブの現在のオフセットとレプリケーション状態を保存します。
実行 Dataproc クラスタは、プロジェクトで実行されるレプリケーション ジョブの実行環境を提供します。レプリケーション ジョブは、CDAP ワーカーを使用して実行されます。実行環境のサイズと特性は、Compute Engine のプロファイルで構成されます。
ソース データベース ターゲット データベースに複製される本番環境の運用データベース。このデータベースはオンプレミスまたは Google Cloud 上に配置できます。Cloud Data Fusion レプリケーションは、MySQL、Microsoft SQL Server、Oracle のソース データベースをサポートしています。
変更トラッキング ソリューション Cloud Data Fusion は、ソース データベースで実行されるエージェントで動作するのではなく、ソース データベースの変更を読み取る変更トラッキング ソリューションを利用します。このソリューションは、ソース データベースのコンポーネント、または個別にライセンス付与されたサードパーティ ソリューションとして使用できます。後者の場合、変更トラッキング ソリューションは、オンプレミス、ソース データベース、Google Cloud のいずれかで動作します。各ソースは変更トラッキング ソリューションに関連付ける必要があります。
  1. SQL Server
    • サポートされるソリューション: SQL Server CDC(変更トラッキング テーブル)
    • 追加のソフトウェア: なし
    • ライセンス / 費用: なし
    • コメント: SQL Server 2016 以降で使用可能
  2. MySQL
    • サポートされるソリューション: MySQL バイナリログ
    • 追加のソフトウェア: なし
    • ライセンス / 費用: なし
    • コメント: なし
  3. Oracle
ターゲット データベース レプリケーションと分析の宛先。Cloud Data Fusion は、BigQuery ターゲット データベースをサポートしています。
認証 認証メカニズムは、ソース データベースや変更トラッキング ソフトウェアによって異なります。SQL Server や MySQL などのソース データベースの組み込み機能を使用する場合、データベースのログイン情報が認証に使用されます。変更トラッキング ソフトウェアを使用する場合、ソフトウェアの認証メカニズムが使用されます。

接続

次の表に、レプリケーションに必要なネットワーク接続と、使用するセキュリティ メカニズムを示します。

送信元 送信先 省略可 プロトコル ネットワーク Auth セキュリティ 目的
サービス(テナント プロジェクト) ソース DB レプリケーションのソースによって異なります。直接データベース接続用の JDBC ピアリング + ファイアウォール ルール + VPN/Interconnect + Router DB ログイン 実行時ではなく設計時に必要 機能: テーブルの一覧表示、評価(省略可能な手順。この手順なしでも複製を継続可能)
サービス(テナント プロジェクト) Cloud Storage × Cloud API VPC SC IAM 状態管理: オフセット、レプリケーションの状態
Dataproc(自分のプロジェクト) ソース DB × ソースによって異なります。直接 DB 接続のための JDBC ピアリング + ファイアウォール ルール + VPN/Interconnect + Router DB ログイン 実行時に、ソース DB からターゲットに複製する変更を読み取る際に必要
Dataproc(自分のプロジェクト) Cloud Storage × Cloud API VPC SC IAM 状態管理: オフセット、レプリケーションの状態
Dataproc(自分のプロジェクト) BigQuery × Cloud API VPC SC IAM ソース DB からターゲットに変更を適用するために実行時に必要

次のステップ