大数据Kettle数据清洗与定时任务开发
今天整点大数据应用的开发。做一个定时校验的Job
Kettle自行百度,做ETL的。下面就开始吧。
首先kettle,开发系统时间的转换,这步很关键的,兄弟:
具体代码也贴出来,这个是设置环境变量,
接下来,看分割时间的js代码段,
能看懂吧,就是获取系统信息,切割时间,为昨天的时间,这么是为了后期跑任务的。
接下来开发任务job,
然后看一下sql脚本,
老规矩,签了隐私政策,得弄花了。
好了前面两个转换好了,接着来,前面两个装换,一个是做系统时间环境变量获取的,另一个是设置dtNew变量的,并且获取mysql、hive表的昨日数据。
接下来,开发另一个任务,就是appid的渠道日活,appid日活,日活占比:
如所见,需要到处到excel中,来做查看,
看一下sql脚本:
整合转换并且运行:
到此,那么kettle部分开发完了,我们可以设置一个时间了:
start部分,设置时间为每天的,10点20,保存。
接着,设置返回邮件,这步很重要,你总得让kettle告诉你什么时候结束吧。
接下来,搞大家伙了,因为是自己的工作,我没有放到服务器上,而是打算本地windows启动服务,开始制作bat脚本,那我就不做介绍了,直接粘贴脚本,为了公司隐私,直接马赛克一些:
好了,看一下效果:
接着,这个bat脚本,我们需要windows的计划任务,不了解的自行百度哦:
会了吧,
so easy,
结束之后:
来看一下,
接下来,干嘛呢?就是等了,我们设置了定时10点28开始调用bat程序,然后我们等28启动bat,启动之后,10点30调用kettle,ok。稍后给看结果。
那么这套windows开发,当然很方便很舒服,但是也有弊端,就是调用了程序之后,因为bat脚本我们pause,所以bat会持续在桌面,当然,bat里面我们定义log位置,我是喜欢将bat暂留,也有人喜欢一闪而过的感觉,那么我们不管,bat的自己定制也都在脚本中示例了,这里不赘述。稍后下午打算整一套linux服务器的demo帖做记录。
再次补充,理论意义上,kettle的理念是可以完成绝大部分大数据企业的需求的,包括实时的需求,
好了谈话间,就启动了bat了。截图:
应用自启动,还可以。
now loading。。。。。。
等10点30,看日志,并且等excel生成,我们就可以对比了。
稍后,邮件也会发送到我们的新浪邮箱,稍后都会截图展示成果的:
时间已经来到了10点半,我们看,日志打出:
那么我们去检查bat中盘符数据excel:
已经生成了,等待邮件:
foxmail的f4,收取所有邮件:
邮件也来了,
开发结束,是不是很快。开发者,就是要速度快,我们应当学习能力超强,迅速适应所有的需求,理论意义上,如果需求是造火箭,那么应当在规定时间内,设计、开发、测试、维护都能做。