DMS は、DMS が管理するリソースへ安全にアクセスするためのカスタム Airflow オペレーターを提供します。ワークフローに合わせてオペレーターを選択してください。
前提条件
手順
詳細については、「ワークフロー開発」をご参照ください。
-
[WORKSPACE] または [REPOS] ページに移動して、コードを設定します。
-
Python ファイルでコードを設定します。
オペレーター
説明
DMS が管理するデータベースインスタンスに SQL を送信し、結果を取得します。
DTS を使用して、DMS が管理するデータベースから OSS にデータを同期します。
DMS が管理するノートブックファイル (.ipynb) を実行します。
AnalyticDB for MySQL (Lakehouse Edition) が管理する特定のリソースグループに Spark SQL を送信します (タスクタイプ:Interactive、エンジン:Spark)。
DMS のチャンク DML サービスを通じて、ロックフリーで大規模な DML 操作を実行します。大規模なテーブルに対する一括 UPDATE または DELETE 操作に最適です。
Lindorm Spark エンジンで SQL または JAR タスクを実行します。
-
Airflow UI または REST API を使用して Python ファイルを実行します。
共通機能
以下の機能は、すべての DMS Airflow オペレーターに共通です。
タスクのキャンセル
すべてのオペレーターは on_kill() メソッドを実装しています。タスクが手動で失敗としてマークされたり、タイムアウトしたりするなど、Airflow が終了シグナルを送信すると、オペレーターは対応するクラウドサービスのキャンセル API を自動的に呼び出してリモートタスクをクリーンアップすることで、リソースの浪費を防ぎます。
リトライメカニズム
タスクの送信とステータスチェックには、tenacity による組み込みのリトライメカニズムが含まれています:
-
タスクの送信:最大 3 回、5 秒間隔。
-
ステータスチェック:最大 5 回、3 秒間隔。