DMS调度Spark

使用常规的Spark开发编辑器或命令行等工具进行Spark作业开发时,仅支持单次调度Spark作业,且作业间无依赖关系和执行顺序。为解决以上痛点,您可以通过数据管理DMS的任务编排功能,周期性、有顺序地调度Spark作业。本文介绍如何使用DMS调度AnalyticDB MySQL Spark作业。

应用场景

  • 机器学习

  • 图像处理

  • 推荐系统

  • 报表分析

  • 数据挖掘

前提条件

  • 集群的产品系列为企业版、基础版或湖仓版

  • 已在AnalyticDB for MySQL集群中创建Job型资源组。具体操作,请参见新建资源组

  • 集群所在地域与AnalyticDB for MySQLSpark节点支持的任一地域一致,目前仅支持华北3(张家口)、华东1(杭州)、华东2(上海)。

  • 若RAM用户(子账号)使用AnalyticDB for MySQLSpark节点,则需要阿里云账号(主账号)授予adb:SubmitSparkAppadb:DescribeDBClustersadb:DescribeDBResourceGroup权限。授权的具体操作,请参见为RAM用户授权

操作步骤

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择集成与开发(DTS) > 数据开发 > 任务编排

    说明

    若您使用的是极简模式的控制台,请单击左上角的总功能,选择全部功能 > 集成与开发(DTS) > 数据开发 > 任务编排,进入任务编排页面。

  3. 单击目标任务流名称,进入任务流详情页面。
    说明 如果您需要新增任务流,请参见新增任务流
  4. 在画布左侧的任务类型列表中,拖拽ADB Spark节点到右侧画布的空白区域。

  5. 单击节点配置页右侧的变量设置页签,配置变量。

    说明

    您可以单击变量设置区域右上角的shuoming,查看配置变量的提示信息。

    • 单击节点变量页签,配置节点变量。配置方法,请参见配置时间变量

    • 单击任务流常量页签,配置任务流常量。任务流常量为固定值,在所有节点中都可使用,在SQL中的使用格式为${name}

    • 单击任务流变量页签,配置任务流变量。配置方法,请参见配置时间变量

    • 单击输入变量页签,查看输入变量。

  6. 双击ADB Spark节点,配置如下信息:

    类别

    配置项

    说明

    基础配置

    地域

    选择目标AnalyticDB for MySQL实例所在地域。目前仅支持华北3(张家口)、华东1(杭州)、华东2(上海)。

    ADB实例

    选择已有实例。若未创建实例,请单击去创建。创建的具体操作,请参见创建湖仓版集群

    ADB资源组

    选择目标资源组,若下拉框中未出现已创建的资源组,请单击刷新。创建资源组的具体操作,请参见新建资源组

    任务类型

    根据作业配置内容选择BatchSQL任务类型。任务类型说明如下:

    • Batch:选择Batch后,可在作业配置区域输入描述Spark作业的JSON。

    • SQL:选择SQL后,可在作业配置区域输入SQL语句。

    任务名称

    任务在Spark中的名称。若未定义,则默认定义为任务节点的名称(ADB Spark节点)。

    作业配置

    -

    根据您选择的任务类型,在该区域编写JSON或SQL语句。配置Batch和SQL类型作业的具体操作,请参见Spark离线应用开发Spark SQL应用开发

  7. 完成上述配置后,单击保存

  8. 单击试运行指定时间运行指定时间范围运行

    • 如果执行日志的最后一行出现status SUCCEEDED,表明任务运行成功。

    • 如果执行日志的最后一行出现status FAILED,表明任务运行失败。

      说明

      如果运行失败,在执行日志中查看执行失败的节点和原因,修改配置后重新尝试。

  9. 配置调度周期。

    1. 在任务类型列表页的下方,单击任务流信息页签。

    2. 调度配置区域,打开开启调度开关,配置调度。具体配置,请参见任务编排概述

  10. 可选:发布或下线任务流。具体操作,请参见发布或下线任务流

其他操作

您可在任务执行完成后,单击页面右上方的前往运维,进入运维中心查看任务流的详细信息(包含创建时间创建人责任人是否发布等信息)以及任务的执行状态(成功、失败、执行中)、起止时间,同时您也可以在该页面进行暂停、重跑等运维操作。

相关文档