更新时间:2024-10-28 GMT+08:00

开发Pipeline作业

对已新建的作业进行开发和配置。

开发Pipeline模式的批处理作业和实时处理作业,请您参考编排作业节点配置作业基本信息配置作业参数调测并保存作业章节。

前提条件

  • 已创建作业,详情请参见新建作业
  • 当前用户已锁定该作业,否则需要通过“抢锁”锁定作业后才能继续开发作业。新建或导入作业后默认被当前用户锁定,详情参见编辑锁定功能

编排作业节点

编排作业节点适用于Pipeline模式的批处理作业和实时处理作业。

  1. 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。
  2. DataArts Studio控制台首页,选择对应工作空间的“数据开发”模块,进入数据开发页面。
  3. 在数据开发主界面的左侧导航栏,选择数据开发 > 作业开发
  4. 在作业目录中,双击Pipeline模式批处理作业或实时处理作业的名称,进入作业开发页面。
  5. 拖动所需的节点至画布,鼠标移动到节点图标上,选中连线图标并拖动,连接到下一个节点上。

    每个作业建议最多包含200个节点

    图1 编排作业
  6. 配置节点功能。右键单击画布中的节点图标,根据实际需要选择如表1所示的功能。
    表1 右键节点功能

    功能

    说明

    配置

    进入该节点“节点属性”页面。

    删除

    支持删除一个节点或同时删除多个节点。

    • 单节点删除:右键单击画布中的节点图标,选择删除或按快捷键Delete
    • 多节点删除:按下键盘中的Ctrl,单击画布中需要删除的节点图标,在当前作业画布空白处单击右键,选择删除或按快捷键Delete

    复制

    支持复制一个或多个节点至任意作业中:

    • 单节点复制:右键单击画布中的节点图标,选择复制或按快捷键Ctrl+C,在作业画布空白处粘贴节点或按快捷键Ctrl+V,复制后的节点携带原节点的配置信息。
    • 多节点复制:按下键盘中的Ctrl,单击画布中需要复制的节点图标,在当前作业画布空白处单击右键选择复制或按快捷键Ctrl+C,在目标作业画布空白处粘贴或按快捷键Ctrl+V。复制后的节点携带原节点的配置信息,但不包含节点间的连接关系。

    测试运行

    测试运行该节点

    说明:

    用户可以查看该作业节点的测试运行日志,单击“查看日志”可以进入查看日志界面查看日志的详细信息记录。

    从当前节点测试运行

    仅在批作业下显示该选项。选择“从当前节点测试运行”,则测试运行当前节点以及后续节点。

    添加/删除连线

    可以选择为两个不同的节点添加或删除连线,

    编辑CDM作业

    仅CDM Job节点显示该选项。选择CDM集群和作业后,可以跳转到CDM作业编辑页面,进行作业修改。

    查看CDM作业日志

    仅CDM Job节点显示该选项。当CDM作业运行后,右键选中CDM Job节点,单击“查看CDM日志”,可以跳转到作业监控页面,查看作业日志打印的详细信息,帮助开发者定界定位作业运行异常原因。

    编辑脚本

    仅关联了脚本的节点显示该选项。跳转到脚本编辑页面,对关联的脚本进行编辑。

    新建便签

    为该节点添加便签,每个节点可以有多个便签。

    在作业节点上新建便签、显示便签和隐藏便签只对该节点有效,在画布上方新建便签、显示便签和隐藏便签对整个作业有效。

  7. (可选)配置连线功能。右键单击画布中的节点间连线,显示“删除”和“设置条件”功能,您可以根据实际需要进行选择。
    • 删除:可以删除节点间的连线。
    • 设置条件:在弹出的窗口中,您可以通过EL表达式语法填写三元表达式。当三元表达式结果为true的时候,才会执行连线后面的节点,否则后续节点将被跳过。

      如下图所示,是一个典型的三元表达式。当“DQM”节点的运行结果为true时,才会执行连线后的节点。当运行结果为false时,如果失败策略为“跳过所有节点”,则该连线后面的节点A以及A后的所有节点均会被跳过。

      #{(Job.getNodeStatus("DQM")) == "success" ? "true" : "false"}
      图2 设置条件

      关于EL表达式的语法,您可以查看EL表达式参考;关于IF条件的使用,您可以查看IF条件判断教程

  8. 配置节点属性。单击画布中的节点,在右侧显示“节点属性”页签,默认展开此配置页面,请参见节点概述配置具体节点的属性。

配置作业基本信息

为作业配置责任人、优先级信息后,用户可根据责任人、优先级来检索相应的作业。操作方法如下:

单击画布右侧“作业基本信息”页签,展开配置页面,配置如表2所示的参数。

表2 作业基本信息

参数

说明

责任人

自动匹配创建作业时配置的作业责任人,此处支持修改。

作业委托

当“作业调度身份是否可配置”设置为“是”,该参数可见。

配置委托后,作业执行过程中,以委托的身份与其他服务交互。

作业优先级

自动匹配创建作业时配置的作业优先级,此处支持修改。

实例超时时间

配置作业实例的超时时间,设置为0或不配置时,该配置项不生效。如果您为作业设置了异常通知,当作业实例执行时间超过超时时间,将触发异常通知,发送消息给用户,作业不会中断,继续运行。

