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 のいずれかで動作します。各ソースは変更トラッキング ソリューションに関連付ける必要があります。
|
ターゲット データベース | レプリケーションと分析の宛先。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 からターゲットに変更を適用するために実行時に必要 |
次のステップ
- Replication API リファレンスを確認する。
- レプリケーションのデータ型マッピングを確認する。