[Azure Data Factory] パイプラインの推奨設定 – リトライ


BI Data Platform (SQL Server) Support Team 山崎実久

– Azure Data Factory とは?

SQL Server では、データを移行を行う際 SQL Server Integration Services (SSIS) を利用することで、CSV ファイルのデータを SQL Server へコピーすることや、データ加工後の移行ができました。

これを Azure のクラウドで実現したものが Azure Data Factory となります。

Azure Data Factory を利用すれば、例えばローカルにある CSV ファイルや SQL Server にあるデータを Azure SQL Database や Blob Storage にコピーしたり、データ変更後の移行ができます。

サポートされる移行元のデータは、ローカルのファイル、On-Premise の SQL Server や Oracle のデータ、Azure 上の SQL Database や Data Lake Store のデータなどさまざまで、それらを Azure 上の SQL Database, BLOB Storage や DocumentDB などへのデータ移行もしくはデータ変換し保存することができます。詳細は クラウドによるデータ統合サービスである Azure Data Factory サービスの概要 を参照ください。

– Azure Data Factory で行われる処理とは?

Azure Data Factory で行われる処理はアクティビティと呼ばれ、主に 2 種類あります。一つは、データをコピーするコピーアクティビティ。もう一つは、データを変換もしくは分析する、データ変換アクティビティです。

これらのアクティビティは、Azure Data Factory で設定する JSON 形式の パイプラインで指定できます。

– コピーアクティビティの参考情報  コピー アクティビティを使用したデータの移動

– データ変換アクティビティの参考情報  Azure Data Factory でデータを変換する

 

– パイプラインの推奨設定 – リトライ

Azure Data Factory は Azure クラウドの Web のサービスであるため、高可用性を実現しているサービスではあるものの、データセンター側でのサーバーの障害によるフェールーバー(サーバーの切り替え)や、ネットワークの問題による瞬断などが発生します。

そのため、上記の問題を回避するため、パイプラインの activities の項目にある policy にてリトライの設定を行います。詳細は Azure Data Factory のパイプラインとアクティビティ を参照ください。リトライの設定例は以下となります。

(例) スライス (パイプラインで指定した間隔) のデータ処理が失敗した場合、最初に 3 回リトライを行い (“retry”: 3)、それでも失敗する場合は 25 分待って (“longRetryInterval”: “00:25:00”)、2回目のロングリトライ (“longRetry”: 2) により、3 回のリトライが実施される設定の例です。

 

“policy”: {
“timeout”: “01:00:00”,
“delay”: “00:07:00”,
“concurrency”: 1,
“executionPriorityOrder”: “NewestFirst”,
“retry”: 3,
“longRetry”: 2,
“longRetryInterval”: “00:25:00”
},

 

上記の設定で意図的にスライスのデータ処理を失敗させました。この状態を Azure Portal サイトの “監視と管理(プレビュー)” で確認すると以下のようになります。

15 分毎にスライスを実行するスケジュールが設定されていますが、7分の遅延 (“delay”: “00:07:00”) 後 2/21 9:22 AM にスライスが開始されています。その後 3 回リトライを行い (“retry”: 3)、それでも失敗する場合は 25 分待って (“longRetryInterval”: “00:25:00”)、2/21 9:47 AM に 2 回目のロングリトライ (“longRetry”: 2) により、3 回のリトライが実施されていることが分かります。

 

image

 

※ 本ブログの内容は、2017年2月時点の情報です。

以上、Azure Data Factory の紹介と、パイプラインのリトライの設定についてお伝えしました。お役に立てたら幸いです。


Comments (0)

Skip to main content