すべてのプロダクト
Search
ドキュメントセンター

DataWorks:自動トリガーワークフロー

最終更新日:Jul 15, 2025

DataWorks は、ノードが定期的に実行されるようにスケジュールされている自動トリガーワークフローを提供します。このトピックでは、自動トリガーワークフローの使用方法について説明します。

背景情報

ワークフローは、データ処理プロセス用の自動管理ツールの一種です。ワークフローの構成タブでさまざまな種類のノードをドラッグして、ノードのスケジューリング依存関係を簡単に構成できます。これは、データ処理プロセスの構築を加速し、タスク開発効率を効果的に向上させるのに役立ちます。

サポートされているスケジューリングの依存関係

自動トリガーワークフローのスケジューリング依存関係の構成は、一般的なノードの構成とよく似ています。自動トリガーワークフロー内のノード、または自動トリガーワークフロー全体は、他のノードに依存したり、他のノードから依存されたりすることができます。次の依存関係がサポートされています。

  • ワークフロー全体は、他の独立したタスクまたはワークフローから依存される可能性があります。

  • ワークフロー全体は、他の独立したタスクまたはワークフローに依存する可能性があります。

  • 自動トリガーワークフロー内のタスクは、他の独立したタスクまたはワークフローに依存する可能性があります。

  • 自動トリガーワークフロー内のタスクは、他の独立したタスクまたはワークフローから依存される可能性があります。

スケジューリングの依存関係

実行プロセスにおける自動トリガーワークフローの状態変化

自動トリガーワークフローのスケジュール時刻を指定できます。自動トリガーワークフロー内のノードの実行は、スケジュール時刻の影響を受けます。ノードが自動トリガーワークフローに依存している場合、ノードの実行は自動トリガーワークフローのスケジュール時刻の影響を受けます。スケジューリングシナリオでは、自動トリガーワークフローの状態は、ワークフロー内のタスクの状態の影響を受けます。

自動トリガーワークフローの状態変化

自動トリガーインスタンスの状態:

  • image 未実行

  • image スケジュール時刻の到着を待機中

  • image 実行中

  • image 成功

  • image 失敗

  • image 凍結

Workflow图片

特別なシナリオ:

  • ワークフロー内のインスタンスが凍結または一時停止されている場合、ワークフローインスタンス全体が失敗状態になります。

  • ワークフロー内のタスクに対して生成されたデータバックフィルインスタンスが凍結されている場合、ワークフローインスタンスは成功状態になります。

  • データバックフィルシナリオでタスクを実行できない場合、タスクが属するワークフローは失敗状態になります。

  • インスタンスの状態が変化する時刻と、障害イベントが実際に生成される時刻の間には、時間差があります。

  • ワークフローにマージノードが存在する場合、マージノードの上位ノードが失敗する可能性があります。この場合、マージノードが成功状態にあるかどうかによって、ワークフローが成功状態にあるかどうかを確認できます。

自動トリガーワークフロー内のノードの実行時間とパラメーターの置き換え

  • ワークフロー内のノードの [スケジューリングサイクル] を構成する必要はありません。ワークフロー内のノードの [遅延実行時間] のみ構成する必要があります。遅延実行時間は、ワークフロー内のノードがワークフローのスケジュール時刻から遅延される時間の長さを示します。

  • ワークフロー内のノードの実際の実行時間は、ノードに構成された [遅延実行時間] とワークフローに構成された [スケジュール時間] に基づいて計算されます。

  • ワークフロー内のノードのスケジューリングパラメーターの値の割り当ては、ワークフローの全体的なスケジュール時間に基づいて決定されますが、遅延後の時間に基づいて決定されるわけではありません。

