搜索
当前位置: M5平台官网 > 调度作业 >

使用DataWorks调度DLA循环任务

gecimao 发表于 2019-04-24 21:12 | 查看: | 回复:

  DataWorks是阿里云上的一款热门产品,可以为用户提供大数据开发调度服务。它支持了Data Lake Analytics(后文简称DLA)以后,DLA用户可以通过它进行定时任务调度,非常方便。本文将主要介绍如何使用DataWorks调度DLA的循环任务。

  使用DLA对历史数据按天做清洗。数据清洗的SQL是固定的,只是每次执行的时候需要传入不同的日期。

  登录DataWorks的控制台,并创建一个业务流程或使用原有的业务流程。

  打开节点“日期集合”的编辑页面。这里我们选择SHELL语言,将要执行的日期值写在一个数组里。

  在这里需要给赋值节点设置一个上游节点,这里可以设置为当前工作空间的root。比如我的工作空间名字叫jinluo_poc,则该节点为jinluo_poc_root。

  双击循环节点进入编辑页面。可以看到三个节点,分别是start, sql和end。这里我们需要新建一个DLA的任务节点,并把sql替换为一个DLA的任务节点。

  在调度配置页面设置依赖关系和节点上下文。上游节点设置为赋值节点“日期集合”,本节点的输入为赋值节点的输出。

  这里面的pure_date的值是从赋值节点读入的。每次读取赋值节点的输出结果数组中的一个值。写法是固定的,如下所示。

  end节点的结束条件:是把dag.loopTimes进行比较,小于则输出True继续循环;不小于则输出False退出循环。ut.length变量,标识上下文参数input数组的行数。是系统自动根据节点配置的上下文下发的变量。

  目前在DataWorks的开发界面暂不支持循环节点的运行,需要提交后在运维中心测试运行。

  分别点击 “日期集合”和“数据清洗SQL”页面上的“提交按钮”进行提交。

  右键“日期集合” - 补数据 - 当前节点及下游节点 可以手动执行该组任务。

本文链接:http://olivierlutaud.net/diaoduzuoye/201.html
随机为您推荐歌词
推荐文章

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部