CDCデータ転送

Prev Next

概要

CDC(Change Data Capture) は、データベース内のデータ変更(INSERT、UPDATE、DELETE)を継続的に取得し、他のデータベースやデータウェアハウスに転送・連携することで、データの一貫性や鮮度を保つ技術です。

主な特長

TROCCOのCDCデータ転送機能では、データソース側(例:MySQL)で発生した変更を最短5分間隔で収集し、連携先(例:Amazon S3 Iceberg)への同期処理を実行します。
CDCデータ転送設定を1つ作るだけで、データソース側のすべてのテーブルのレコードの削除・追加・更新を、連携先サービスに自動追従できます。データマートなどの後処理用の設定を作る必要もありません。
また、スキーマ自動追従機能を利用することで、データソース側のスキーマ変更を検知し、転送先に自動反映も可能です。
これにより、簡単かつデータ鮮度の高い形でデータ分析環境を構築できます。

プラン上の制約

本機能の利用は、Professionalプランの契約が前提となります。
詳しくは、営業担当者またはカスタマーサクセスまでお問い合わせください。

アーキテクチャ

以下は、転送元 - MySQL・転送先 - Amazon S3 Icebergにおけるアーキテクチャです。

初回転送(全件転送)時

image

差分転送時

image

一部の転送先において、一時テーブルに転送してから本番テーブルへのマージを行います。
以下は、一時テーブルを経由するアーキテクチャです(例:転送元 - MySQL・転送先 - Google BigQuery)。

初回転送(全件転送)時

差分転送時

利用上の注意・制約

転送対象のテーブル要件

  • Primary Keyが存在することが必須です。Primary KeyがないテーブルはCDCデータ転送の対象外となります。

対応コネクター

転送元コネクター

転送先コネクター

仕様詳細

ジョブの実行

全件転送(全テーブル)

転送対象の全テーブルを全件転送します。
テーブル転送ステータス全件転送(全テーブル) から実行できます。

CDCデータ転送設定を作成したら、まずは全件転送(全テーブル)を行ってください。
なお、転送先にテーブルが存在する状態で実施した場合、転送先にある既存テーブルは削除されます。ご注意ください。

全件転送(選択テーブル)

転送対象のテーブルを選んで全件転送します。
テーブル転送ステータスアクション列から実行できます。

なお、転送先にテーブルが存在する状態で実施した場合、転送先にある既存テーブルは削除されます。ご注意ください。

差分転送

手動で差分転送を実施します。
画面右上の実行ボタンから実行できます。

スケジュール実行

スケジュール実行をONにすると、自動で差分転送を実施します。
先に実行されていたジョブが終了する前に次のジョブの実行タイミングとなった場合は、先に実行されていたジョブが完了してから次のジョブが開始されます。
実行間隔は以下より選択できます。

  • 5分
  • 10分
  • 15分
  • 20分
  • 30分
  • 60分

スキーマ管理

スキーマ設定タブでは、転送対象のテーブル・カラムを確認・修正できます。
なお、スキーマ設定は、データソース側の変更に自動で同期されます。

  • テーブル・カラムが追加された場合:未選択状態で項目が追加されます。
  • カラムのデータ型が変更された場合:追従されます。
  • テーブル・カラムが削除された場合:項目が削除されます。

データソース側で追加されたテーブル・カラムを転送対象としたい場合は、スキーマ自動追従機能を利用するか、手動で選択してください。

スキーマ自動追従

スキーマ自動追従とは、CDC転送設定側のスキーマが変更された場合に、転送先側テーブルのスキーマも自動的に修正される機能です。
詳しくは、CDCスキーマ自動追従を参照ください。

スキーマ変更通知

転送元のスキーマ変更を検知し、Slackやメールで通知する機能です。
CDC転送設定から設定できます。

変更履歴

CDC転送設定の変更履歴をJSONで確認できます。
転送データの重複・欠損リスクがあるため、復元機能に関しては対応していません。