下线任务即将该任务从开发环境删除,并将删除操作发布至生产调度系统,下线后任务将无法再调度。本文以标准模式工作空间为例,为您介绍周期调度任务的下线流程、恢复流程、任务下线后对于已生成实例及正在运行实例平台侧的处理方案。
使用说明
为保障下游任务正常调度,DataWorks仅支持下线无下游依赖的节点,否则将产生报错,详情请参见报错:节点存在子节点,导致任务删除或下线失败。查看节点的依赖关系,详情请参见查看周期任务DAG图。
通过生产环境运维中心的周期任务界面下线的任务,在开发环境将默认回到编辑状态,不会进入回收站,您可在数据开发(DataStudio)界面搜索节点名称查找该节点。
任务下线流程
周期调度任务的下线流程如下。
步骤一:删除开发环境任务
在数据开发(DataStudio)删除任务。
操作类型 | 说明及图示 |
删除单个任务 | 您可通过业务流程目录或业务流程面板,删除指定任务。该方式删除完成后,需提交()当前业务流程。 |
批量删除任务 | 您可通过批量操作功能,批量删除任务。 |
通过节点组删除任务 | 您可通过框选生成节点组,删除指定节点;也可删除已有节点组中的节点。该方式删除完成后,需提交()当前业务流程。 |
步骤二:将下线操作发布生产
在数据开发(DataStudio)删除开发环境任务后,DataWorks默认在任务发布。
界面产生一条待发布的下线记录,拥有空间管理员及运维权限的用户需将该下线记录发布至生产,发布成功后生产环境的任务才会被下线。同时,发布操作可能会涉及相关流程管控,请确保发布操作执行成功。发布流程与权限管控,详情请参见步骤三:确认生产任务是否下线
在
界面,检查节点是否存在,若不存在表示任务已成功下线。任务下线操作对已生成实例的影响
未运行的实例
执行下线操作的过程中,未运行的实例会空跑,实例状态直接置为成功,但该实例实际未执行任务代码。按量付费场景下,空跑的实例不会收取调度实例费。
正在运行的实例
执行下线操作的过程中,正在运行的实例会继续正常执行。
DataWorks不支持手动删除实例,实例在过期后(30天左右)将自动删除。
若周期任务某天无需运行,您可选择冻结该任务当天产生的周期实例;若某任务很久无需运行,您可选择冻结该周期任务。详情请参见周期任务基本运维操作。
恢复任务
您可在数据开发(DataStudio)的回收站中,恢复近100条已删除的任务,重新提交发布。
节点恢复后会生成新的节点ID。
仅支持恢复已在开发环境和生产环境均删除的任务(节点、资源、函数等),否则将产生报错:请先在发布中心把文件${filename}发布到生产环境或在发布中心取消发布报错。
常见问题
报错:请先在发布中心把文件${filename}发布到生产环境或在发布中心取消发布
- 报错原因:DataWorks的回收站仅支持还原已在开发环境和生产环境均删除的任务(节点、资源、函数等)。若任务只从开发环境删除,未将该删除操作发布至生产环境执行(即未下线生产环境任务),将产生该报错。
- 解决方案:您可前往任务发布界面先取消发布当前任务,再去还原数据开发(DataStudio)的文件。
报错:节点存在子节点,导致任务删除或下线失败
- 报错原因:为保障下游任务正常执行,DataWorks仅支持任务在开发环境和生产环境均无下游依赖的情况下执行任务下线操作。说明 下线节点可能导致其他依赖该节点的任务运行异常,请与依赖该节点的各任务负责人做好沟通。
- 解决方案:
- 确认待下线任务的下游依赖:您可前往开发环境运维中心和生产环境运维中心的周期任务界面,分别确认该任务开发环境和生产环境是否存在下游依赖关系。详情请参见查看周期任务DAG图。
- 移除待下线任务的下游依赖: