dataphin参数配置

节点参数配置说明
参数配置是用以支持代码中所用参数具体做参数值赋值,类似全局变量作用,从而支持节点调度时,参数可以自动被替换执行。
Dataphin调度系统(Voldemort)节点配置的原则
节点代码中引用参数的方式为:dataphin参数配置{KeyA}或dataphin参数配置{keyA}都是可以的.
节点配置支持参数的引用, 引用格式为 KeyA=dataphin参数配置, 则此时相当于KeyA=ValueB; KeyB=ValueB. 但是这里必须注意, Voldemort会进行循环引用的检测, 因此KeyA=dataphin参数配置KeyA或者bizdate=$bizdate这种参数配置在Voldemort中是非法的.
伏地魔提供默认的节点参数配置项, 包括:

默认参数值:{yyyyMMdd}为业务日期,即当前日期的前一天T-1,[yyyyMMdd]为执行日期,即当前日期T
默认参数:bizdate,nodeid,taskid,生产业务板块名和生产项目名.其中 nodeid是节点id, taskid是节点生成实例时候的实例id, bizdate默认为当前日期的前一天,即参数默认参数值赋值为{yyyyMMdd},eg:如果今天是2018年1月10日, 则默认bizdate=20180109,生产业务板块名为当前系统所有生产业务板块名,开发环境执行时替换为开发板块名,生产环境执行时替换为生产板块名,eg:如果系统有Dev-Prod模式生成的生产业务板块为是LD_demo, 则默认生产环境里dataphin参数配置{LD_demo}执行代码时更新为LD_demo_dev。 默认参数bizdate的设置及执行效果

可以在节点代码中直接引用这些参数配置项。①支持代码中自定义参数,引用默认参数值,如time=dataphin参数配置[yyyyMMdd],则2019年2月28日调度执行时,执行代码为time=20190228. ②如果用户配置的参数和默认参数有重复冲突, 则用户配置的参数赋值会覆盖默认规则. 例如配置了bizdate=ABC, 则在节点代码中引用bizdate时, 该bizdate的值会被替换为ABC,而不是具体日期参数值yyyymmdd。 默认参数bizdate配置为其他参数值的设置及执行效果

注意:
调度参数配置后,请点击配置界面的【确定】按钮更新配置,然后再提交调度,成功后,对应任务再执行时,会取最新的配置及代码执行。可以根据运行日志,查看配置的参数生效情况

即席查询支持参数识别与设置,但是与调度系统规则有所不同,{bizdate}执行时,系统会识别并默认填入执行日期为默认值(2019年2月28日查询执行时,执行代码为替换为20190228),其他参数不会填入默认值,系统会记住当前界面会话下,用户最新填入的参数值,会话有效期内,执行时默认填入最新参数值。

Dataphin调度系统(Voldemort)时间参数的配置
日调度等:提供基于业务日期和预计执行时间两种方式, 基于业务日期的方式: ${yyyyMMdd}; 基于预计执行时间的方式: dataphin参数配置[HH-1/24], 在业务日期前1分钟:${HHmmss-1/24/60}
特别说明:如果配置的时间参数只精确到日, 那么小写的mm会被识别为月份。当同时有月和分钟存在的时候, 为了避免歧义, 需要将月大写为MM, 将分钟小写为mm,否则会统一识别为分钟,从而导致月份参数出错(比如更新为大于12的数值)
具体的配置可以参考下面的表格
当前日期 基于业务日期(T-1)的配置 实际值 基于预计执行时间(T)的配置 实际值
2018-01-10 ${yyyymmdd} 20180109 $[yyyymmdd] 20180110
2018-01-10 ${yyyyMMdd} 20180109 $[yyyyMMdd] 20180110
2018-01-10 ${yyyymmdd -1} 20180108 $[yyyymmdd -1] 20180109
2018-01-10 ${yyyymmdd -7} 20180102 $[yyyymmdd -7] 20180103
2018-01-10 ${yyyy-mm-dd} 2018-01-09 $[yyyy-mm-dd] 2018-01-10
2018-01-10 ${yyyy-mm} 2018-01 $[yyyy-mm] 2018-01
2018-01-10 ${yyyy-mm -1} 2017-12 $[yyyy-mm -1] 2017-12
2018-01-10 ${yyyy} 2018 $[yyyy] 2018
2018-01-10 ${yyyy+1} 2019 $[yyyy + 1] 2019
2018-01-10 ${yyyy/MM/dd HH:mm:ss} 2018/01/09 00:00:00 $[yyyy/MM/dd HH:mm:ss] 2018/01/10 00:00:00
2018-01-10 ${yyyy/MM/dd HH:mm:ss-1/24} 2018/01/08 23:00:00 $[HH:mm:ss-5/24/60] 23:55:00
特别说明:

周期实例: 系统时间=T(取生成实例的时间) bizdate=T-1(根据系统时间获取默认取值,调度配置参数取值可修改)→影响数据读写的时间分区值 预计执行时间=bizdate+1=T(根据bizdate获取)→影响数据生成时间

补数据实例: 系统时间=T(取生成实例的时间) Bizdate<=T(补数据时传入值)→影响数据读写的时间分区值 预计执行时间=Bizdate+1 →影响数据生成时间 ①如Bizdate+1<=T,取Bizdate+1 ②如bizdate+1>T,特殊处理为T 执行时,会根据调度配置时实例预计执行小时运行(如调度配置设置了定时以及分时段运行等)

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2023年2月23日 上午11:51
下一篇 2023年2月23日 上午11:52

相关推荐