次の方法で共有


コピー ジョブ (プレビュー) における変更データ キャプチャ (CDC)

この記事では、コピー ジョブの変更データ キャプチャ (CDC) 機能とその使用方法について説明します。

コピー ジョブにおける変更データキャプチャ (CDC) とは

コピー ジョブの変更データ キャプチャ (CDC) は、Fabric Data Factory の強力な機能であり、ソースからコピー先への挿入、更新、削除されたレコードを含む、変更されたデータの効率的で自動化されたレプリケーションを可能にします。 これにより、移行先データは手動で作業することなく最新の状態に保たれるので、ソース システムの負荷を軽減しながら、データ統合の効率が向上します。

コピー ジョブでの CDC の主な利点

  • 手動操作なし: 増分変更 (挿入、更新、削除) をソースから直接自動的にキャプチャします。
  • 自動レプリケーション: 移行先データをソースの変更と継続的に同期します。
  • 最適化されたパフォーマンス: 変更されたデータのみを処理し、処理時間を短縮し、ソースの負荷を最小限に抑えます。
  • よりスマートな増分コピー: CDC 対応のソース テーブルを自動的に検出し、各テーブルに対して CDC ベースまたは透かしベースの増分コピーを選択できます。

CDC ベースとウォーターマークベースの増分コピーについての動作

  • CDC ベースの増分コピー: ソース データベースで CDC が有効になっている場合、コピー ジョブは挿入、更新、削除を自動的にキャプチャしてコピー先にレプリケートし、正確な変更を適用します。
  • 透かしベースの増分コピー: ソース データベースで CDC が有効になっていない場合、コピー ジョブは前回の実行と増分列 (タイムスタンプや ID など) を比較して変更を検出し、構成に基づいて変更されたデータをコピー先に追加またはマージします。

サポートされているコネクタ

現在、コピー ジョブにおけるCDCでは、次のソースデータストアとデスティネーションデータストアがサポートされています。 さらに追加予定です。ご期待ください。

サポートされているソース ストア:

  • Azure SQL DB
  • オンプレミスの SQL Server
  • Azure SQL Managed Instance
  • Fabric Lakehouse テーブル
  • ADLS Gen2 の SAP Datasphere Outbound
  • Snowflake
  • Google ビッグクエリ(Google BigQuery)

サポートされている宛先ストア:

  • Azure SQL DB
  • オンプレミスの SQL Server
  • Azure SQL Managed Instance
  • ファブリック内のSQLデータベース(プレビュー)
  • Snowflake
  • Fabric Lakehouse テーブル

作業を開始する方法:

CDC 経由で Azure SQL DB から別の Azure SQL DB にデータを取り込むための新しいコピー ジョブを作成するには、次の手順を実行します。

  1. サポートされているソース ストアのデータベースとテーブルで、変更データ キャプチャ (CDC) が有効になっていることを確認します。 この場合は、Azure SQL DB です。

    cdc db を有効にする方法を示すスクリーンショット。

    cdc テーブルを有効にする方法を示すスクリーンショット。

    Note

    • 上記のすべてのテーブルに対して CDC を有効にすることをお勧めします。
    • supports_net_changesが有効になっていることを確認します。
    • ソース テーブル内のすべての列は、既定でキャプチャされた列として識別する必要があります。

    詳細については、 変更データ キャプチャの有効化と無効化に関するページを参照してください - SQL Server |Microsoft Learn

  2. [ + 新しい項目] を選択し、[ コピー ジョブ ] アイコンを選択し、コピー ジョブに名前を付け、[ 作成] をクリックします。

    Data Factory ホーム ページに移動し、新しいコピー ジョブを作成する場所を示すスクリーンショット。

  3. データのコピー元のデータ ストアを選択します。 この例では、 Azure SQL DB を選択します。

    コピー ジョブのデータ ソースを選択する場所を示すスクリーンショット。

  4. Azure SQL DB に接続するための サーバー パス資格情報 を入力します。 オンプレミスまたは VNET ゲートウェイを使用して、VNET 環境内でデータを安全にコピーできます。

    資格情報を入力する場所を示すスクリーンショット。

  5. CDC が有効になっているソース テーブルを明確に表示する必要があります。 コピーする CDC が有効になっているテーブル を選択します。

    CDC が有効になっているテーブル: cdc テーブル アイコンを示すスクリーンショット。

    CDC が有効になっていないテーブル: なし cdc テーブル アイコンを示すスクリーンショット。

    コピー ジョブの cdc テーブルを選択する場所を示すスクリーンショット。

    Note

    • 現在、Fabric Lakehouse テーブルは、CDF が有効になっているかどうかについて検出できません。
  6. 宛先ストアを選択します。 この例では、別の Azure SQL DB を選択します。

    コピー ジョブの宛先ストアを選択する場所を示すスクリーンショット。

  7. 既定の Update メソッドMerge に設定する必要があり、必要なキー列は既定でソース ストアで定義されている主キーと一致します。

    CDC の更新方法を示すスクリーンショット。

  8. [ 増分コピー ] を選択すると、変更を追跡するために各テーブルに増分列を入力する必要がないことがわかります。

    Note

    コピー ジョブは、最初はフル ロードを実行し、その後 CDC を介して後続の実行で増分コピーを実行します。

    CDC を選択する場所を示すスクリーンショット。

  9. ジョブの概要を確認し、実行オプションをスケジュールに従って設定し、[ 保存 + 実行] をクリックします。

    新しく作成されたコピー ジョブを確認して保存する場所を示すスクリーンショット。

    Note

    CDC ログの保持期間が、スケジュールされた実行の間隔よりも長くなることを確認してください。そうしないと、保持期間内に処理されないと、CDC によってキャプチャされた変更されたデータが失われる可能性があります。

  10. コピー ジョブはすぐに開始されます。 最初の実行では、最初の完全スナップショットがコピーされます。

    初期完全スナップショットを監視できる、「コピー ジョブ」パネルを示すスクリーンショット。

  11. 行を挿入、更新、または削除して、ソース テーブルを更新します。

    行を更新する方法を示すスクリーンショット。

  12. コピー ジョブをもう一度実行して、挿入、更新、削除された行を含むすべての変更をキャプチャし、コピー先にレプリケートします。

    すべての変更のキャプチャとレプリケートを監視できる [ジョブのコピー] パネルを示すスクリーンショット。

