00:00
来,那现在我们来看一下接下来咱们干啥啊,接下来阿德卡班准备好了,数据准备好了,我们现在要干啥?是不是需要去编写咱们那个工作流程的配置文件了呀,对不对?好,那现在我们开始做这一步了啊,那现在我们需要先做第一件事,咱们那个配置文件需要,呃,咱们那个工作流程配置文件需要写几个俩对吧,一个是那个project文件,文件当中标明什么来着,是不是标明咱们这个工作流配置文件的那个版本呀,来work flow这个2.0啊,那CTRLC,咱们把这个内容拿过来,我们新建一个文件吧,来新建CTRLV,那完了之后呢,给它保存一下,这个起个名字啊,叫做机贸啊,机贸点pro product,后缀名后缀一定搞清楚啊,Product。哎,这是咱们的第一个文件,对吧,那接下来呢,我们去再新建一个,再新建一个,应该建谁了呀,是不是要建那个所谓的flow文件了呀,对吧,Flow文件,那文件当中内容应该是什么样的呢。但是内容我在这个文档上已经给大家提供好了,已经提供好了,但是这个东西如果说大家自己工作,这个是没人给你提供吧,是不是得自己写呀,那你说你自己写这个的时候,你得怎么写呀。
01:10
你要想能把这个东西写对了。那要求你得你得你得你,你什么地方得得会呀。跟第一个语法你得你得明白对吧,那第二一个呢。你要想写对了,你是不是整个流程的依赖关系自己必须得熟悉啊,对吧,那也说你是不是最好提前自己先画一个图,把这个先画出来啊,那你写的时候是不是照着这个去写那个依赖关系是肯定是没问题的呀,哎,这是第二点,那第三点是啥呀。那那你你得注意啊,你写的时候咱们是不是用阿斯卡班调的,就是咱们那些自己写的脚本呀,对不对,那你是不是必须得对每一个脚本都很熟悉才行啊,你得知道这个脚本我需要传什么参数,是不是才能写写对啊对不对,也就是说大家要想能把这个文件写对呢,你需要具备以上的咱们三个这个这个就是知识点啊,就是语法,那第二个呢,依赖关系,第三一个每个脚本你得熟悉才行啊啊那这个假假定大家现在已经对这三个技能点都掌握了啊,他这个小本咱们就应该就很容易写了啊啊那现在呢,我们把这个粘出来啊,这个当然咱们没必要再一点点写了,这个浪费时间粘出来,然后呢,咱们来看一下这个文件啊,CTRLV啊,先拿过来。
02:22
呃,拿来之后呢,我们可以把语法调一下圆,然后呢调成压面。好,那这个我们不带大家一点一点去看,我们把什么呢,把这个图拿过来,咱们对照的图呢,去看一下啊F3哎。首先大家都知道啊,那我们写这个的时候呢,我们需要在这里边是不是需要写一个数组啊,相当于对不对,这个数组有几个元素啊。来,我可以把这个先全都关闭啊。有几个元素啊。是不是一共有这样的九个元素?对不对,因为咱们后边123456789是不是九个单元,九个工单元是不是就对应咱们数组当中的九个元素,是不是一一对应的,你看这个名字是不是我都给他保持一致了呀,对吧,应该很简单啊,那其次呢,剩下的你就你就该干啥了,是不是,那你去写每一个工作节点,它所调的那个脚本呀,对不对?咱们以第一个为例啊,以my circle to hi为例,那这个脚本大家回忆一下,它调用这个任务调用的是哪个脚本。
03:24
首先类型,类型是不是就是command类型,调用命令也是调用脚本,那脚本是谁呢?是不是就这个,我的是在o home下边,At硅谷下边,B目录下边有些同学咱们之前写的脚本是不是可能没在这个路径下呀,你要没在这个路径,你是不是得知道怎么改啊,找到自己那个脚本就行啊,然后后边呢,再往下走,My circle to htfs是不是调用就是这个脚本,那这个脚本咱们回忆一下它使用的时候,咱们需要传什么参数来着。你需要给他传俩参数,你要传俩参啊,那第一个参呢,就是first或者哦,如果首次导,那就传first,首次导一般情况下是不是都是手动导啊,对不对,那咱们first已经导过了,我们现在15号已经是第二天了,从第二天开始以后每天是不是都应该传啥传奥,First和奥的区别是不是以它为例,就是体现在哪啊,那两张地区表是不是体现在那那个上面啊,因为表数据量不数据不变嘛,第一次有它,后续就没有它了,所以有false有二的区别,那第二个参数应该是啥来着,当时是一个。
04:25
日期吧,啊是一个日期,诶,那现在我的问题来了,正常情况下咱们上线之后,就是每天重复执行的时候,还需要传日期吗。是不是就不需要传日期了呀?对不对,那不需要传日期,那正常来说,你这是不是这么写就行。对不对,但咱这并没有这么写,我们这写了一个啥呀,写了一个。T Dollar dt,咱们也没有把这个日期写死,而是在这写了一个啥呀,一表达式。对不对,这很显然,这个好像是在引用一个变量,对吧?Dollar dt是不是在引用一个变量,对不对,那它引用这个变量来自于哪儿呢?
05:05
他引用的是哪儿的变量啊。这个呢,大家可能有所不知啊,可能有所不知,实际上是这样的啊,我们这个阿斯卡班呢,是支持我们给这个工作流程,你这配完之后,这是不是一个工作流程啊,对不对,是支持我们给这个工作流程传参的。啊,什么时候给给一个工作流程传的,什么时候传的,是在我们web页面上传的,一会儿你登录进来,是不是需要配置工作流程,你在执行工作流程之前,是可以给这个工作流程穿参的。能理解吧,啊,也就是说你在这儿传,然后呢,这个配置文件当中,是不是就能够引用到你所传的那个参数了呀。对不对,能理解吧,哎,他在这儿其实引用的是你后续在页面上给他传的参。那相当于在这儿呢,我们虽然每日定时调度的时呢,不需要传日期,但是我们这儿呢,也没有就是说直接把那个日期就给他干掉了,而是怎么样,而是在这儿呢,我们给它保留了一个可选择的余地啊,就是说我们这儿呢,写了一个引用对吧,那你后续需要传,你是不是在就在哪儿,就在你页面上传就行了,如果说不需要,你页面是不是就不用传了呀,对不对,那所以说这个相当于我们留了一个余地啊,你传不传都可以啊,那看这边的它的作用就是这个啊,那至于这个参数到底怎么传,你这这到底怎么解析的,一会儿咱们后续做的时候再给大家解释啊,好,这是我们的第一个任务节点,工作节点搞定。
06:32
好,那接下来再打开看下一个。下一个呢是啥呢?是h DFS to ods log,这时候把HF数据呢,导到我们的ods层的日志表里啊,对不对,这个很简单吗?是不是都要用这个脚本,这个脚本不需要first或者哦,是不是直接传一个日期就行,诶到时候读到这DT啊,然后后边每个脚本呢,咱们都是这么写的,这块呢,我就不再一个一个给大家说了啊,咱们节省一段时间。啊好,你就只要你熟悉每个脚本,那这个东西你就能写对。
07:01
没错吧啊,熟悉每个脚本,你这个东西就能写对啊,这边呢已经给大家都准备好了,然后呢,在这里边还需要强调一点的是什么呢?就是咱们这个依赖关系。写依赖关系的时候,咱们这个阿卡是怎么解决依赖关系的呀,是不是通过一个这样的参数啊,底depend子啊,啊你就去找呗,你就找,比如说那这个东西它有依赖的东西吗?他俩有依赖东西吗?他俩是不是谁都不依赖对不对,谁都不依赖他俩是不是就不用管了啊,那比如说以它为例,那他依赖谁,他是不是依赖于上面这个,那你就去找到HD FS to OD s DB找。HD FS to ods DB在哪呢?是不是在这呢?它是不是依赖于my circle to hts,所以说你是不是就在这个任务的这个元素,这是不是在这儿,然加一个啥,加一个底盆子on,注意底文子啊,后边加加的是啥数组一定得注意啊,即便依赖于一个任务,我也得是一个数组啊,那它依赖于谁?依赖于my circle推这S是不是就依赖于它就行了,那就这么整呗,那再往下,比如说到这一步了,那这一步dwd to dws它是不是依赖于这俩,那你就得找到dwd to dws在哪,在下边。
08:12
Dwd to DW s是不是这儿,那这儿的话,因为依赖于俩,所以depends on是不是就得写俩元素啊,啊是不是就这么写啊,所以你照这个图去写这个依赖关系的话呢,是比较容易的啊好,那到目前为止,你就按照我们刚才所讲的这个哎,方法呢,去把这个呃,配置文件写好就行了啊好,那现在我们搞定CTRLS啊保存我们取个名字叫做机貌g ma,注意这是以什么结尾。结尾啊,点击保存好两个文件,咱们全部搞定,搞定之后呢,我们需要将这两个文件呢,给它放在哪啊。放在一个zip包里,注意它是不是只支持zip包啊,右键zip,然后添加到desk top.zip好,改个名字,我们叫做机贸点zip啊。Ma回收好了,准备完毕啊,准备ID,那接下来呢,我们就可以正式进入到我们这个阿兹卡巴的全流程要度了啊好,那接来咱们开始我们登录艾特硅谷啊艾特硅谷使用你自己,诶这个密码写错了,可能是啊at at特硅谷好进来了,使用自己之前那个配的那个管理员用户就行啊啊那这时候咱们进来之后,我们要做第一件事是什么来着,创建product对吧?啊,那我们起个名字叫做也叫集贸啊。
09:29
来GL。好点击create product好点进来完之后需要干啥?上传我们自己的那个zip包,对吧?来上传点击技贸点zip在哪呢?呃,在这儿呢,双击啊upload。啊,引过来,他这是不是也没有报错,没报错就说明我们的语法是没问题的,对吧?啊,然后点击flow吧,点。好,你看这个地方是不是已经出了一个图啊,那这个图如果说你配的要是没问题的话,那这个图应该跟谁一样,是不是应该跟我们自己之前规划的那个是一样的才行啊,那这时候呢,你可以给他对比一下啊,如果说他展现的跟你自己画的那个不一样,那就说明你的配置文件是不是写的肯定有问题啊,对吧?你需要去看一看哪儿有问题,然后给他改正才行啊,这个你需要去做一个对比,那咱们这很显然,呃,只是这个左右这个不一样,对吧?里边的依赖关系是没问题的,对不对啊,那OK,那说明咱这儿的配置是OK的啊,是OK的行,那完事之后呢,我们接下来就可以诶继续去做咱们这个调度了。
10:31
好,那正常情况下,咱们这调度应该怎么做呀?随不应该点击schedule,然后让他每天的凌晨的00:10或20分或30分去跑,对不对,那这边咱们没有办法去做这个定时调度啊,因为我们的数据是不是咱们自己造的呀,咱们造的是几哪一天的呀,15号的,那所以说咱们这是不是没有办法让它自动获取前一天,那这边呢,我们应该怎么做,点击ex cut,咱们手动让他执行一天是不是就可以了呀,对不对,那一会呢,我们再去,哎,再去执行,一会再执行啊,那现在我们现在大致的流程就比较顺了,对吧?该怎么做啊就怎么做就行了,我现在先把视频录一下啊,咱们这个测试呢,一会再测,我把它录一下。
我来说两句