全部產品
Search
文件中心

DataWorks:各類型節點的調度參數配置樣本

更新時間:Oct 12, 2025

除通用Shell節點、PyODPS節點外,其他類型節點均可參考SQL類型節點(例如,MaxCompute SQL)的配置方式定義參數並為參數賦值。通用Shell節點、PyODPS節點的調度參數使用存在部分差異。本文為您介紹各類型節點的調度參數配置樣本。

SQL類型節點及離線同步節點

SQL類型節點及離線同步節點的調度參數配置與多數類型節點的配置相似,可供多數節點參考使用。本文以MaxCompute SQL節點為例,為您展示如何為系統內建變數及自訂參數賦值,並在代碼中進行調用。

說明

部分節點可能不支援使用調度參數。各節點是否支援使用調度參數,詳情請參考具體的節點開發文檔。

-- 取業務時間
SELECT '${var1}' '${var2}';
-- 取定時時間
SELECT '${var3}' '${var4}';
-- 取常量
SELECT '${var5}';

image

在參數賦值地區為參數賦值,然後進入代碼調用地區引用系統內建變數var1、var3,自訂參數var2、var4,常量var5。賦值樣本如下:

  • 系統內建變數var1賦值取業務時間:var1=$bizdate

  • 系統內建變數var3賦值取定時時間:var3=$cyctime

  • 自訂參數var2賦值取業務時間:var2=${yyyymmdd}

  • 自訂參數var4賦值取定時時間:var4=$[yyyymmddhh24:mi:ss]

  • 常量var5參數賦值為abc:var5=abc

配置及使用調度參數,詳情請參見配置節點調度參數,更多調度參數的賦值方式,詳情請參見調度參數支援格式

PyODPS節點

為避免代碼入侵,PyODPS節點不支援在代碼中直接使用${param_name}格式的字串替換定義的變數。執行代碼前,您需要從類型為dict(字典對象)的args全域變數中擷取調度參數。

# 自訂參數:var1取內建參數
a =args['var1']
print (format(a))
# 自訂參數:var2取值${…}
b =args['var2']
print (format(b))
# 自訂參數:var3取值$[…]
c =args['var3']
print (format(c))

image

如上圖,在參數賦值地區為參數賦值,然後進入代碼調用地區引用內建參數var1,自訂參數var2、var3。添加字典對象後的參數為args['var1']args['var2']args['var3']。賦值樣本如下:

  • 內建參數var1賦值取業務時間:var1=$bizdate

  • 自訂參數var2賦值取業務時間:var2=${yyyymmdd}

  • 自訂參數var3賦值取業務時間:var3=$[yyyymmdd]

配置及使用調度參數,詳情請參見配置節點調度參數,更多調度參數的賦值方式,詳情請參見調度參數支援格式

通過Shell節點配置樣本

通用Shell節點中的變數不允許自訂命名,只能以$1$2$3...命名(參數序號由小到大,依次遞增),當參數的數量大於10時,請使用${10}的方式聲明變數。

# 自訂參數:取內建參數
echo $1
# 自訂參數:${…}
echo $2
# 自訂參數:$[…]
echo $3

image

如上圖,在參數賦值地區為參數賦值,然後進入代碼調用地區定義內建參數$1,自訂參數$2、$3。賦值樣本如下:

說明

通用Shell節點僅支援使用運算式方式為參數賦值。多個參數賦值使用空格分隔,並且參數取值與定義參數時的順序對應。例如,上圖Shell節點定義的第一個參數為$1,則參數賦值地區序號第一的賦值內容$bizdate即為$1的參數取值。

  • 內建參數$1賦值取業務時間:$bizdate

  • 自訂參數$2賦值取業務時間:${yyyymmdd}

  • 自訂參數$3賦值取定時時間:$[yyyymmdd]

配置及使用調度參數,詳情請參見配置節點調度參數,更多調度參數的賦值方式,詳情請參見調度參數支援格式