Hive结合shell脚本企业实战用法
目录
1、Linux设置定时任务
编辑定时任务
[root@master ]#crontab -e
* * * * *
第1个*:表示分钟
第2个*:表示小时
第3个*:表示星期几
第4个*:表示几号
第5个*:表示月份
举例:
每分钟执行一次hql.sh脚本,将其日志存放到1.log目录中
*/1 * * * * /usr/local/soft/scripts/hql.sh >> /usr/local/soft/scripts/logs/1.log
2、Hive结合shell脚本使用
hive -e “SQL语句”
举例:
[root@master ~]# hive -e “select * from test1.students limit 10”
执行结果:
1500100001 施笑槐 22 女 文科六班
1500100002 吕金鹏 24 男 文科六班
1500100003 单乐蕊 22 女 理科六班
1500100004 葛德曜 24 男 理科三班
1500100005 宣谷芹 22 女 理科五班
1500100006 边昂雄 21 男 理科二班
1500100007 尚孤风 23 女 文科六班
1500100008 符半双 22 女 理科六班
1500100009 沈德昌 21 男 理科一班
1500100010 羿彦昌 23 男 理科六班
hive -f sql文件
当我们的SQL比较复杂,不方便写在hive -e 这一行,我们可以先把SQL语句写下文件里
举例:
[root@master ~]# cd /usr/local/soft/
[root@master soft]# mkdir scripts----------创建一个目录
[root@master soft]# cd scripts/
[root@master scripts]# touch stu.sql-------创建一个sql文件
[root@master scripts]# vim stu.sql --------编辑sql文件(在里面写sql语句)
select * from test1.students limit 5;
[root@master scripts]# hive -f stu.sql ----执行sql文件
执行结果:
1500100001 施笑槐 22 女 文科六班
1500100002 吕金鹏 24 男 文科六班
1500100003 单乐蕊 22 女 理科六班
1500100004 葛德曜 24 男 理科三班
1500100005 宣谷芹 22 女 理科五班