DataWorks 调度参数设置 | 学习笔记

简介: 快速学习 DataWorks 调度参数设置

开发者学堂课程【SaaS  模式云数据仓库系列课程 —— 2021数仓必修课DataWorks调度参数设置】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/55/detail/1197


DataWorks  调度参数设置


内容简介:

一、调度参数分类

二、使用示例

三、注意事项

四、常见问题场景

五、实操演练



一、调度参数分类

image.png

(一)系统参数配置

1.系统参数取值与格式区别

${bdp.system.bizdate} :  取值:业务时间:取值格式: yyymmdd,取值与自定义参数${yymmdd}一致。

${bdp.system,cyctime} :  取值:定时时间;取值格式: yyymmddhh24miss,取值与自定义参数 $yyymmddhh24miss]  一致。

系统内置变量可以在代码中直接使用,无需赋值

2.自定义参数${…}

image.png

3.自定义参数$[…]

image.png

4.系统内置参数

image.png

5.使用示例

"1.使用系统内置变量,无需在右侧调度配置界面给变量赋值,在代码中直接引用即可"。

select '${bdp. system. cyctime}';

"2.使用自定义参故,需要在右侧参效界面以“变量名=自定义参数”的方式给变量赋值。在代码中引用变量名""

"2.1使用系统内置参效bizdate";

select "${var1}";

2.2使用大括号{}自定义参数";

select "${var2}";

"2.3使用中括号[]自定义参数";

select '${var3}' '${var4}';


二、使用示例

(一)ODPS SQL  节点使用示例

1.使用系统变量:系统内置变量可以在代码中直接使用,无需赋值

2.使用自定义参数:

左侧代码区引用变量,变量名可自定义,右侧参数处赋值,可赋值格式参考官网文档。

常量参数赋值:  var="abc" key2=1234。

变量参数赋值:  varl= $bizdate——系统内置参数取业务时间。

var2= ${yyyymmdd}——大括号{…}取业务时间。

var3=[ yyyymmddhh24.miss]——中括号[…]取定时时间。

(二)数据集成节点使用示例

1.使用系统变量:系统内置变量可以在代码中直接使用,无需赋值。

2.使用自定义参数

左侧代码区引用变量,变量名可自定义

变量名可以自定义。

注意  bizdate  使用时, 一定要在右侧参数处赋值

右侧参数处赋值,可赋值格式参考官网文档

常量参数赋值: "var=abc' 1234。

变量参数赋值:

varl=$bizdate——系统内置参数取业务时间。

var2=${yyymmdd}——大括号${…}取业务时间。

var=$[yyymmddhh24miss]——中括号$[…]取定时时间。

(三)SHELL  节点使用示例

1.使用系统变量:系统内置变量可以在代码中直接使用,无需赋值。

2.使用自定义参数

左侧代码区引用变量,变量名可自定义

Shell  节点中的交量不允许自定义命名,只能以  $1,$2.$3命名;

注意:参数到达第10个后,请使用${10}的方式声明变,

右侧参数处赋值,可赋值格式参考官网文档

常量参数赋值: "abc''1234。

变量参数赋值:$bizdate——系统内置参数取业务时间。

${yyymmdd}——大括号${…}取业务时间。

$[yyymmddhh24miss]——中括号$[…]取定时时间。

(四)PYODPS   节点使用示例

1.使用系统变量:系统内置变量可以在代码中直接使用,无需赋值

2.使用自定义参数

左侧代码区引用变量,变量名可自定义,

为避免侵入代码,可在全局变量中增加个名为  args  的字典对象,调度参数可以在此获取。

右侧参数处赋值,可赋值格式参考官网文档

常量参数赋值:  "var=abc' 1234。

变量参数赋值:

varl=$bizdate——系统内置参数取业务时间。

var2=${yyymmdd}——大括号${…}取业务时间。

var-=$[yyymmddhh24miss]——中括号$[…]取定时时间。


三、注意事项

(一)三种运行赋值逻辑说明

选择运行,只会在第一次弹框时给当前的变量赋值常量。如果修改了代码中变量名是不会继续弹框给新变量赋值。

选择高级运行,每次都会弹框给当前变量赋值。

如果您变更了代码中的变量,或者需要重新为变量赋值,请务必使用高级运行。

(二)两类运行赋值区别

选择运行或者高级运行,请在弹框中给代码中的变量赋值常量。

开发环境冒烟测试:根据业务时间替换调度参数;若修改了调度参数赋值,请务必先保存提交,再使用开发环境冒烟测试:

如果需要测试调度参数替换情况,请使用开发环境冒烟测试。

如果您变更了代码中的变量,或者需要重新为变量赋值,请务必高级运行。

(三)赋值注意事项

调度参数赋值中不支持空格

time①=②$yyymmdd③hh24:miss]

time1=$[yyymmdd]④time2=Shh24:mi:ss]

①②③④为空格所在位置

