データワークフローでは、SQL などのタスクコードは、スケジューリング時刻に基づいて日付固有のデータを処理するために頻繁に変更されます。手動でのコード変更を避けるために、スケジューリングパラメーターを使用します。コード内でプレースホルダーを定義すると、システムが自動的に業務日付やスケジュール実行時刻などの動的な値に置き換えます。これにより、ワークフローが自動化され、パラメーター化されます。
コア設定プロセス
スケジューリングパラメーターを使用するには、コードでパラメーターを定義し、Scheduling Settings で値を割り当てます。データ開発でテストした後、ノードとそのパラメーターをオペレーションセンターにコミットします。その後、システムはタスクを実行し、パラメーターを割り当てられた値に自動的に置き換えます。
ステップ | アクション | 目標 |
1. パラメーターの定義 | ノードのコード内で、 | 動的な値のプレースホルダーを作成します。 |
2. パラメーターの設定 | ノードの ペインで、コード内の変数に値を割り当てます。 |
|
3. テスト | Smoke test 機能を使用して特定の業務日付をシミュレートし、パラメーターの置換とコードの実行が正しいことを確認します。 | データ開発環境で設定が正しいことを確認します。 |
4. 公開と検証 | ノードを本番環境にサブミットし、Operation and Maintenance Center で最終的なパラメーター設定を確認します。 | 本番環境タスクのパラメーターが期待どおりであることを確認します。 |
スケジューリングパラメーターは、タスクがオペレーションセンターでスケジューリングされている場合にのみ有効になります。データ開発でコードをテストするには、Run Configuration でパラメーターに手動で値を一時的に割り当てることができます。
操作手順
ステップ1:パラメーターの定義

ターゲットノード (例: MaxCompute SQL ノード) をダブルクリックして、ノードエディターを開きます。
MaxCompute SQL ノードで、
${param}構文を使用してパラメーターを定義します。DataWorks では、パラメーターのレビューと管理を容易にするために、説明的な名前を使用することを推奨します。スケジューリングパラメーターの形式:
形式タイプ
構文
スコープ
備考
一般的な形式
${parameter_name}MaxCompute SQL ノードやデータ同期ノードなど、ほとんどのノードタイプに適用されます。
これは最も一般的な形式です。
特殊な形式
ノードタイプによって異なり、
${...}形式は使用しません。PyODPS、Shell
詳細については、「さまざまなノードタイプのスケジューリングパラメーター設定の例」をご参照ください。
-- 例:パーティションフィルタリングのために pt_date という名前の変数を定義します SELECT * FROM my_table WHERE ds = '${pt_date}';ページの右側で、Scheduling Settings をクリックして Scheduling Parameters 設定にアクセスします。
以下に説明するように、スケジューリングパラメーターを設定します。
ステップ2:パラメーターの設定
Define with table モードまたは Defined with an expression モードのいずれかを使用してスケジューリングパラメーターを設定できます。パラメーターリストの右上隅にある Defined with an expression をクリックすると、モードを切り替えることができます。デフォルトモードは Define with table です。
パラメーターの設定
テーブルで定義
ノードエディターの右側にある Scheduling Settings をクリックして、スケジューリングパラメーター設定ページを開きます。

パラメーターの追加
ノードの右側で、Scheduling Settings をクリックします。Scheduling Parameters セクションでは、次の方法でパラメーターを追加できます。
Add parameters をクリックして、パラメーター名と値を手動で入力します。パラメーター名は、コードで定義された変数名と一致する必要があります。
Loading parameters in code をクリックします。DataWorks は、
${pt_date}などの変数をコードから自動的に解析し、リストに追加します。各パラメーターに値を指定するだけで済みます。
パラメーター値の割り当て
[組み込みパラメーター]、[カスタム時間パラメーター]、[ワークスペースパラメーター、アップストリームノードの出力パラメーター]、および [定数] から値を割り当てることができます。
入力ボックスをクリックすると、よく使用されるパラメーター式のドロップダウンリストが表示されます。リストから式を選択するか、カスタム式または組み込み変数を手動で入力できます。
ビジネスニーズに基づいて値を入力します。サポートされているパラメーター値のソースのリストについては、「スケジューリングパラメーターのソースと式」をご参照ください。
パラメーターの横にある
アイコンをクリックして、コンテキストパラメーターをすばやくバインドすることもできます。Associate Output Parameter of Ancestor Node ダイアログボックスで、出力パラメーターが設定されているノードを選択して、依存関係をすばやくバインドします。出力パラメーターの詳細については、「ノードコンテキストパラメーターの設定と使用」をご参照ください。
式で定義
Defined with an expression をクリックして設定モードを切り替えることで、式を使用してパラメーターを設定できます。

