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

DataWorks:スケジューリングパラメーターの設定と使用

最終更新日:May 22, 2026

データワークフローでは、SQL などのタスクコードは、スケジューリング時刻に基づいて日付固有のデータを処理するために頻繁に変更されます。手動でのコード変更を避けるために、スケジューリングパラメーターを使用します。コード内でプレースホルダーを定義すると、システムが自動的に業務日付やスケジュール実行時刻などの動的な値に置き換えます。これにより、ワークフローが自動化され、パラメーター化されます。

コア設定プロセス

スケジューリングパラメーターを使用するには、コードでパラメーターを定義し、Scheduling Settings で値を割り当てます。データ開発でテストした後、ノードとそのパラメーターをオペレーションセンターにコミットします。その後、システムはタスクを実行し、パラメーターを割り当てられた値に自動的に置き換えます。

ステップ

アクション

目標

1. パラメーターの定義

ノードのコード内で、${param} 形式を使用して 1 つ以上のパラメーターを定義します。

動的な値のプレースホルダーを作成します。

2. パラメーターの設定

ノードの Scheduling Settings > Scheduling Parameters ペインで、コード内の変数に値を割り当てます。

${param} プレースホルダーを、$bizdate$[yyyymmdd-1] などの特定のスケジューリングパラメーターに関連付けます。

3. テスト

Smoke test 機能を使用して特定の業務日付をシミュレートし、パラメーターの置換とコードの実行が正しいことを確認します。

データ開発環境で設定が正しいことを確認します。

4. 公開と検証

ノードを本番環境にサブミットし、Operation and Maintenance Center で最終的なパラメーター設定を確認します。

本番環境タスクのパラメーターが期待どおりであることを確認します。

説明

スケジューリングパラメーターは、タスクがオペレーションセンターでスケジューリングされている場合にのみ有効になります。データ開発でコードをテストするには、Run Configuration でパラメーターに手動で値を一時的に割り当てることができます。

操作手順

ステップ1:パラメーターの定義

image

  1. ターゲットノード (例: MaxCompute SQL ノード) をダブルクリックして、ノードエディターを開きます。

  2. MaxCompute SQL ノードで、${param} 構文を使用してパラメーターを定義します。DataWorks では、パラメーターのレビューと管理を容易にするために、説明的な名前を使用することを推奨します。

    スケジューリングパラメーターの形式:

    形式タイプ

    構文

    スコープ

    備考

    一般的な形式

    ${parameter_name}

    MaxCompute SQL ノードやデータ同期ノードなど、ほとんどのノードタイプに適用されます。

    これは最も一般的な形式です。

    特殊な形式

    ノードタイプによって異なり、${...} 形式は使用しません。

    PyODPS、Shell

    詳細については、「さまざまなノードタイプのスケジューリングパラメーター設定の例」をご参照ください。

    -- 例:パーティションフィルタリングのために pt_date という名前の変数を定義します
    SELECT * FROM my_table WHERE ds = '${pt_date}'; 
  3. ページの右側で、Scheduling Settings をクリックして Scheduling Parameters 設定にアクセスします。

  4. 以下に説明するように、スケジューリングパラメーターを設定します。

ステップ2:パラメーターの設定

Define with table モードまたは Defined with an expression モードのいずれかを使用してスケジューリングパラメーターを設定できます。パラメーターリストの右上隅にある Defined with an expression をクリックすると、モードを切り替えることができます。デフォルトモードは Define with table です。

  1. パラメーターの設定

    テーブルで定義

    ノードエディターの右側にある Scheduling Settings をクリックして、スケジューリングパラメーター設定ページを開きます。

    image

    • パラメーターの追加

      ノードの右側で、Scheduling Settings をクリックします。Scheduling Parameters セクションでは、次の方法でパラメーターを追加できます。

      1. Add parameters をクリックして、パラメーター名と値を手動で入力します。パラメーター名は、コードで定義された変数名と一致する必要があります。

      2. Loading parameters in code をクリックします。DataWorks は、${pt_date} などの変数をコードから自動的に解析し、リストに追加します。各パラメーターに値を指定するだけで済みます。

    • パラメーター値の割り当て

      [組み込みパラメーター][カスタム時間パラメーター][ワークスペースパラメーター、アップストリームノードの出力パラメーター]、および [定数] から値を割り当てることができます。

      • 入力ボックスをクリックすると、よく使用されるパラメーター式のドロップダウンリストが表示されます。リストから式を選択するか、カスタム式または組み込み変数を手動で入力できます。

      • ビジネスニーズに基づいて値を入力します。サポートされているパラメーター値のソースのリストについては、「スケジューリングパラメーターのソースと式」をご参照ください。

      • パラメーターの横にある image アイコンをクリックして、コンテキストパラメーターをすばやくバインドすることもできます。Associate Output Parameter of Ancestor Node ダイアログボックスで、出力パラメーターが設定されているノードを選択して、依存関係をすばやくバインドします。出力パラメーターの詳細については、「ノードコンテキストパラメーターの設定と使用」をご参照ください。

    式で定義

    Defined with an expression をクリックして設定モードを切り替えることで、式を使用してパラメーターを設定できます。

    image

    • 式モードを使用する場合、複数のパラメーターはスペースで区切ります。

    • Defined with an expression モードでスケジューリングパラメーターを追加、削除、または変更すると、DataWorks は現在の式の構文を検証します。検証に失敗した場合、設定を保存することはできません。

      例えば、DataWorks は、等号の両側にスペースを使用しないなどの構文ルールをチェックします。

  2. パラメーターのプレビュー

    パラメーターを定義した後、Preview of scheduling parameters をクリックすると、指定した業務日付に基づいて、将来のインスタンスで解決される値を確認できます。これにより、定義が正しいことを確認できます。業務日付とプレビューするインスタンスの数を調整できます。

    image

    説明

    オフラインデータ同期などの一部のノードには、デフォルトの ${bizdate} パラメーターが付属している場合があり、これには自動的に値 $bizdate が割り当てられます。コード内の bizdate パラメーター名をカスタム名に置き換えることができます。${bizdate} という名前は予約キーワードではなく、他のカスタムパラメーターと同様に扱われます。

    image

