开发者学堂课程【新电商大数据平台2020最新课程:电商项目之 DWD 用户启动日志表脚本调度实现】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/640/detail/10526
电商项目之 DWD 用户启动日志表脚本调度实现
目录:
一、脚本编写
二、脚本调度的实现
一、脚本编写
脚本编写中,因为需要调度信息,date 不能获取系统时间,如果按着公司开发是自动获取到的,不能每次都改。
在编写时将 yesterday= 'date -d "-1 day"+"&y&m&d"”
修改为 yesterday= ' 20200321"数据的形式,不然数据获取不到。
二、脚本调度的实现
找到模板,将 command:sh dwd nshop actlog pdtview.sh:修改为 command:sh dwd.sh
具体代码如下:
config:
#failure. emails: xx@xx
nodes :
name: dwd_ nshop_ act1og_ pdtview_ sql_ job
type: command
config:
command:sh dwd.sh
保存后压缩成一个包。
进入 azkaban,上传执行任务,开始运行任务,编写脚本然后进行角度。上传后开始执行,点击 continue。开始运行,进行调度。可能会失败,需要加入本地模式。
可能会失败,就是因为没有开启本地模式,最好把任务加进去,把本地模式也加进去,才不会挂。
在这里面设置本地模式:
set hive.exec.mode.local.auto=true;
把它加入到脚本调度中,放在第一位,保存后再次加入压缩包。
在运行过程中会有些慢,因为数据有些大。
在代码中换个名字,变为:
config:
#failure.emails: xx@xx
nodes :
name :dwd
type:conmand
config:
command: sh dwd.sh
重新压缩上传。再等一下结果。因为设置了本地模式,所以跑的时候快一些。
结束后可以看出刚开启的本地模式是成功的。此时任务成功。时间有出入是因为没有同步时间。
如果想设置定时任务,可以自己修改。每天十分钟执行,都可以修改。空的代表每分钟执行一次。可以自行设置,然后再重置。所有的调度方式全部通过 azkaban 进行运行,最后得数据也没有问题。
通过运行可以得出:以后所有的调度都可以使用 azkaban执行。数据没有问题。
以下图片是运行的结果,20190908没有问题。
此时脚本调度就完成了。