1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

クラウドAI by ナレコムAdvent Calendar 2024

Day 16

Azure Data Factory でコピーアクティビティを使用して差分更新を行う方法

Posted at

はじめに

Azure Data Factory を利用するユーザーにとって、頻繁に使用されるコピーアクティビティ。今回、差分更新を一括で実施する必要が生じたため、その方法を調べました。本稿では、その結果を備忘録としてまとめています。

内容

※注意:コピーアクティビティの基本的な追加手順については割愛しています。

差分更新の設定方法

Azure Data Factory のコピーアクティビティには、直接的な差分更新の設定項目はありません。そのため、動的コンテンツを利用して式を記述する必要があります。

設定手順
コピーアクティビティの「最終変更日時でフィルター」という項目に、以下のような式を記載します。これにより、差分更新を行うことが可能になります。

今回は、デイリーバッチ処理を想定として以下の式を使用しました。

@formatDateTime(addDays(pipeline().TriggerTime, -1), 'yyyy-MM-ddTHH:mm:ss')

設定例
以下の画像の赤枠部分に、上記の式を入力します。
image.png

他のバッチ処理時間に応じた設定例

マイクロソフト公式ドキュメントには、動的コンテンツの例が紹介されています。以下の表を参考に、任意のバッチ処理時間を設定することができます。

繰り返し 動的コンテンツ
分単位 @formatDateTime(addMinutes(pipeline().TriggerTime, -<your set repeat minute>), 'yyyy-MM-dd HH:mm:ss')
1 時間ごと @formatDateTime(addHours(pipeline().TriggerTime, -<your set repeat hour>), 'yyyy-MM-ddTHH:mm:ss')
毎日 @formatDateTime(addDays(pipeline().TriggerTime, -1), 'yyyy-MM-ddTHH:mm:ss')
週単位 @formatDateTime(addDays(pipeline().TriggerTime, -7), 'yyyy-MM-ddTHH:mm:ss')

これらの例を参考にすることで、任意のバッチ時間に応じた差分更新処理が可能になります。

まとめ

Azure Data Factory を使用することで、差分更新を活用した効率的で自動化されたデータ転送が可能になります。適切な差分検出ロジックを設計し、コピーアクティビティと動的コンテンツを組み合わせることで、安定した運用が期待できます。また、作業負荷の軽減や運用コストの最適化にもつながるため、ぜひ活用してみてください。

参考文献

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?