Azure ポータルで変更追跡を使用して、Azure SQL DatabaseからBlob Storageにデータを増分コピーする

適用対象: Azure Data Factory Azure Synapse Analytics

ヒント

Data Factory in Microsoft Fabric は、よりシンプルなアーキテクチャ、組み込みの AI、および新機能を備えた次世代のAzure Data Factoryです。 データ統合を初めて使用する場合は、Fabric Data Factory から始めます。 既存の ADF ワークロードをFabricにアップグレードして、データ サイエンス、リアルタイム分析、レポートの新機能にアクセスできます。

データ統合ソリューションでは、初回データ読み込みの後、増分データを読み込む手法が広く利用されています。 ソースデータ ストアの期間内の変更データを簡単にスライスすることができます(例:LastModifyTime、CreationTime)。 ただし、前回データを処理した時点からの差分データを明示的に特定する方法がない場合もあります。 Azure SQL DatabaseやSQL Serverなどのデータ ストアでサポートされている変更追跡テクノロジを使用して、差分データを識別できます。

このチュートリアルでは、変更追跡でAzure Data Factoryを使用して、差分データをAzure SQL DatabaseからAzure Blob Storageに増分読み込みする方法について説明します。 変更の追跡の詳細については、「change tracking in SQL Server」を参照してください。

このチュートリアルでは、以下の手順を実行します。

  • ソース データ ストアを準備します。
  • データ ファクトリを作成します。
  • リンクされたサービスを作成します。
  • ソース、シンク、変更追跡の各データセットを作成します。
  • フル コピー パイプラインを作成、実行、監視します。
  • ソース テーブルのデータを追加または更新します。
  • 増分コピー パイプラインを作成、実行、監視します。

高レベルのソリューション

このチュートリアルでは、次の操作を実行する 2 つのパイプラインを作成します。

注

このチュートリアルでは、ソース データ ストアとしてAzure SQL Databaseを使用します。 SQL Serverを使用することもできます。

  1. 履歴データの初期読み込み: ソース データ ストア (Azure SQL Database) からコピー先データ ストア (Azure Blob Storage) にデータ全体をコピーするコピー アクティビティを含むパイプラインを作成します。

    1. Azure SQL Databaseのソース データベースで変更追跡テクノロジを有効にします。
    2. データベースからの初期値 SYS_CHANGE_VERSION をベースラインとして取得し、変更済みデータをキャプチャします。
    3. ソース データベースから完全なデータをAzure Blob Storageに読み込みます。

    データの完全な読み込みを示す図。

  2. スケジュールに基づく差分データの増分読み込み: 次のアクティビティを含むパイプラインを作成し、定期的に実行します。

    1. 2 つのルックアップ アクティビティを作成して、Azure SQL Databaseから古い値と新しいSYS_CHANGE_VERSION値を取得します。

    2. コピー アクティビティを作成して、挿入、更新、または削除されたデータ (デルタ データ) を 2 つの SYS_CHANGE_VERSION 値の間でAzure SQL DatabaseからAzure Blob Storageにコピーします。

      差分データを読み込みます。これは、SYS_CHANGE_VERSION から得られる変更済みの行 (2 つの sys.change_tracking_tables 値の間にある行) の主キーと、ソーステーブルのデータとを結合した後、その差分データをターゲットに移動することによって行います。

    3. 次回のパイプライン実行に備えて の値を更新するSYS_CHANGE_VERSION作成します。

    データの増分読み込みを示す図。

前提条件

  • Azure サブスクリプション。 お持ちでない場合は、開始する前に無料アカウントを作成してください。
  • Azure SQL Database。 Azure SQL Databaseのデータベースは、source データ ストアとして使用します。 データベースがない場合は、 Azure SQL Database でデータベースを作成する手順を参照してください。
  • Azure ストレージ アカウント。 Blob Storageは、sink データ ストアとして使用します。 Azure ストレージ アカウントをお持ちでない場合は、「ストレージ アカウントの作成」を参照してください。 adftutorial という名前のコンテナーを作成します。