实例超时是否忽略等待时间

配置实例超时是否忽略等待时间。

如果勾选上,表示实例运行时等待时间不会被计入超时时间,可前往默认项设置修改此策略。

如果未选上,表示实例运行时等待时间会被计入超时时间。

自定义字段

配置自定义字段的参数名称和参数值。

作业标签

配置作业的标签,用以分类管理作业。

单击“新增”,可给作业重新添加一个标签。也可选择管理作业标签中已配置的标签。

配置作业参数

作业参数为全局参数,可用于作业中的任意节点。操作方法如下:

Pipeline模式的批处理作业和实时处理作业,单击画布的空白处,在右侧显示“作业参数配置”页签,单击此页签,展开配置页面,配置如表3所示的参数。

表3 作业参数配置

功能

说明

变量

新增

单击“新增”,在文本框中填写作业参数的名称和参数值。

  • 参数名称

    名称只能包含字符:英文字母、数字、中划线和下划线。

  • 参数值
    • 字符串类的参数直接填写字符串,例如:str1。
    • 数值类的参数直接填写数值或运算表达式。

参数配置完成后,在作业中的引用格式为${参数名称}。

说明:
  • 如果作业中有两个节点,比如第一个Rest Client节点返回了body,第二个节点使用返回的data。如果这个data的长度超过1000000个字符,内容就会被截断。在配置作业参数时,作业的参数值的结果最大不超过1000000个字符。

编辑参数表达式

在参数值文本框后方,单击,编辑参数表达式,更多表达式请参见表达式概述

修改

在参数名和参数值的文本框中直接修改。

掩码显示

在参数值为密钥等情况下,从安全角度,请单击将参数值掩码显示。

删除

在参数值文本框后方,单击,删除作业参数。

常量

新增

单击“新增”,在文本框中填写作业常量的名称和参数值。

  • 参数名称

    名称只能包含字符:英文字母、数字、中划线和下划线。

  • 参数值
    • 字符串类的参数直接填写字符串,例如:str1。
    • 数值类的参数直接填写数值或运算表达式。

参数配置完成后,在作业中的引用格式为${参数名称}。

编辑参数表达式

在参数值文本框后方,单击,编辑参数表达式,更多表达式请参见表达式概述

修改

在参数名和参数值的文本框中直接修改,修改完成后,请保存。

删除

在参数值文本框后方,单击,删除作业常量。

工作空间环境变量

查看工作空间已配置的变量和常量。

单击“作业参数预览”页签,展开预览页面,配置如表4所示的参数。

MRS Flink Job、DLI Flink Job、DLI SQL、DWS SQL、MRS HetuEngine、MRS ClickHouse SQL、MRS Hive SQL、MRS Impala SQL、MRS Presto SQL、MRS Spark SQL、RDS SQL、DORIS SQL的算子脚本参数支持参数预览。

表4 作业参数预览

功能

说明

当前时间

仅单次调度才显示。系统默认为当前时间。

事件触发时间

仅事件驱动调度才显示。系统默认为事件触发时间。

周期调度

仅周期调度才显示。系统默认为调度周期。

具体时间

仅周期调度才显示。周期调度配置的具体运行时间。

起始日期

仅周期调度才显示。周期调度的生效时间。

后N个实例

作业运行调度的实例个数。

  • 单次调度场景默认为1。
  • 事件驱动调度场景默认为1。
  • 周期调度场景

    当实例数大于10时,系统最多展示10个日期实例,系统会自动提示“当前参数预览最多支持查看10个实例”。

在作业参数预览中,如果作业参数配置存在语法异常情况系统会给出提示信息。

如果参数配置了依赖作业实际运行时产生的数据,参数预览功能中无法模拟此类数据,则该数据不展示。

调测并保存作业

作业编排和配置完成后,请执行以下操作:

批处理作业

  1. 单击画布上方的测试运行按钮,会弹出测试参数配置的弹框,自动显示作业的变量参数,单击“确定”,测试作业。如果测试未通过,请您查看作业节点的运行日志,进行定位处理。

    • 用户可以查看该作业的测试运行日志,单击“查看日志”可以进入查看日志界面查看日志的详细信息记录。
    • 作业未提交版本之前,进行手动测试运行,作业监控里面的作业运行实例版本显示是0。
    • 进行手动测试运行时,作业测试运行日志查看有权限管控,比如,用户A进行作业测试运行后,可以在“实例监控”页面查看测试运行日志,不允许用户B查看该测试运行日志。

  2. 测试通过后,单击画布上方的“保存”,保存作业的配置信息。

    保存后,在右侧的版本里面,会自动生成一个保存版本,支持版本回滚。保存版本时,一分钟内多次保存只记录一次版本。对于中间数据比较重要时,可以通过“新增版本”按钮手动增加保存版本。

实时处理作业

  1. 单击画布上方的“保存”,保存作业的配置信息。

    保存后,在右侧的版本里面,会自动生成一个保存版本,支持版本回滚。保存版本时,一分钟内多次保存只记录一次版本。对于中间数据比较重要时,可以通过“新增版本”按钮手动增加保存版本。

  2. 提交作业版本后,单击画布上方的“启动”,运行作业。运行完以后,前往实时作业监控查看作业运行结果。