式モードを使用する場合、複数のパラメーターはスペースで区切ります。
Defined with an expression モードでスケジューリングパラメーターを追加、削除、または変更すると、DataWorks は現在の式の構文を検証します。検証に失敗した場合、設定を保存することはできません。
例えば、DataWorks は、等号の両側にスペースを使用しないなどの構文ルールをチェックします。
パラメーターのプレビュー
パラメーターを定義した後、Preview of scheduling parameters をクリックすると、指定した業務日付に基づいて、将来のインスタンスで解決される値を確認できます。これにより、定義が正しいことを確認できます。業務日付とプレビューするインスタンスの数を調整できます。
説明オフラインデータ同期などの一部のノードには、デフォルトの
${bizdate}パラメーターが付属している場合があり、これには自動的に値$bizdateが割り当てられます。コード内のbizdateパラメーター名をカスタム名に置き換えることができます。${bizdate}という名前は予約キーワードではなく、他のカスタムパラメーターと同様に扱われます。
ステップ3:スモークテストの実行
スケジューリングパラメーターに値を割り当てた後、公開プロセス中にスモークテスト機能を使用します。業務日付を設定してタスクのスケジューリングシナリオをシミュレートし、コードの実行とパラメーターの置換が期待どおりに機能することを確認します。テストが失敗した場合は、設定を調整して、スケジュールされた実行でのエラーを防ぎます。
ノードコードを公開します。

スケジューリング時刻とスケジューリング依存関係を設定します。
コードと設定を保存し、ツールバーの [公開] ボタンをクリックしてスモークテストを開始します。
説明スモークテストが最新のコードまたはパラメーターで実行されていない場合は、Republish Production をクリックします。
スモークテストを実行します。
Initiate Smoke Testing をクリックします。Smoke test ダイアログボックスで、業務日付を選択し、[OK] をクリックしてテストを開始します。
スモークテストのログを表示します。
左側メニューで、
[スモークテスト記録] ボタンをクリックします。スモークテスト記録で、ログ をクリックします。
ログのパラメーター値を確認して、それらが正しいことを確認します。
ステップ4:公開と検証
開発環境で検証した後、タスクをサブミットしてオペレーションセンターに公開し、本番環境で自動スケジューリングできます。公開後は、実行時エラーを防ぐために、本番環境のスケジューリングパラメーターを必ず確認してください。
定期タスクのスケジューリングパラメーターが期待どおりに設定されていない場合、またはオペレーションセンターでタスクが見つからない場合は、タスクが正常に公開されたことを確認してください。タスクの公開の詳細については、「タスクの公開」をご参照ください。
パラメーター定義を確認します。
オペレーションセンターで、ターゲットリージョンとワークスペースに切り替え、 ページに移動します。タスクリストでタスク名をクリックし、タスクの General パネルの実行パラメーターが期待どおりかどうかを確認します。

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

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

完全な設定例
このセクションでは、開発環境の [スモークテスト] 機能を使用して、スケジューリングパラメーターをテストする方法を説明します。タスクを公開した後、オペレーションセンターでパラメーター設定を確認します。
さまざまなノードタイプのスケジューリングパラメーターの設定については、「さまざまなノードタイプのスケジューリングパラメーター設定の例」をご参照ください。
ノードコードを編集し、スケジューリングパラメーターを設定します。
次の図は、MaxCompute SQL ノードのコードとスケジューリングパラメーター設定を示しています。