注

Azure Az PowerShell モジュールを使用してAzureを操作することをお勧めします。 作業を開始するには、「Install Azure PowerShellを参照してください。 Az PowerShell モジュールに移行する方法については、「AzRM から Azを参照してください。

Azure SQL Databaseでデータ ソース テーブルを作成する

  1. SQL Server Management Studioを開き、SQL Database に接続します。

  2. サーバー エクスプローラーで目的のデータベースを右クリックし、[新しいクエリ] を選択します。

  3. データベースに対して次の SQL コマンドを実行し、data_source_table という名前のテーブルをソース データ ストアとして作成します。

    create table data_source_table
    (
        PersonID int NOT NULL,
        Name varchar(255),
        Age int
        PRIMARY KEY (PersonID)
    );
    INSERT INTO data_source_table
        (PersonID, Name, Age)
    VALUES
        (1, 'aaaa', 21),
        (2, 'bbbb', 24),
        (3, 'cccc', 20),
        (4, 'dddd', 26),
        (5, 'eeee', 22);
    
  4. 次の SQL クエリを実行して、データベースとソース テーブル (data_source_table) の変更の追跡を有効にします。

    注

    • <your database name> を、data_source_table を持つAzure SQL Database内のデータベースの名前に置き換えます。
    • 現行の例では、変更済みのデータが 2 日間維持されます。 変更済みデータを読み込む間隔を 3 日おき、またはそれ以上にした場合、変更済みデータの一部が読み込まれません。 CHANGE_RETENTION の値を大きな数値に変更するか、変更されたデータを読み込む期間が 2 日以内であることを確認する必要があります。 詳細については、「データベースの変更の追跡を有効にする」を参照してください。
    ALTER DATABASE <your database name>
    SET CHANGE_TRACKING = ON  
    (CHANGE_RETENTION = 2 DAYS, AUTO_CLEANUP = ON)  
    ALTER TABLE data_source_table
    ENABLE CHANGE_TRACKING  
    WITH (TRACK_COLUMNS_UPDATED = ON)
    
  5. 次のクエリを実行して、新しいテーブルと、規定値をもつ ChangeTracking_version というストアを作成します。

    create table table_store_ChangeTracking_version
    (
        TableName varchar(255),
        SYS_CHANGE_VERSION BIGINT,
    );
    DECLARE @ChangeTracking_version BIGINT
    SET @ChangeTracking_version = CHANGE_TRACKING_CURRENT_VERSION();  
    INSERT INTO table_store_ChangeTracking_version
    VALUES ('data_source_table', @ChangeTracking_version)
    

    注

    SQL Database の変更追跡を有効にした後、データが変更されていなければ、変更追跡バージョンの値は 0 になります。

  6. 次のクエリを実行して、データベースにストアド プロシージャを作成します。 このストアド プロシージャをパイプラインで呼び出すことによって、前のステップで作成したテーブルの変更追跡バージョンを更新します。

    CREATE PROCEDURE Update_ChangeTracking_Version @CurrentTrackingVersion BIGINT, @TableName varchar(50)
    AS
    BEGIN
    UPDATE table_store_ChangeTracking_version
    SET [SYS_CHANGE_VERSION] = @CurrentTrackingVersion
    WHERE [TableName] = @TableName
    END    
    

