一、节点参数配置项
默认参数值:
{yyyyMMdd}
为业务日期,即当前日期的前一天T-1,
[yyyyMMdd]
为执行日期,即当前日期T
默认参数:
bizdate,nodeid,taskid
-
nodeid是节点id
-
taskid是节点生成实例时候的实例id
-
bizdate默认为当前日期的前一天,即参数默认参数值赋值为{yyyyMMdd},例:如果今天是2018年1月10日,bizdate=20180109
-
生产业务板块名为当前系统所有生产业务板块名,开发环境执行时替换为开发板块名,生产环境执行时替换为生产板块名,例:如果系统有Dev-Prod模式生成的生产业务板块为是LD_demo,
则默认生产环境里
${LD_demo}
执行代码时更新为LD_demo
开发环境里
${LD_demo}
执行代码时更新为LD_demo_dev。 默认参数bizdate的设置及执行效果
二、可以在节点代码中直接引用这些参数配置项
①支持代码中自定义参数,引用默认参数值,如time=${today}
,调度参数配置为 today=$[yyyyMMdd]
,则2019年2月28日调度执行时,执行代码为time=20190228.
②如果用户配置的参数和默认参数有重复冲突, 则用户配置的参数赋值会覆盖默认规则. 例如配置了bizdate=ABC, 则在节点代码中引用bizdate时, 该bizdate的值会被替换为ABC,而不是具体日期参数值yyyymmdd。 默认参数bizdate配置为其他参数值的设置及执行效果
三、参数生效流程
调度参数配置后,请点击配置界面的【确定】按钮更新配置,然后再提交调度,成功后,对应任务再执行时,会取最新的配置及代码执行。可以根据运行日志,查看配置的参数生效情况
四、即席查询支持参数识别与设置
但是与调度系统规则有所不同,{bizdate}执行时,系统会识别并默认填入执行日期为默认值(2019年2月28日查询执行时,执行代码为替换为20190228),其他参数不会填入默认值,系统会记住当前界面会话下,用户最新填入的参数值,会话有效期内,执行时默认填入最新参数值。
五、Dataphin调度系统(Voldemort)时间参数的配置
日调度等:
提供基于业务日期和预计执行时间两种方式
基于业务日期的方式:
${yyyyMMdd}
基于预计执行时间的方式:
$[yyyyMMdd]
可参考示例配置,实现月调度、年调度
小时、分钟调度:
- 提供基于小时和分钟偏移,而实现的小时调度、分钟调度,暂不支持秒
- HH表示小时,mi(或mm)表示分钟,ss表示秒
- 小时的偏移: delta/24, 分钟的偏移: delta/24/60 例如在指定执行时间前一小时的表达式为:
$[HH-1/24]
,
在业务日期前1分钟:${HHmmss-1/24/60}
特别说明:如果配置的时间参数只精确到日, 那么小写的mm会被识别为月份。当同时有月和分钟存在的时候, 为了避免歧义, 需要将月大写为MM, 将分钟小写为mm,否则会统一识别为分钟,从而导致月份参数出错(比如更新为大于12的数值)
六、具体的配置可以参考下面的表格
七、特别说明
周期实例: 系统时间=T(取生成实例的时间) bizdate=T-1(根据系统时间获取默认取值,调度配置参数取值可修改)→影响数据读写的时间分区值 预计执行时间=bizdate+1=T(根据bizdate获取)→影响数据生成时间
补数据实例: 系统时间=T(取生成实例的时间) Bizdate<=T(补数据时传入值)→影响数据读写的时间分区值 预计执行时间=Bizdate+1 →影响数据生成时间 ①如Bizdate+1<=T,取Bizdate+1 ②如bizdate+1>T,特殊处理为T 执行时,会根据调度配置时实例预计执行小时运行(如调度配置设置了定时以及分时段运行等)
八、一个时间调度案例
然后 确定、提交、发布