注意事項

  • 新バージョンの Data Studio のみ、自動トリガーワークフローをサポートしています。

  • ワークフローを作成するときは、スケジューリングタイプとして [定期スケジューリング] を選択します。

  • 参照可能なワークフローは、別のワークフローに依存したり、本番環境にデプロイされた後に自動的にスケジュールされたりすることはできません。

    重要
    • 参照可能なワークフローは、別のワークフローに依存したり、別のワークフローから依存されたりすることはできません。ワークフロー内のノードは、ワークフローに属さない他のノードに依存したり、ワークスペースのルートノードなどの他のノードから依存されたりすることはできません。そうでない場合、参照可能ワークフローをデプロイすると、エラーが報告され、ワークフローを期待どおりにデプロイできません。

    • 参照可能なワークフローが本番環境にデプロイされた後、SUB_PROCESS ノード を使用して別のワークフローによって参照されるまで、ワークフローは自動的にスケジュールされません。

ワークフロー作成ページに移動する

  1. DataWorks コンソールの [ワークスペース] ページに移動します。上部のナビゲーションバーで、目的のリージョンを選択します。目的のワークスペースを見つけ、[アクション] 列で [ショートカット] > Data Studio を選択します。

  2. Data Studio ページの左側のナビゲーションウィンドウで、image アイコンをクリックします。DATA STUDIO ウィンドウの [ワークスペースディレクトリ] セクションで、右側にある image アイコンをクリックし、[ワークフローの作成] を選択します。

    説明

    DATA STUDIO ウィンドウの [ワークスペースディレクトリ] セクションで初めて操作を実行する場合は、[ワークフローの作成] を直接クリックしてワークフローを作成できます。

自動トリガーワークフローを作成する

  1. [ワークフローの作成] ページで、スケジューリングタイプとして [定期スケジューリング] を選択します。

    説明
    • 自動トリガーワークフローを使用すると、タスクがトリガーされる頻度を定義できます。指定された時刻にタスクを自動的に実行するようにスケジュールを指定できます。

    • トリガーベースのワークフローを作成するには、「トリガーベースのワークフロー」を参照してください。

  2. ワークフロー名を入力し、[OK] をクリックして作成します。

自動トリガーワークフローを設計する

ワークフローの構成タブの左側で、開発するタスクのタイプに基づいてノードタイプを選択し、ノードタイプを右側のキャンバスにドラッグします。次に、手動で線をドラッグして、ノード間のスケジューリングの依存関係を構成します。

説明
  • DataWorks は、さまざまな計算エンジンの機能をさまざまなタイプのノードにカプセル化します。さまざまな計算エンジンのタイプのノードを使用して、計算エンジンで複雑なコマンドを実行する必要なく、視覚化された方法でデータを開発できます。また、DataWorks の一般的なノードを使用して、複雑なロジックを設計することもできます。

  • 1 つのワークフローには最大 400 個のノードを含めることができます。読みやすさと保守性を向上させるために、ノード数を 100 未満に保つことをお勧めします。

自動トリガーワークフローを開発する

次の手順を実行して、ワークフローを開発できます。また、ワークフロー間の参照を構成し、ワークフローパラメーターをワークフロー内のノードのパラメーターに透過的に渡すこともできます。詳細については、「付録:ワークフローの参照」を参照してください。

  1. ワークフロー内のノードの構成タブに移動します。

    ワークフローの構成タブで、ポインターを目的のノードの上に移動し、[ノードを開く] をクリックして、ノードの構成タブに移動します。

  2. ノードを開発します。

    ノードの構成タブで、ノードコードを編集します。コード開発中は、次の項目に注意してください。

    • コード構文は、選択したノードタイプによって異なります。タスクの種類によって、スケジューリング構成が異なります。詳細については、「ノード開発」を参照してください。

    • インテリジェントプログラミングアシスタント Copilot を有効にして、インテリジェントなコード補完の提案を取得し、開発効率を向上させることができます。

    • ほとんどのノードタイプでは、${変数名} 形式で変数を定義できます。このようにして、タスクコードのデバッグを容易にするために、さまざまなスケジューリングパラメーターを変数に値として割り当てることができます。

    • ワークフローでスケジューリングノードを実行する場合、ノードのコードエディターで ${workflow.[パラメーター名]} の形式でワークフローパラメーターを定義して、ワークフローパラメーターの値を取得できます。

  3. ノードをデバッグして実行します。

    1. デバッグパラメーターを構成します。コードを編集した後、ノードの構成タブの右側のナビゲーションウィンドウで [デバッグ構成] タブをクリックして、デバッグパラメーターを構成できます。

      1. [計算リソース] セクションで、デバッグするノードのタスクの計算リソースを指定します。

      2. [DataWorks 構成] セクションで、DataWorks でタスクを実行するために使用されるリソースグループを指定します。

      3. ノードコードで ${変数名} 形式で変数を定義した場合は、スクリプトパラメーターセクションで変数に定数を割り当てます。

    2. ノードをデバッグして実行します。構成が完了したら、ノードの構成タブの上部ツールバーにある [実行] をクリックして、デバッグ構成タブで構成されたデバッグパラメーターに基づいてノードを実行します。