Data Factory の作成

  1. Microsoft Edgeまたは Google Chrome Web ブラウザーを開きます。 現時点では、Data Factory ユーザー インターフェイス (UI) をサポートしているのは、これらのブラウザーのみです。

  2. Azure ポータルの左側のメニューで、リソースの作成を選択します。

  3. 分析>データファクトリー を選択します。

    リソースの作成におけるデータ ファクトリの選択を示すスクリーンショット。

  4. [新しいデータ ファクトリ] ページで、名前に「ADFTutorialDataFactory」と入力します。

    データ ファクトリの名前はグローバルに一意にする必要があります。 選択した名前が使用できないというエラーが発生した場合は、名前を変更し (たとえば、 yournameADFTutorialDataFactory)、データ ファクトリを再度作成してみてください。 詳細については、「Azure Data Factory名前付け規則を参照してください。

  5. データ ファクトリを作成するAzure サブスクリプションを選択します。

  6. [リソース グループ] で、次の手順のいずれかを行います。

    • [Use existing](既存のものを使用) を選択し、ドロップダウン リストから既存のリソース グループを選択します。
    • [新規作成] を選択し、リソース グループの名前を入力します。

    リソース グループの詳細については、「リソース グループを使用してAzure リソースを管理するを参照してください。

  7. [バージョン] で、 [V2] を選択します。

  8. [リージョン] で、データ ファクトリの領域を選択します。

    ドロップダウン リストには、サポートされている場所のみが表示されます。 データ ファクトリが使用するデータ ストア (Azure StorageやAzure SQL Databaseなど) とコンピューティング (Azure HDInsightなど) は、他のリージョンに存在できます。

  9. [次へ: Git 構成] を選択します。 「構成方法 4: ファクトリの作成時」の手順に従ってリポジトリを設定するか、[後で Git を構成する] チェックボックスを選択します。 データ ファクトリの作成における Git 構成のオプションを示すスクリーンショット。

  10. [確認と作成] を選択します。

  11. [作成] を選択します

    ダッシュボードの [Deploying Data Factory](データ ファクトリをデプロイしています) タイルに状態が表示されます。

    データ ファクトリのデプロイの状態を示すタイルのスクリーンショット。

  12. 作成が完了すると、[Data Factory] ページが表示されます。 Launch studio タイルを選択して、別のタブでAzure Data Factory UI を開きます。

リンクされたサービスを作成します

データ ストアおよびコンピューティング サービスをデータ ファクトリにリンクするには、リンクされたサービスをデータ ファクトリに作成します。 このセクションでは、Azure SQL Databaseで、Azure ストレージ アカウントとデータベースへのリンクされたサービスを作成します。

Azure Storageリンクされたサービスを作成する

ストレージ アカウントをデータ ファクトリにリンクするには:

  1. Data Factory UI の [管理] タブの [接続] で、[リンク サービス] を選択します。 次に、[+ 新規] または [リンク サービスの作成] ボタンを選択します。 リンク サービスを作成するための選択を示すスクリーンショット。
  2. New Linked Service ウィンドウで、Azure Blob Storage を選択し、Continue を選択します。
  3. 次の情報を入力します。
    1. [名前] に「AzureStorageLinkedService」と入力します。
    2. [統合ランタイム経由で接続] で、統合ランタイムを選択します。
    3. [認証の型] で、認証方法を選択します。
    4. Storage アカウント名で、Azure ストレージ アカウントを選択します。
  4. [作成] を選択します

Azure SQL Databaseリンクされたサービスを作成する

データベースをデータ ファクトリにリンクさせるために:

  1. Data Factory UI の [管理] タブの [接続] で、[リンク サービス] を選択します。 次に、[+ 新規] を選択します。

  2. New Linked Service ウィンドウで、Azure SQL Database を選択し、Continue を選択します。

  3. 次の情報を入力します。

    1. [名前] に「AzureSqlDatabaseLinkedService」と入力します。
    2. [サーバー名] で、お使いのサーバーを選択します。
    3. [データベース名] で、使用するデータベースを選択します。
    4. [認証の型] で、認証方法を選択します。 このチュートリアルでは、デモンストレーションに SQL 認証を使用します。
    5. [ユーザー名] に、ユーザーの名前を入力します。
    6. パスワードに、 ユーザーのパスワードを入力します。 または、Azure Key Vault - AKV のリンクされたサービス、Secret 名、および Secret バージョンの情報を指定します。
  4. [テスト接続] を選択して接続をテストします。

  5. [作成] を選択して、リンク サービスを作成します。

    Azure SQL Databaseリンク サービスの設定を示すスクリーンショット

