最近更新时间:2023.08.28 10:48:29
首次发布时间:2021.08.13 15:07:14
任务调度是指系统为了自动完成特定任务,在约定的特定时刻去执行任务的过程,有助于提高效率。 调度设置分为基本信息、调度属性、依赖关系和输入输出参数等部分。
登录 DataLeap租户控制台 。
在概览界面,显示加入的项目中,单击数据开发进入对应项目。
在任务开发界面,左侧导航栏中,双击打开某个离线任务,进入节点的编辑界面。
单击右侧导航栏的调度设置按钮,进入配置。
参数 | 描述 |
---|---|
任务名称 | 显示创建任务时输入的任务名称,调度设置中不支持修改。您可以在左侧任务目录树结构中,在任务名称的右侧更多入口中,单击重命名进行修改。 |
任务类型 | 不同引擎类型支持的任务类型不同。 |
引擎类型 | E-MapReduce(EMR) 和湖仓一体分析服务 (LAS)两种引擎类型 |
关联实例 | 当引擎类型为 EMR 时,同步显示项目关联的实例; |
任务描述 | 非必填,可对任务进行详细描述,方便后续查看和管理。 |
责任人 |
|
调度资源组 | DataLeap平台提供的资源组,用于生成定时调度实例,目前默认提供公共调度资源组。 |
LAS队列 | 当作业类型为 LAS引擎开发作业时显示,您可基于创建项目时绑定的引擎计算队列来下拉选择。 注意 子账号选择LAS队列时,需要有队列使用权限,需主账号前往 LAS控制台-权限管理 授予子账号队列权限。 |
标签 | 您可以自定义标签,用于标识某一类任务,以便快速搜索过滤,操作即时生效,无需重新上线任务。
|
参数 | 描述 |
---|---|
调度状态 | 分为开启和关闭,默认开启。 |
调度类型 |
|
调度生效日期 | 当调度类型选择周期调度时,可对调度的生效时间范围进行设置。 |
执行频率&执行时间 |
|
分时调度 | 当调度类型选择周期调度,执行频率选择分钟级或者小时级时,出现分时调度属性。 启用分时调度,设定运行时间不在分时调度时段内的实例,将在下一个时段开始时才提交调度,以缓解非指定时段的执行压力。 调度时段设置,举例: 1. 分时调度区间为6:00~22:00,若有一个设定运行时间为23:00的实例,将延迟到第二天6:00才提交调度执行。 2. 分时调度区间为22:00~6:00(当日晚上10点~次日早上6点),若有一个设定运行时间为7:00的实例,将延迟到当天22:00提交调度执行。 |
最早回溯时间 | 可重跑的历史数据的最早时间。设定后,最早回溯时间之前的实例将无法生成。 |
空跑设置 | 当某任务逻辑暂时无需运行,但又不想改动整个数据链路关系时,可将其设置为空跑,此时该任务会直接置为成功。 |
重试触发条件 | 系统提供失败和单次运行超时两种重试触发条件:
|
失败重跑次数 | 任务失败后重试的次数。若重试运行时间超过48小时,系统将自动结束该实例。 |
重跑时间间隔 | 任务失败后重试的时间间隔。 |
最大并发控制 | 是指单任务最大并发,即任务可同时运行的最大实例个数。实际可执行的实例个数,除受该任务最大并发限制之外,还受系统总并发实例数影响。 |
数据回溯建议 | 标记该任务是否可进行数据回溯,包括允许回溯和谨慎回溯。若选择谨慎回溯,进行回溯/重跑操作时,系统将出现二次确认提示。 |
通过建立任务依赖,完成数据依赖,构建数据血缘。一般情况下,当任务执行成功时,数据表分区数据即已就绪。 通过依赖推荐或手动添加的方式,可以设置任务上游依赖关系。如果该任务依赖自身上一周期的产出,则可使用任务自依赖设置。
依赖推荐
LAS SQL、EMR HSQL 任务,根据 SQL 逻辑,支持自动推荐上游依赖关系。
单击依赖推荐按钮:
若需依赖的引用表名,已有对应的产出任务,您可直接在弹窗返回的推荐任务列表中,选择任务需要依赖的任务。
LAS SQL 任务,若需依赖的引用表名,未找到对应产出任务,则您需检查 SQL 代码逻辑是否符合要求,并完成手动添加依赖或者单击创建 Sensor 任务按钮,前往创建相应的 Sensor 产出任务,完成依赖关系配置。Sensor 任务指导详见 LAS Hive-Sensor/LAS HDFS-Sensor。
说明
SQL 逻辑中依赖的表需为分区表,方可展现依赖推荐中 Sensor 任务创建指引。
单击依赖预览按钮,可以查看按照当前的依赖设置,上下游任务最新业务日期的实例依赖关系,方便及时验证偏移设置是否符合预期。
单击依赖设置,设置依赖偏移。在依赖不同调度频率的任务或者调度日期出现偏移时,需要设置偏移量:
上下游任务频率不同,依赖实现机制也不相同,具体分为三大类:
上下游频率类型 | 依赖实现机制 | 实际案例 | 偏移设置示例(区间/集合 偏移量 偏移单位) |
---|---|---|---|
同频依赖 | 当前任务实例的业务时间+偏移量*偏移单位=上游任务实例的业务时间。 | 天任务依赖天任务,依赖上游任务同一天运行的实例 | 集合 0 天 |
大频率依赖小频率 | 当前任务实例的业务时间+偏移量*偏移单位+业务时间补偿值=上游任务实例的业务时间; | 天任务依赖小时任务,依赖上游任务昨天运行的24个小时实例 | 区间 -23,0 小时 |
小频率依赖大频率 | 依赖“(当前任务实例的业务时间 - 偏移量*偏移单位)~ 当前任务实例的业务时间 ” 时间范围内,上游任务运行的全部实例; | 小时任务依赖天任务,依赖上游最近2天运行的实例 | 集合 -1,0 天 |
说明
不同频率的上游任务,对应偏移单位说明:
月任务:偏移单位=月,代表1月;偏移单位=天,代表1天;
周任务:偏移单位=周,代表1周;偏移单位=天,代表1天;
天任务:偏移单位=天,代表1天;
小时任务:偏移单位=小时,代表1小时;
分钟任务:偏移单位=分钟,代表5分钟;(目前分钟级别任务,最小频率为:每5分钟执行一次)。
手动添加
依赖推荐功能可大大减少在任务依赖配置中的工作量,但依赖推荐存在其局限性。当发现依赖推荐返回的任务,缺少某些当前任务所使用表的数据更新任务时,可使用手动添加,人工调整依赖关系。
单击手动添加按钮,在依赖任务搜索页面,通过任务名称、任务 ID,数据表或 HDFS 路径进行搜索,添加所需依赖的上游任务。
设置依赖偏移,同时平台支持自动填充偏移设置。
单击依赖预览按钮,可以查看按照当前的依赖设置,上下游任务最新业务日期的实例依赖关系,方便及时验证偏移设置是否符合预期。
任务自依赖仅支持跨周期自依赖设置。 若任务需要依赖自己上一周期的数据产出,例如当天任务的执行,依赖当前任务昨天的运行结果,则跨周期自依赖设置为是。
通过任务的输入输出参数,实现参数在上下游节点之间的传递。可支持任务使用自定义参数,该参数可通过自定义方式输入,也可来源于上游任务,也可以来源于项目。
任务设置输入参数后,可在任务内部使用,其使用方式与时间参数使用方式不同。时间参数通过${}方式使用,其他输入参数通过{{参数名}}的方式使用。 输入参数具体分为以下三类:
将上游任务的输出参数当作输入
将在项目中设置的参数当作输入
将用户自定义的参数当作输入
设置任务的输出参数,输出参数定义完成且任务上线后,即可在下游节点中使用,作为下游节点的输入参数的取值。输出参数的取值分为常量和变量两种类型。
常量取值:常量为固定字符串,需要在任务的输出参数中进行定义。
变量取值:系统支持的全局变量,不需要在输出参数中定义,由系统提供,具体为:
{{taskId}}: 任务ID
{{taskType}}: 任务类型
{{taskName}}: 任务名称
{{taskOwner}}: 任务责任人
{{instanceId}}: 实例ID
{{taskTime}}: 实例对应的业务时间
{{scheduleRunTime}}: 实例设定的运行时间
{{startTime}}: 实例实际开始运行时间
{{endTime}}: 实例实际结束运行时间
{{instanceStatus}}: 实例状态
{{triggerType}}: 触发类型,包括系统调度、重跑
{{trackingUrl}}: 实例执行Tracking URL