调度配置用于配置节点在调度过程中的调度规则及依赖关系。本文为您介绍如何配置离线计算任务的调度参数。

前提条件

完成创建离线计算任务:

背景信息

  • 系统仅支持周期性节点的代码任务进行调度配置。
  • 依赖关系是两个或多个节点之间的语义连接关系,同时上游节点的状态将影响其他下游节点的运行状态。
  • 配置了依赖关系的节点调度规则为:首先,上游节点运行完成后,才能调度下游节点。其次,根据节点设定的调度时间判断是否执行调度。
  • 您在设定的调度时间之前提交的调度配置,会在设定的调度时间之后生效。而在设定的调度时间之后配置的依赖关系,只能间隔一天再生成实例。
  • 调度配置的权限限制,详情请参见数据引入权限列表

操作步骤

  1. 登录Dataphin控制台
  2. 在Dataphin控制台页面,选择工作区地域后,单击进入Dataphin>>
    您可以通过以下方式,快速进入数据开发模块:
    • 单击快速开始相关工作区域的数据研发
    • 单击快速进入研发项目区域的DevBasic项目,选择开发数据的项目空间。
    说明
    • 如果您通过快速开始相关工作进入数据开发模块,则跳过步骤3。
    • 如果您通过快速进入研发项目进入数据开发模块,则跳过步骤3和4。
  3. 在Dataphin首页,单击顶部菜单栏的研发
  4. 可选:在数据开发页面,单击项目名称后的test图标,单击DevBasic页签,选择数据开发的项目空间(DevBasic项目)。
    如果您当前访问的是DevBasic项目,且项目空间为您的数据开发空间,则不需要选择项目空间。
  5. 进入离线计算任务的调度配置页面。
    1. 在数据开发页面,单击数据处理
      如果进入数据开发页面后,系统默认进入数据处理页签,则无需再次单击数据处理页签。
    2. 在左侧导航栏中,单击ceg离线计算任务图标。
    3. 离线计算任务页面,查询需要配置调度参数的离线计算任务。
      您可以在搜索框中,输入离线计算任务名称关键字,快速搜索离线计算任务。
    4. 单击需要配置调度参数的离线计算任务。
    5. 可选:解锁离线计算任务。
      • 如果需要移动的离线计算任务已被您自己锁定,则无需解锁。
      • 如果需要移动的离线计算任务已被他人锁定,则单击代码编写页面右上方的图标。

        图标变更为gagahga图标时,解锁成功。

    6. 在该离线计算任务的代码编写页面,单击调度配置
  6. 调度配置页面,配置调度参数。
    1. 配置基本信息区域参数。
      系统自动生成的名称节点id节点类型负责人,不支持修改。fagag
      参数 描述
      描述 填写对调度配置的简单描述。
      优先级 您可以选择节点调度任务执行的优先级优先级包括:
      • 最低优先级
      • 低优先级
      • 中等优先级
      • 高优先级
      • 最高优先级
      参数配置 节点参数配置是对代码中所用参数的具体赋值。您可以单击节点参数配置说明,查看Dataphin调度系统支持配置的时间参数及配置原则。
    2. 配置调度配置区域参数。
      fagaga
      参数 描述
      时间属性 选择时间属性时间属性包括:
      • 正常调度:按照调度周期的时间配置调度,并正常执行,通常任务默认选中该项。
      • 空跑调度:按照调度周期的时间配置调度,但都是空跑执行,即一调度到该任务便直接返回成功,没有真正的执行任务。
      • 暂停调度:暂停调度后,会按照下面的调度周期时间配置调度,但是一旦调度到该任务会直接返回失败,不会执行。通常用于某个任务暂时不用执行,但后面还会继续使用的场景。
      调度周期 调度周期可选择小时分钟
      • 调度,即调度任务每天自动运行一次。新建周期任务时,系统默认的时间周期为每天0点运行一次。您可以根据需要,单击图标,指定运行的时间点。
      • 调度,即调度任务每周的特定几天,在特定时间点自动运行一次。您可以根据需要,单击图标,指定运行的时间点。

        如果您没有指定日期,为保证下游实例正常运行,系统会生成实例后直接设置为运行成功,而不会真正执行任何逻辑,也不会占用资源。

      • 调度,即调度任务在每月的特定几天,在特定时间点自动运行一次。您可以根据需要,单击图标,指定运行的时间点。

        如果在没有被指定的日期时,为保证下游实例正常运行,系统会每天生成实例后直接设置为运行成功,而不会真正执行任何逻辑,也不会占用资源。

      • 小时调度,即每天指定的时间段内,调度任务按间隔时间数的时间间隔运行一次。或选择指定的时间点,调度系统会自动为任务生成实例并运行。您可以根据业务需求选中时间段时间点
        • 如果您选中了时间段,您可以单击开始结束后的图标,指定运行的开始和结束时间。同时您可以单击间隔后的test图标,在下拉列表中选择间隔时间。
        • 如果您选中了时间点,单击下拉列表框,在下拉列表中选择时间点。
        例如,每天00:00~23:59的时间段内,每隔1小时会自动调度一次,因此调度系统会自动为任务生成实例并运行。gaaga
      • 分钟调度,即每天指定的时间段内,调度任务按间隔时间数的时间间隔运行一次。 您可以单击开始结束后的图标,指定运行的开始和结束时间。同时您可以单击间隔后的test图标,在下拉列表中选择间隔时间。
      依赖上周期 根据业务场景分析是否需要选中依赖上周期。如果您选中了,则需要选择依赖上个调度周期的节点:
      • 如果您选择了当前,则表示依赖当前节点的上个调度周期。
      • 如果您选择了自定义,则需在输入框中输入依赖上周期节点的名称关键字进行搜索节点。
    3. 配置依赖关系区域参数。
      faga
      参数 描述
      开始解析 当节点的任务类型为SQL时,您可以单击开始解析,系统会解析代码中的表,并查找到与该表名相同的输出名称。输出名称所在的节点作为当前节点的上游依赖。
      如果代码中引用项目变量或不指定项目,则系统默认解析为生产项目名,以保证生成调度的稳定性。例如,开发项目名称为onedata_dev
      • 如果代码里指定select * from s_order,则调度解析依赖为onedata.s_order
      • 如果代码里指定select * from ${onedata}.s_order,则调度解析依赖为onedata.s_order
      • 如果代码里指定select * from onedata.s_order,则调度解析依赖为onedata.s_order
      • 如果代码里指定select * from onedata_dev.s_order,则调度解析依赖为onedata_dev.s_order
      上游依赖 通过执行如下操作,添加该节点任务调度时依赖的上游节点:
      1. 单击新建上游依赖
      2. 新建上游依赖对话框中,您可以通过以下两种方式搜索依赖节点:
        • 输入所依赖节点的输出名称的关键字进行搜索节点。
        • 输入virtual搜索虚拟节点(每个租户或企业在初始化时都会有一个根节点)。
        说明 节点的输出名称是全局唯一的,且不区分大小写。
      3. 单击确定新增
      同时您还可以单击操作列下的fagaga图标,删除已添加的依赖节点。
      当前节点 通过执行如下操作,设置当前节点的输出名称,根据需要您可以设置多个输出名称,供其他节点依赖使用:
      1. 单击新增
      2. 新增当前节点输出对话框中,填写输出名称。输出名称的命名规则请尽量统一,一般命名规则为生成项目名.表名且不区分大小写,以标识本节点产出的表,同时其他节点更好地选择调度依赖关系。

        例如,开发项目名称为onedata_dev,建议将输出名称设置为onedata.s_order。如果您将输出名称设置为onedata_dev.s_order,则仅限代码select * from onedata_dev.s_order能解析出上游依赖节点。

      3. 单击确定新增
      同时您还可以对当前节点已添加的输出名称执行如下操作:
      • 单击操作列下的fagaga图标,删除已添加的输出名称。
      • 如果该节点已提交且被任务所依赖(任务已提交),则单击操作列下的图标,查看下游节点。
  7. 单击确定,完成代码任务的调度配置。
  8. 保存、提交和发布离线计算任务。
    1. 在离线计算任务的配置页面,单击fagag图标,保存离线计算任务。
    2. 在离线计算任务的配置页面,单击fagag图标,提交离线计算任务。
    3. 提交备注对话框,填写备注信息。
    4. 单击确定并提交
    5. 可选:发布离线计算任务至生产环境。
      • 如果您的开发模式是Dev-Prod模式,则需要发布离线计算任务,详情请参见管理发布任务
      • 如果您的开发模式是Basic模式,则不需要发布离线计算任务,提交后的离线计算任务就可以参与生产环境的调度。