データセットを作成する

このセクションでは、 SYS_CHANGE_VERSION の値の格納する場所とともに、データ ソース、データ ターゲットを表すデータセットを作成します。

ソース データを表すデータセットを作成する

  1. Data Factory UI の [作成者] タブで、プラス記号 (+) を選択します。 次に、[データセット] を選択するか、データセット アクションの省略記号を選択します。

    データセットの作成を開始するための選択を示すスクリーンショット。

  2. Azure SQL Database を選択し、Continue を選択します。

  3. [プロパティの設定] ウィンドウで、以下のステップを実行します。

    1. [名前]には、「SourceDataset」と入力します。
    2. [リンク サービス] で [AzureSqlDatabaseLinkedService] を選択します。
    3. [テーブル名] で dbo.data_source_table を選択します。
    4. [スキーマのインポート] で、[接続またはストアから] オプションを選択します。
    5. [OK] を選択します。

    ソース データセットのプロパティ設定を示すスクリーンショット。

シンク データ ストアにコピーされるデータを表すデータセットを作成する

次の手順では、ソース データ ストアからコピーされたデータを表すデータセットを作成します。 前提条件の一部として、Azure Blob Storageに adftutorial コンテナーを作成しました。 このコンテナーが存在しない場合は作成するか、既存のコンテナーの名前を設定してください。 このチュートリアルでは、@CONCAT('Incremental-', pipeline().RunId, '.txt') という式をから出力ファイル名が動的に生成されます。

  1. Data Factory UI の [作成者] タブで、+ を選択します。 次に、[データセット] を選択するか、データセット アクションの省略記号を選択します。

    データセットの作成を開始するための選択を示すスクリーンショット。

  2. Azure Blob Storage を選択し、Continue を選択します。

  3. データ型の形式を DelimitedText として選択し、[続行] を選択します。

  4. [プロパティの設定] ウィンドウで、以下のステップを実行します。

    1. 名前に、「SinkDataset」と入力します。
    2. [リンク サービス] で AzureBlobStorageLinkedService を選択します。
    3. [ファイル パス] に「adftutorial/incchgtracking」と入力します。
    4. [OK] を選択します。
  5. ツリー ビューにデータセットが表示されたら、[接続] タブに移動し、[ファイル名] テキスト ボックスを選択します。 [動的コンテンツの追加] オプションが表示されたら、それを選択します。

    シンク データセットの動的ファイル パスを設定するオプションを示すスクリーンショット。

  6. [パイプライン式ビルダー] ウィンドウが表示されます。 テキスト ボックスに @concat('Incremental-',pipeline().RunId,'.csv') を貼り付けます。

  7. [OK] を選択します。

変更追跡データを表すデータセットを作成する

次の手順で、変更追跡バージョンを格納するためのデータセットを作成します。 前提条件の 1 つとして table_store_ChangeTracking_version テーブルを作成しました。

  1. Data Factory UI の [作成者] タブで、+ を選択 し、 [データセット] を選択 します。
  2. Azure SQL Database を選択し、Continue を選択します。
  3. [プロパティの設定] ウィンドウで、以下のステップを実行します。
    1. [名前]に、「ChangeTrackingDataset」と入力します。
    2. [リンク サービス] で [AzureSqlDatabaseLinkedService] を選択します。
    3. [テーブル名]で dbo.table_store_ChangeTracking_version を選択します。
    4. [スキーマのインポート] で、[接続またはストアから] オプションを選択します。
    5. [OK] を選択します。

完全コピーのパイプラインを作成する