コード内で変数を定義します。
-- 組み込みパラメーターの割り当て SELECT '${var1}'; SELECT '${var2}'; -- カスタムパラメーターの割り当て SELECT '${var3}'; SELECT '${var4}'; -- 定数の割り当て SELECT '${var5}';変数に値を割り当てます。
セクションで、変数に値を割り当てます (たとえば、領域 2)。サポートされている形式の詳細については、「スケジューリングパラメーターでサポートされている形式」をご参照ください。
var1=$bizdateは、yyyymmdd形式で業務日付を取得します。var2=$cyctimeは、yyyymmddhh24miss形式でタスクのスケジュールされた時刻を取得します。var3=${yyyymmdd}は、yyyymmdd形式の業務日付です。var4=$[yyyymmddhh24miss]は、yyyymmddhh24miss形式でタスクのスケジュール実行時刻を取得します。var5=Hangzhouは、var5 の値を定数 Hangzhou に設定します。
オプション: スケジューリング時刻を設定します。
MaxCompute SQL ノードが 1 時間ごとのスケジュールで実行されるように設定します (領域 3)。
説明要件に基づいて期間を設定できます。この例では、1 時間ごとのスケジュールを使用します。
スケジュール開始時刻:
16:00スケジュール終了時刻:
23:59スケジューリング間隔:
1時間。
期間設定の詳細については、「時間プロパティの設定」をご参照ください。
スケジューリング依存関係を設定します。
開発ノードのスケジューリング依存関係を設定します。詳細については、「スケジューリング依存関係の設定」をご参照ください。この例では、このノードのアップストリーム依存関係としてルートノードを使用します。
デバッグと実行。ツールバーの [実行] をクリックして、ノードの実行ステータスとログ出力が期待どおりであるかを確認します。スケジューリングパラメーターは、オペレーションセンターでのスケジュールされた実行中にのみ有効になります。データ開発でビジネスロジックをテストするには、Run Configuration パネルでパラメーターに手動で値を一時的に割り当てることができます。
ノードエディターページの上部にあるツールバーで、[保存] ボタンをクリックし、MaxCompute SQL ノードの設定を公開します。
公開プロセス中にスモークテストを開始します。
Initiate Smoke Testing ボタンをクリックします。Smoke test ダイアログボックスで、業務日付と時刻を設定して、ノードのスケジューリングサイクルをシミュレートします。
業務日付と時刻は次のように設定されます。業務日付:
2025-10-16開始時刻:
16:00終了時刻:
17:00
MaxCompute SQL ノードは 1 時間ごとのタスクであるため、実行日
2025-10-17の16:00と17: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。
Confirm をクリックします。ノードは指定された時刻に実行を開始します。
実行が完了したら、左側メニューの
[スモークテスト記録] ボタンをクリックして、スモークテストのログを表示します。2つのノードインスタンスは、期待どおりの結果で正常に実行されました。



現在のワークスペースが標準モードの場合、ノードを本番環境に公開する必要があります。MaxCompute SQL ノード編集ページで、トップメニューバーの右側にある Publish をクリックして、現在のノードを公開します。詳細については、「ノードの公開」をご参照ください。
オペレーションセンターに移動し、ノードのスケジューリングパラメーター設定を確認します。

Operation and Maintenance Center トップメニューバーの右上隅にある DataStudio をクリックして、オペレーションセンターを開きます。
ページで、ターゲットノードを検索します。
説明ノードは、正常に公開された後にのみ [定期タスク] ページに表示されます。
ターゲットノードの名前をクリックし、General パネルで Execution parameters を表示します。
この例では、ノードの実行パラメーターは
var1=$bizdate var2=$cyctime var3=${yyyymmdd} var4=$[yyyymmddhh24miss] var5=Hangzhouであり、期待される設定と一致します。インスタンスが生成された後の実際のパラメーター置換を確認するには、Cycle Examples メニューに移動します。インスタンス名を見つけてクリックし、General パネルで Execution parameters を表示します。
この例では、インスタンスの実行パラメーターは
var1=20251016 var2=20251017160000 var3=20251016 var4=20251017160000 var5=Hangzhouであり、期待値と一致します。