自動トリガーワークフローをデバッグする

デバッグが完了したら、ワークフローをデバッグします。

  1. ワークフローの構成タブの上部ツールバーにある image アイコンをクリックします。[ランタイムパラメーターを入力] ダイアログボックスで、[この実行で使用される値] パラメーターを構成し、[OK] をクリックします。

  2. ワークフローの構成タブでノードをクリックして、実行結果を表示します。

自動トリガーワークフローをデプロイする

次の手順を参照して、ワークフローとワークフロー内のノードのスケジューリング設定を定義し、ワークフローを本番環境にデプロイして定期的にスケジュールできます。

  1. ワークフロー内のノードのスケジューリング設定を構成します。

    ワークフロー内のノードのスケジューリング設定を構成する手順は、基本的に一般的なノードの手順と同じです。詳細については、「スケジューリングの依存関係」を参照してください。ワークフロー内のノードのスケジューリング設定を構成する場合は、次の項目に注意してください。

    • ワークフロー内のノードのスケジュール時間を個別に構成する必要はありません。代わりに、ワークフロー内のノードの遅延実行時間を構成できます。遅延実行時間は、ノードの実行が関連ワークフローの実行よりも遅れる期間を示します。

    • ワークフロー内のノードのコードで使用される変数の値は、ワークフローのスケジュール時間に基づいて割り当てられます。

  2. ワークフローのスケジューリング設定を構成します。

    ワークフローのスケジューリングパラメーター、スケジュール時間、およびスケジューリングの依存関係を構成します。

  3. ワークフローをデプロイします。

    ワークフローの構成タブの上部ツールバーにある image アイコンをクリックします。[デプロイ] タブで、[本番環境へのデプロイを開始] をクリックします。ワークフローは、チェックとデプロイのプロセスに基づいてデプロイされます。詳細については、「ノードまたはワークフローのデプロイ」を参照してください。

次のステップ:ワークフローの O&M

自動トリガーワークフローがデプロイされると、自動トリガーワークフローは定期的にスケジュールされます。本番環境のオペレーションセンターで自動トリガーワークフローの状態を表示し、自動トリガーワークフローで O&M 操作を実行できます。詳細については、「概要」および「データをバックフィルし、データバックフィルインスタンスを表示する(新バージョン)」を参照してください。

付録:ワークフローの参照

シナリオ 1:ワークフローを参照する

ワークフロー内の SUB_PROCESS ノードを使用して、別のワークフローを参照できます。ワークフローを参照可能にするには、次の手順を実行します。ワークフローの構成タブの右側のナビゲーションウィンドウで、[プロパティ] をクリックします。表示されるタブで、[参照可能] をオンにします。

重要

参照可能ワークフローが本番環境にデプロイされた後、SUB_PROCESS ノード を使用して別のワークフローによって参照されるまで、ワークフローは自動的にスケジュールされません。

参照可能ワークフローのスケジュール時間は、参照可能ワークフローを参照するワークフローのスケジュール時間によって異なります。