次の手順では、ソース データ ストア (Azure SQL Database) からコピー先データ ストア (Azure Blob Storage) にデータ全体をコピーするコピー アクティビティを含むパイプラインを作成します。

  1. Data Factory UI の [作成者] タブで、+ を選択 し、 Pipeline>Pipeline を選択 します。

    データ ファクトリのパイプラインの作成を開始するための選択を示すスクリーンショット。

  2. パイプラインを構成するための新しいタブが表示されます。 パイプラインはツリー ビューにも表示されます。 [プロパティ] ウィンドウで、パイプラインの名前を「FullCopyPipeline」に変更します。

  3. [アクティビティ] ツールボックスで、[移動と変換] を展開します。 次のいずれかのステップを使用します。

    • コピー アクティビティをパイプライン デザイナー画面にドラッグします。
    • [アクティビティ] の下の検索バーで、データのコピー アクティビティを検索し、名前を FullCopyActivity に設定します。
  4. [ソース] タブに切り替えます。[ソース データセット] で、[SourceDataset] を選択します。

  5. [シンク] タブに切り替えて、[Sink Dataset](シンク データセット) で [SinkDataset] を選択します。

  6. パイプライン定義を検証するために、ツール バーの [検証] を選択します。 検証エラーがないことを確認します。 パイプライン検証の出力を閉じます。

  7. エンティティ (リンクされたサービス、データセット、およびパイプライン) を発行するには、[すべて発行] を選択します。 [正常に発行されました] というメッセージが表示されるまで待機します。

    発行が成功したことを示すメッセージのスクリーンショット。

  8. 通知を表示するには、[通知の表示] ボタンを選択します。

フル コピー パイプラインを実行する

  1. Data Factory UI のパイプラインのツール バーで、[トリガーの追加] を選択し、[今すぐトリガー] を選択します。

    今すぐ完全コピーをトリガーするオプションを示すスクリーンショット。

  2. [Pipeline Run](パイプラインの実行) ウィンドウで [OK] を選択します。

    パラメーター チェックを含むパイプライン実行の確認を示すスクリーンショット。

フル コピー パイプラインを監視する

  1. Data Factory UI で、[監視] タブを選択します。パイプラインの実行とその状態がリストに表示されます。 リストを更新するには、[最新の情報に更新] を選択します。 パイプラインの実行上にカーソルを合わせると、再実行 または 消費 オプションが表示されます。

    パイプラインの実行と状態を示すスクリーンショット。

  2. パイプラインの実行に関連付けられたアクティビティの実行を表示するには、[パイプライン名] 列でパイプライン名を選択します。 パイプライン内のアクティビティは 1 つだけであるため、リストにはエントリが 1 つだけあります。 パイプライン実行のビューに戻るには、上部の [すべてのパイプラインの実行] リンクを選択します。

結果の確認

adftutorial コンテナーの incchgtracking フォルダーには、 という名前incremental-<GUID>.csvのファイルが含まれています。

完全コピーからの出力ファイルのスクリーンショット。

このファイルには、データベースからのデータが存在します。


PersonID,Name,Age
1,"aaaa",21
2,"bbbb",24
3,"cccc",20
4,"dddd",26
5,"eeee",22

5,eeee,PersonID,Name,Age
1,"aaaa",21
2,"bbbb",24
3,"cccc",20
4,"dddd",26
5,"eeee",22

ソース テーブルにデータを追加する

データベースに次のクエリを実行して行の追加と更新を行います。

INSERT INTO data_source_table
(PersonID, Name, Age)
VALUES
(6, 'new','50');


UPDATE data_source_table
SET [Age] = '10', [name]='update' where [PersonID] = 1

差分コピーのパイプラインを作成する

