DataWorks如何实现调度依赖?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
调度依赖就是节点间的上下游依赖关系,在DataWorks中,上游任务节点运行完成且运行成功,下游任务节点才会开始运行。配置调度依赖后,可以保障调度任务在运行时能取到正确的数据(当前节点依赖的上游节点成功运行后,DataWorks通过节点运行的状态识别到上游表的最新数据已产生,下游节点再去取数)。避免下游节点取数据时,上游表数据还未正常产出,导致下游节点取数出现问题。配置节点的调度依赖时,建议根据各个节点的表数据血缘关系来规划配置节点的上下游依赖,确保满足以下原则:一张表的数据只由一个节点产出,且节点的产出表需配置为本节点的输出。说明SQL任务会通过自动解析,将产出表作为本节点输出,无需手动配置。离线同步任务需要手动配置,将产出表添加为本节点输出。上游节点的输出作为下游节点的输入,形成节点间的依赖关系。说明 对于没有表数据血缘关系的节点,可以根据节点运行的逻辑上下游关系规划配置节点的依赖关系,配置原则和配置后的结果与有血缘关系的节点一致。DataWorks的调度依赖在各个节点的调度配置中进行配置,每个节点需要为其配置依赖的上游节点和本节点的输出。
DataWorks支持自动解析和手动配置的方式进行调度依赖配置。理想状态下,DataWorks可根据您规范化的节点任务代码开发,识别输入输出命令(如select、insert),根据代码识别表数据的血缘关系,以血缘关系为基座,通过自动解析自动为您配置好节点的调度依赖。特殊场景下,例如本地上传的表,表数据无需周期性调度生成数据时,您可以手动增删节点的调度配置。在提交节点时,DataWorks会检查节点的调度依赖与节点代码中的数据血缘关系是否一致,如果出现不一致的提示,您需要根据实际情况查看是否需要修改调度依赖配置。
https://help.aliyun.com/document_detail/151507.html,此回答整理自钉群“DataWorks交流群(答疑@机器人)”
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。