${...}取业务时间,最小粒度天

$[…]取定时时间,可精确到时分秒

注意

调度参数的等号(= )两端不可以加空格,即示例中的①②处。

调度参数赋值中不支持空格,即示例中的③处。

两个调度参数间用个空格分隔,即示例中的④处。



四、常见问题场景

(一)场景一:如何处理表的分区格式中需要空格的情况

解决方案:

参数赋值区:使用两个自定义变量参数分别取年月日,时分秒

datetime= $[yyyy-mm-dd] hour= [hh24:mi:ss]。

代码调用区:在代码中用空格拼接两个参数。

pt=${datetime} ${hour}。

(二)场景二:跨天调度参数替换

如何处理0点运行的实例,计算结果变为当天的23点,实际应当是前一天的23点的情况?

问题描述:

在代码中表的分区为  pt= ${datetime} ${hour},希望执行时获取上个小时的数据。使用两个自定义变量参数  datetime=$[yyymmdd]、hour=S[hh24-1/24]  可以满足需求。但是0点运行的实例,计算结果会变成当天的23点,实际应当是前一天的23点。

解决方法:

您可以修改参数的计算公式,修改  datetime为$[yyymmdd-1/24],hour   的计算公式仍然是  $[hh24-1/24]。计算结果如下,即可满足需求:

如果一个实例的定时时间是2015-10-27 00:00:00,减1小时便是昨天,则$[yyymmdd-1/24]  的值是20151026、 $[hh24-1/24]的值是23。

如果一个实例的定时时间为2015-10-27 01:00:00的实例,减1小时还是今天,则$[yyymmdd-1/24]  的值是20151027、 $[hh24-1/24]的值是00。

五、实操演练

(一)调度参数分类相关代码

1

2

3  "1.使用系统内置变量,无需在右侧调度配置界面给变量赋值,在代码中直接引用即可"。

4

5   select '${bdp. system. bizdate}';

6

7   select '${bdp. system. cyctime}'

8

9

10   --"2.使用自定义参故,需要在右侧参效界面以“变量名=自定义参数”的方式给变量赋值。在代码中引用变量名""

11

12   -- "2.1使用系统内置参效bizdate";

13

14  --select "${var1}"

15

16  --2.2使用大括号{}自定义参数";

17

18  --select "${var2}";

19

20  --"2.3使用中括号[]自定义参数";

21

22   --select '${var3}' '${var4}';

(二)自定义参数测试_大括号

1  --"2.2使用大括号{}自定义参数";

2

3  --格式为:yyymmdd

4  select "${bizdate}";

5

6  select "${var1}";

7

8  select '${var3}' '${var5}';

(三)自定义参数测试_中括号相关代码

1  --"2.2使用中括号[]自定义参数";

2

3  --cyctime取值格式为:yyymmddhh24

4  select "${cyctime}";

5

6  select ‘${var1}’‘${var3}’

7

8  select '${var4}' '${var5}';

(四)场景_赋值中带空格相关代码

1

2  --场景:如何处理表的分区格式中需要空格的情况

3

4  --select '${var}';

5  --var=$ lyyyymnddhh24miss]

6

7  select '${var1}' '${var2}';

8  --var1=$ yyy- m- dd] var2=$ [hh24:mi:ss]

(五)场景_赋值中带空格相关代码

1

2  --场景:如何处理0点运行的实例,计算结果变为当天的23点,实际应当是前一天的23点的情况?

3

4  select”pt= ${datetime} ${hour}”

(六)运行与高级运行的相关代码

1  --odps sql

2  --********************************************************************--

3   -- author : dataworks-demo2

4  --create time :2020-10-18  20:02:26

5  --*************************************************--

6   select '${varp }'

相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
相关文章
|
SQL 分布式计算 DataWorks
如何让DataWorks调度依赖一个非DataWorks的任务结点,如数据上传任务?
如何让DataWorks调度依赖一个非DataWorks的任务结点,如数据上传任务?创建一个表的空分区,然后通过DataWorks去检查这个分区。
273 7
|
SQL DataWorks 安全
DataWorks产品使用合集之如何实现分钟级调度
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
分布式计算 DataWorks API
DataWorks产品使用合集之如何设置把结果传入变量
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
DataWorks 监控 安全
DataWorks产品使用合集之怎么设置实时同步任务的速率和并发
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
分布式计算 DataWorks 监控
DataWorks产品使用合集之设置任务监控的步骤是什么
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
分布式计算 DataWorks NoSQL
DataWorks产品使用合集之怎么设置在归并节点传递参数
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
数据采集 DataWorks 监控
DataWorks产品使用合集之怎么使用工作空间参数
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何设置时区
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
分布式计算 DataWorks 安全
DataWorks产品使用合集之调度任务时怎么指定时间函数格式
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
DataWorks 监控 数据建模
DataWorks产品体验评测
DataWorks产品体验评测