次の手順では、アクティビティを含んだパイプラインを作成し、それを定期的に実行します。 パイプラインの実行時:

  • lookup アクティビティ古い値と新しいSYS_CHANGE_VERSION値をAzure SQL Databaseから取得し、コピー アクティビティに渡します。
  • copy アクティビティは、2 つの SYS_CHANGE_VERSION 値の間に挿入、更新、または削除されたデータをAzure SQL DatabaseからAzure Blob Storageにコピーします。
  • ストアド プロシージャ アクティビティは、次回のパイプライン実行に備えて SYS_CHANGE_VERSION の値を更新します。
  1. Data Factory UI で、[作成者] タブに切り替えます。+ を選択し、[パイプライン]>[パイプライン] を選択します。

    データ ファクトリでパイプラインを作成する方法を示すスクリーンショット。

  2. パイプラインを構成するための新しいタブが表示されます。 パイプラインはツリー ビューにも表示されます。 [プロパティ] ウィンドウで、パイプラインの名前を「IncrementalCopyPipeline」に変更します。

  3. [アクティビティ] ツールボックスで [全般] を展開します。 パイプライン デザイナー画面に検索回数アクティビティをドラッグするか、[アクティビティーの検索] ボックスで検索します。 アクティビティの名前を「LookupLastChangeTrackingVersionActivity」に設定します。 このアクティビティは、直前のコピー操作で使用された変更追跡バージョンを取得します。この値は、テーブル table_store_ChangeTracking_version に格納されています。

  4. プロパティ ウィンドウで [設定] タブに切り替えます。 [ソース データセット] で、[ChangeTrackingDataset] を選択します。

  5. [アクティビティ] ツールボックスからパイプライン デザイナー サーフェスに検索アクティビティをドラッグします。 アクティビティの名前を「LookupCurrentChangeTrackingVersionActivity」に設定します。 このアクティビティは、現在の変更追跡バージョンを取得します。

  6. プロパティ ウィンドウで [設定] タブに切り替え、以下のステップを行います。

    1. [Source dataset](ソース データセット) で [SourceDataset] を選択します。

    2. [クエリの使用] で、[クエリ] を選択します。

    3. [クエリ] に、次の SQL クエリを入力します。

      SELECT CHANGE_TRACKING_CURRENT_VERSION() as CurrentChangeTrackingVersion
      

    プロパティ ウィンドウ の [設定] タブに追加されたクエリを示すスクリーンショット

  7. [アクティビティ] ツールボックスで、[移動と変換] を展開します。 コピー データ アクティビティをパイプライン デザイナー画面にドラッグします。 アクティビティの名前を「IncrementalCopyActivity」に設定します。 このアクティビティは、直前の変更追跡バージョンと現在の変更追跡バージョンとの間のデータを、ターゲット データ ストアにコピーします。

  8. プロパティ ウィンドウで [ソース] タブに切り替え、以下のステップを行います。

    1. [Source dataset](ソース データセット) で [SourceDataset] を選択します。

    2. [クエリの使用] で、[クエリ] を選択します。

    3. [クエリ] に、次の SQL クエリを入力します。

      SELECT data_source_table.PersonID,data_source_table.Name,data_source_table.Age, CT.SYS_CHANGE_VERSION, SYS_CHANGE_OPERATION from data_source_table RIGHT OUTER JOIN CHANGETABLE(CHANGES data_source_table, @{activity('LookupLastChangeTrackingVersionActivity').output.firstRow.SYS_CHANGE_VERSION}) AS CT ON data_source_table.PersonID = CT.PersonID where CT.SYS_CHANGE_VERSION <= @{activity('LookupCurrentChangeTrackingVersionActivity').output.firstRow.CurrentChangeTrackingVersion}
      

    プロパティ ウィンドウの [ソース] タブに追加されたクエリを示すスクリーンショット。

  9. [シンク] タブに切り替えて、[Sink Dataset](シンク データセット) で [SinkDataset] を選択します。

  10. 1 つずつ、両方の検索アクティビティをコピー アクティビティに接続します。 検索アクティビティにアタッチされている緑のボタンをコピー アクティビティにドラッグします。

  11. [アクティビティ] ツールボックスからパイプライン デザイナー画面にストアド プロシージャ アクティビティをドラッグします。 アクティビティの名前を「StoredProceduretoUpdateChangeTrackingActivity」に設定します。 このアクティビティは、table_store_ChangeTracking_version テーブル内の変更追跡バージョンを更新します。

  12. [設定] タブに切り替えて、次のステップを実行します。

    1. [リンク サービス] で [AzureSqlDatabaseLinkedService] を選択します。
    2. [ストアド プロシージャ名] に [Update_ChangeTracking_Version] を選択します。
    3. [インポート] を選択します。
    4. [ストアド プロシージャのパラメーター] セクションで、各パラメーターに次の値を指定します。
    名前 タイプ 価値
    CurrentTrackingVersion Int64 @{activity('LookupCurrentChangeTrackingVersionActivity').output.firstRow.CurrentChangeTrackingVersion}
    TableName 糸 @{activity('LookupLastChangeTrackingVersionActivity').output.firstRow.TableName}

    ストアド プロシージャ アクティビティのパラメーターの設定を示すスクリーンショット。

  13. コピー アクティビティをストアド プロシージャ アクティビティに接続します。 コピー アクティビティにアタッチされている緑のボタンをストアド プロシージャ アクティビティにドラッグします。

  14. ツール バーの [検証] を選択します。 検証エラーがないことを確認します。 [Pipeline Validation Report](パイプライン検証レポート) ウィンドウを閉じます。

  15. [すべて公開] ボタンを選択して、エンティティ (リンクされたサービス、データセット、およびパイプライン) を Data Factory サービスに発行します。 [発行は成功しました] というメッセージが表示されるまで待機します。

    データ ファクトリのすべてのエンティティを発行するためのボタンを示すスクリーンショット。