ステップ3:スモークテストの実行

スケジューリングパラメーターに値を割り当てた後、公開プロセス中にスモークテスト機能を使用します。業務日付を設定してタスクのスケジューリングシナリオをシミュレートし、コードの実行とパラメーターの置換が期待どおりに機能することを確認します。テストが失敗した場合は、設定を調整して、スケジュールされた実行でのエラーを防ぎます。

  1. ノードコードを公開します。

    image

    1. スケジューリング時刻スケジューリング依存関係を設定します。

    2. コードと設定を保存し、ツールバーの [公開] ボタンをクリックしてスモークテストを開始します。

      説明

      スモークテストが最新のコードまたはパラメーターで実行されていない場合は、Republish Production をクリックします。

  2. スモークテストを実行します。

    Initiate Smoke Testing をクリックします。Smoke test ダイアログボックスで、業務日付を選択し、[OK] をクリックしてテストを開始します。

  3. スモークテストのログを表示します。

    1. 左側メニューで、image [スモークテスト記録] ボタンをクリックします。スモークテスト記録で、ログ をクリックします。

      image

    2. ログのパラメーター値を確認して、それらが正しいことを確認します。

ステップ4:公開と検証

開発環境で検証した後、タスクをサブミットしてオペレーションセンターに公開し、本番環境で自動スケジューリングできます。公開後は、実行時エラーを防ぐために、本番環境のスケジューリングパラメーターを必ず確認してください。

説明

定期タスクのスケジューリングパラメーターが期待どおりに設定されていない場合、またはオペレーションセンターでタスクが見つからない場合は、タスクが正常に公開されたことを確認してください。タスクの公開の詳細については、「タスクの公開」をご参照ください。

  1. パラメーター定義を確認します。

    オペレーションセンターで、ターゲットリージョンとワークスペースに切り替え、Auto Triggered Task O&M > Auto Triggered Task ページに移動します。タスクリストでタスク名をクリックし、タスクの General パネルの実行パラメーターが期待どおりかどうかを確認します。

    image

  2. オペレーションセンターでスモークテストを実行します。

    オペレーションセンターでスモークテストを実行して、公開されたタスクがパラメーターを置換し、本番環境で期待どおりにコードを実行することを確認することもできます。詳細については、「テストの実行とテストインスタンスの表示」をご参照ください。

    重要

    スモークテストは、本番環境の実データで実行されます。本番データベースを破損させないように注意してください。

    image

  3. 実際のスケジューリング結果を監視します。

    タスクが自動的にスケジューリングされた後、Cycle Examples のパラメーターをチェックすることで、パラメーターの置換を確認できます。

    image

完全な設定例

このセクションでは、開発環境の [スモークテスト] 機能を使用して、スケジューリングパラメーターをテストする方法を説明します。タスクを公開した後、オペレーションセンターでパラメーター設定を確認します。

説明

