文档首页/ 云数据迁移 CDM/ 最佳实践/ 通过数据开发使用参数传递灵活调度CDM作业
更新时间:2024-08-30 GMT+08:00

通过数据开发使用参数传递灵活调度CDM作业

如果CDM作业接收来自数据开发作业配置的参数,则在数据开发模块可以使用诸如EL表达式传递动态参数来调度CDM作业。

  • 本示例介绍的参数传递功能仅支持CDM 2.8.6版本及以上集群。
  • 本示例以执行迁移Oracle数据到MRS Hive的CDM作业为例,介绍通过数据开发使用参数传递功能灵活调度CDM作业。

前提条件

购买数据集成增量包。

创建CDM迁移作业

  1. 登录控制台,选择实例,单击“进入控制台”,单击相应工作空间后的“数据集成”
  2. 在集群管理页面,单击集群操作列“作业管理”,进入“作业管理”页面,如图1所示。

    图1 集群管理

  3. “连接管理”页签中,单击“新建连接”,分别创建Oracle数据连接和MRS Hive数据连接,详情请参见新建Oracle数据连接新建MRS Hive数据连接
  4. “表/文件迁移”页签中,单击“新建作业”,创建数据迁移作业。
  5. 配置Oracle源端参数、MRS hive目的端参数,并配置传递参数,参数形式为 ${varName},本示例参数为${cur_date},如图2所示。

    图2 配置作业

    不能在CDM迁移作业中配置“作业失败重试”参数,如有需要请在数据开发中的CDM节点配置“失败重试”参数。

创建并执行数据开发作业

  1. DataArts Studio控制台首页,选择对应工作空间的“数据开发”模块,进入数据开发页面。
  2. 在数据开发主界面的左侧导航栏,选择数据开发 > 作业开发
  3. “作业开发”界面中,单击“新建作业”,如图3所示。

    图3 新建作业

  4. 在弹出的“新建作业”页面,配置如所示的参数。单击“确定”,创建作业。

    表1 作业参数

    参数

    说明

    作业名称

    自定义作业的名称,只能包含英文字母、数字、中文、“-”“_”“.”,且长度为1~128个字符。

    作业类型

    选择作业的类型。

    • 批处理作业:按调度计划定期处理批量数据,主要用于实时性要求低的场景。批作业是由一个或多个节点组成的流水线,以流水线作为一个整体被调度。被调度触发后,任务执行一段时间必须结束,即任务不能无限时间持续运行。

      批处理作业可以配置作业级别的调度任务,即以作业为一整体进行调度,具体请参见配置作业调度任务(批处理作业)

    • 实时处理作业:处理实时的连续数据,主要用于实时性要求高的场景。实时作业是由一个或多个节点组成的业务关系,每个节点可单独被配置调度策略,而且节点启动的任务可以永不下线。在实时作业里,带箭头的连线仅代表业务上的关系,而非任务执行流程,更不是数据流。

      实时处理作业可以配置节点级别的调度任务,即每一个节点可以独立调度,具体请参见配置作业调度任务(实时作业)

    创建方式

    选择作业的创建方式。

    • 创建空作业:创建一个空的作业。
    • 基于模板创建:使用数据开发模块提供的模板来创建。

    选择目录

    选择作业所属的目录,默认为根目录。

    责任人

    填写该作业的责任人。

    作业优先级

    选择作业的优先级,提供高、中、低三个等级。

    委托配置

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

    说明:

    作业级委托优先于工作空间级委托。

    日志路径

    选择作业日志的OBS存储路径。日志默认存储在以dlf-log-{Projectid}命名的桶中。

    说明:
    • 若您想自定义存储路径,请参见(可选)修改作业日志存储路径选择您已在OBS服务侧创建的桶。
    • 请确保您已具备该参数所指定的OBS路径的读、写权限,否则系统将无法正常写日志或显示日志。

  5. 在数据开发作业中添加CDM Job节点,并关联已创建的CDM作业,如图4所示。

    图4 关联CDM作业

  6. 在作业参数中配置业务需要的参数,如图5所示。

    图5 配置作业参数

    作业调度执行的过程中,会将该参数值传递给CDM作业,传递的参数“cur_date”可以配置为本示例“2021-11-10 00:00:00”固定参数值,也可以配置为EL表达式,例如:计划运行日期的前一天:#{DateUtil.format(DateUtil.addDays(Job.planTime,-1),"yyyy-MM-dd")},更多EL表达式请参见EL表达式

  7. 保存并提交作业版本,单击“测试运行”,执行数据开发作业。
  8. 数据开发作业执行成功后,单击右上角的“前往监控”,进入“作业监控”页面,查看生成的任务或实例是否符合需求,如图6所示。

    图6 查看运行结果