増分コピー パイプラインを実行する

  1. パイプラインのツール バーの [トリガーの追加] を選択し、[Trigger Now](今すぐトリガー) を選択します。

    今すぐ増分コピーをトリガーするオプションを示すスクリーンショット。

  2. [Pipeline Run](パイプラインの実行) ウィンドウで [OK] を選択します。

増分コピー パイプラインを監視する

  1. [監視] タブを選択します。パイプラインの実行とその状態がリストに表示されます。 リストを更新するには、[最新の情報に更新] を選択します。

    データ ファクトリのパイプライン実行を示すスクリーンショット。

  2. パイプラインの実行に関連付けられたアクティビティの実行を表示するには、[パイプライン名] 列で IncrementalCopyPipeline リンクを選択します。 アクティビティの実行内容がリストに表示されます。

    データ ファクトリのアクティビティーの実行を示すスクリーンショット。

結果の確認

2 番目のファイルは、adftutorial コンテナーの incchgtracking フォルダーに表示されます。

増分コピーからの出力ファイルを示すスクリーンショット。

このファイルに含まれているのは、データベースからの差分データのみです。 U と記録されているレコードはデータベース内の更新された行で、I は追加された行です。

PersonID,Name,Age,SYS_CHANGE_VERSION,SYS_CHANGE_OPERATION
1,update,10,2,U
6,new,50,1,I

最初の 3 つの列は、data_source_table から変更済みデータです。 最後の 2 つの列は、変更追跡システム 用のテーブルのメタデータです。 4 つ目の列は、変更済みの各行の SYS_CHANGE_VERSION の値です。 5 つ目の列は実行された操作です。U は更新 (Update) を、I は挿入 (Insert) を表します。 変更追跡情報の詳細については、「CHANGETABLE」を参照してください。

==================================================================
PersonID Name    Age    SYS_CHANGE_VERSION    SYS_CHANGE_OPERATION
==================================================================
1        update  10            2                                 U
6        new     50	       1                            	 I

次のチュートリアルに進んで、 LastModifiedDate に基づいて新規ファイルおよび変更されたファイルのみをコピーする方法について学習してください。