さまざまなノードタイプのスケジューリングパラメーターの設定については、「さまざまなノードタイプのスケジューリングパラメーター設定の例」をご参照ください。

  1. ノードコードを編集し、スケジューリングパラメーターを設定します。

    次の図は、MaxCompute SQL ノードのコードとスケジューリングパラメーター設定を示しています。image

    1. コード内で変数を定義します。

      -- 組み込みパラメーターの割り当て
      SELECT '${var1}';
      SELECT '${var2}';
      -- カスタムパラメーターの割り当て
      SELECT '${var3}';
      SELECT '${var4}';
      -- 定数の割り当て
      SELECT '${var5}';
    2. 変数に値を割り当てます。

      Scheduling Settings > Scheduling Parameters セクションで、変数に値を割り当てます (たとえば、領域 2)。サポートされている形式の詳細については、「スケジューリングパラメーターでサポートされている形式」をご参照ください。

      • var1=$bizdate は、yyyymmdd 形式で業務日付を取得します。

      • var2=$cyctime は、yyyymmddhh24miss 形式でタスクのスケジュールされた時刻を取得します。

      • var3=${yyyymmdd} は、yyyymmdd 形式の業務日付です。

      • var4=$[yyyymmddhh24miss] は、yyyymmddhh24miss 形式でタスクのスケジュール実行時刻を取得します。

      • var5=Hangzhou は、var5 の値を定数 Hangzhou に設定します。

    3. オプション: スケジューリング時刻を設定します。

      MaxCompute SQL ノードが 1 時間ごとのスケジュールで実行されるように設定します (領域 3)。

      説明

      要件に基づいて期間を設定できます。この例では、1 時間ごとのスケジュールを使用します。

      • スケジュール開始時刻: 16:00

      • スケジュール終了時刻: 23:59

      • スケジューリング間隔: 1 時間。

      期間設定の詳細については、「時間プロパティの設定」をご参照ください。

    4. スケジューリング依存関係を設定します。

      開発ノードのスケジューリング依存関係を設定します。詳細については、「スケジューリング依存関係の設定」をご参照ください。この例では、このノードのアップストリーム依存関係としてルートノードを使用します。

    5. デバッグと実行。ツールバーの [実行] をクリックして、ノードの実行ステータスとログ出力が期待どおりであるかを確認します。スケジューリングパラメーターは、オペレーションセンターでのスケジュールされた実行中にのみ有効になります。データ開発でビジネスロジックをテストするには、Run Configuration パネルでパラメーターに手動で値を一時的に割り当てることができます。

  2. ノードエディターページの上部にあるツールバーで、[保存] ボタンをクリックし、MaxCompute SQL ノードの設定を公開します。

  3. 公開プロセス中にスモークテストを開始します。

    1. Initiate Smoke Testing ボタンをクリックします。Smoke test ダイアログボックスで、業務日付と時刻を設定して、ノードのスケジューリングサイクルをシミュレートします。

      image業務日付と時刻は次のように設定されます。

      • 業務日付: 2025-10-16

      • 開始時刻: 16:00

      • 終了時刻: 17:00

      MaxCompute SQL ノードは 1 時間ごとのタスクであるため、実行日 2025-10-1716:0017:00 に 2 つのインスタンスを生成します。

      説明

      業務日付は実行日の前日です。したがって、タスクの実際の実行日は 2025-10-17 です。

      16:00 のノードインスタンスの期待値は次のとおりです。

      • var1=20251016

      • var2=20251017160000

      • var3=20251016

      • var4=20251017160000

      17:00 のノードインスタンスの期待値は次のとおりです。

      • var1=20251016

      • var2=20251017170000

      • var3=20251016

      • var4=20251017170000

    2. Confirm をクリックします。ノードは指定された時刻に実行を開始します。

    3. 実行が完了したら、左側メニューの image [スモークテスト記録] ボタンをクリックして、スモークテストのログを表示します。

      2つのノードインスタンスは、期待どおりの結果で正常に実行されました。

      image

      image

      image

  4. 現在のワークスペースが標準モードの場合、ノードを本番環境に公開する必要があります。MaxCompute SQL ノード編集ページで、トップメニューバーの右側にある Publish をクリックして、現在のノードを公開します。詳細については、「ノードの公開」をご参照ください。

  5. オペレーションセンターに移動し、ノードのスケジューリングパラメーター設定を確認します。

    生产环境参数配置

    1. Operation and Maintenance Center トップメニューバーの右上隅にある DataStudio をクリックして、オペレーションセンターを開きます。

    2. Auto Triggered Task O&M > Auto Triggered Task ページで、ターゲットノードを検索します。

      説明

      ノードは、正常に公開された後にのみ [定期タスク] ページに表示されます。

    3. ターゲットノードの名前をクリックし、General パネルで Execution parameters を表示します。

      この例では、ノードの実行パラメーターは var1=$bizdate var2=$cyctime var3=${yyyymmdd} var4=$[yyyymmddhh24miss] var5=Hangzhou であり、期待される設定と一致します。

    4. インスタンスが生成された後の実際のパラメーター置換を確認するには、Cycle Examples メニューに移動します。インスタンス名を見つけてクリックし、General パネルで Execution parameters を表示します。

      この例では、インスタンスの実行パラメーターは var1=20251016 var2=20251017160000 var3=20251016 var4=20251017160000 var5=Hangzhou であり、期待値と一致します。

関連トピック