Spark离线作业编排一:Linux的crontab定时任务

Spark离线作业编排一:Linux的crontab定时任务

2023年7月21日发(作者:)

Spark离线作业编排⼀:Linux的crontab定时任务概述Spark的离线作业进⾏编排主要有两种:第⼀种是使⽤Linux的crontab定时任务;第⼆种是使⽤组件(例如Oozie)进⾏编排。各⾃优缺点:crontab的优点是简单易⾏,缺点是如果多个作业之间存在先后关系,较难实现(⽐如前⼀个任务执⾏结束后,创建⼀个⽂件夹,后⼀个任务检测到⽂件夹后开始执⾏);Oozie的优点是较好地解决了多个Spark任务统筹编排,缺点是使⽤⽐较复杂。crontab⽅案使⽤crontab进⾏Spark任务编排⽐较简单,可以参考如下⽹址:具体步骤如下:1、将需要执⾏的spark-submit命令编写为shell,如下shell中获取前⼀天的utc起始时间作为spark程序的参数,将上传到/root/spark⽬录下;#!/bin/sh#引⼊环境变量source /etc/profile#获取昨天⽇期day=`date -d yesterday +%Y-%m-%d`#拼装昨天0时0分0秒和23时59分59秒starttime="${day} 00:00:00"endtime="${day} 23:59:59"#将年⽉⽇时分秒转为UTCstartutc=`date -d "${starttime}" +%s`endutc=`date -d "${endtime}" +%s`#执⾏数据清洗任务spark-submit --master yarn-client --class eaningJob --num-executors 4 --executor-memory 2G --total-executor-cores2、编辑crontab,⾸先执⾏crontab –e,进⼊vim界⾯,然后执⾏1 0 * * * . /root/spark/。表⽰每天凌晨00:01开始执⾏。可通过crontab -l命令查看是否编辑成功。其中后半部分的执⾏很容易理解,前半部分的理解见下图:举例如下:1)每五分钟运⾏命令*/5 * * * * . /home/2)每个⼯作⽇23:59都进⾏备份作业。59 11 * * 1,2,3,4,5 . /home/3 )每分钟运⾏⼀次命令*/1 * * * * . /home/4)每个⽉的1号 14:10 运⾏10 14 1 * * . /home/3、重启crond服务service crond restart

发布者:admin,转转请注明出处:http://www.yc00.com/news/1689930792a295255.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信