开源任务调度平台(Apache DolphinScheduler)-功能介绍-任务类型3

开源任务调度平台(Apache DolphinScheduler)-功能介绍-任务类型3

经验文章nimo972025-02-27 13:04:0410A+A-

Shell

Shell 任务类型,用于创建 Shell 类型的任务并执行一系列的 Shell 脚本。worker 执行该任务的时候,会生成一个临时 shell 脚本,并使用与租户同名的 linux 用户执行这个脚本。

使用自定义参数

为了更方便的复用已有的任务,或者面对动态的需求时,我们会使用变量保证脚本的复用性。

1.任务样例

2.注意事项

Shell 任务类型通过解析任务日志是否包含 application_xxx_xxx 的内容来判断是否 Yarn 任务,如果是则会将相应的 application_id 的状态作为当前 Shell 节点的运行状态判断,此时如果操作停止工作流则会 Kill 相应的 application_id。

如果 Shell 任务中需要使用到用户自定义的脚本,可通过资源中心来上传对应的文件然后在 Shell 任务中引用他们,可参考:文件管理。

Stored Procedure

1.任务参数

任务参数

描述

数据源

存储过程的数据源类型支持MySQL、POSTGRESQL、ORACLE,选择对应的数据源

SQL Statement

调用存储过程,如 call test(${in1},${out1});

自定义参数

存储过程的自定义参数类型支持IN、OUT两种,数据类型支持VARCHAR、INTEGER、LONG、FLOAT、DOUBLE、DATE、TIME、TIMESTAMP、BOOLEAN九种数据类型

2.任务样例

3.注意事项

1. 根据选择的数据源,执行存储过程。根据选择的数据源,执行存储过程。

2. 前提:在该数据库里面创建存储过程,如:

CREATE PROCEDURE dolphinscheduler.test(in in1 INT, out out1 INT)

begin

set out1=in1;

END

SQL

SQL任务类型,用于连接数据库并执行相应SQL。

1.任务参数

任务参数

描述

数据源

选择对应的数据源

sql类型

支持查询和非查询两种。

  • 查询:支持 DML select 类型的命令,是有结果集返回的,可以指定邮件通知为表格、附件或表格附件三种模板;
  • 非查询:支持 DDL全部命令 和 DML update、delete、insert 三种类型的命令;

分段执行符号

默认采用;\n作为SQL分隔符,拆分成多段SQL语句执行。Hive的JDBC不支持一次执行多段SQL语句,请不要使用;\n

sql参数

MySQL只有开启 '发送邮件' ,才会显示;

输入参数格式为key1=value1;key2=value2…

sql语句

SQL语句

UDF函数

对于HIVE类型的数据源,可以引用资源中心中创建的UDF函数,其他类型的数据源暂不支持UDF函数。

自定义参数

SQL任务类型,而存储过程是自定义参数顺序,给方法设置值自定义参数类型和数据类型,同存储过程任务类型一样。区别在于SQL任务类型自定义参数会替换sql语句中${变量}。

前置sql

前置sql在sql语句之前执行。

后置sql:

后置sql在sql语句之后执行。

2.任务样例

在hive中创建临时表并写入数据;

该样例向hive中创建表ds。选择SQL类型为非查询,在创建表之前需要确保该表不存在。


注意:sql任务组件的hive应用是基于JDBC去调用,SQL statement 不支持多行执行,请注意不要在语句末尾使用';'。如果要执行多行语句请使用Hive-Cli任务。

3.注意事项

注意SQL类型的选择,如果是INSERT等操作需要选择非查询类型;

为了兼容长会话情况,UDF函数的创建是通过CREATE OR REPLACE语句;

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7