SAP Datasphere アウトバウンド

SAP Datasphere Outbound を使用して SAP から変更データを取得するには、次の 2 つの手順を実行します。

  1. SAP Datasphere を使用してデータを抽出する:

    SAP Datasphere を使用して、SAP ソース システムから初期スナップショットとそれに続く変更されたレコードの両方を抽出します。 抽出されたデータは、ステージング領域として機能する Azure Data Lake Storage Gen2 コンテナーに格納されます。

  2. コピー ジョブを使用してデータを移動する:

    コピー ジョブを使用して ADLS Gen2 のステージング コンテナーに接続し、サポートされている任意の宛先にデータを移動します。

このソリューションは、SAP S/4HANA、SAP ECC、SAP BW/4HANA、SAP BW、SAP Datasphere 自体など、SAP Datasphere によって提供されるすべてのソースをサポートします。

コピー ジョブで SAP Datasphere Outbound を使用する方法のクイック ガイドを次に示します。

手順 1: SAP Datasphere での構成

  1. 接続を設定する

    • SAP Datasphere でソース接続とシンク接続の両方を作成します。
    • ソース接続には、SAP Datasphere でサポートされている任意の SAP システムを指定できます。
    • シンク接続の場合は、Azure Data Lake Storage Gen2 を選択し、ストレージ アカウント名とコンテナー名を指定します。
    • 詳細については、以下を参照してください。
  2. レプリケーション フローを作成する

    • 先ほど作成したソース接続とシンク接続を使用します。
    • SAP からコピーするソース オブジェクトを選択します。
    • ADLS Gen2 コンテナーを選択し、データをコピーするルート フォルダーを指定します。
    • [ロードタイプ]を[初期値]と[デルタ]に調整します。
    • 「グループ差分基準」が「なし」に設定されていることを確認してください。
    • 詳細については、以下を参照してください。

手順 2: コピー ジョブの構成

  1. ソースとして SAP Datasphere 送信接続を選択します。
  2. ADLS Gen2 コンテナーを選択し、SAP Datasphere 送信データが格納されるルート フォルダーを指定します。
  3. 残りの構成は、他の CDC 対応ソースの場合と同じです。

既知の制限

  • コピー ジョブで CDC 対応と非 CDC 対応の両方のソース テーブルが選択されている場合、すべてのテーブルが透かしベースの増分コピーとして扱われます。
  • CDC 対応のソース テーブルが選択されている場合、列マッピングを構成できません。
  • カスタム キャプチャ インスタンスはサポートされていません。既定のキャプチャ インスタンスのみがサポートされます。
  • SCD2 は、CDC 対応ソース データストアではまだサポートされていません。
  • コピー ジョブでは、DDL はまだサポートされていません。