首页  ·  知识 ·  大数据
linuxshell调度sqoop定时增量取数据
网友  CIO之家  实践应用  编辑:雨泽   图片来源:网络
作用:每小时定时执行以下代码,能将上一个小时中的数据进行取出,用以进行数据分析和挖掘

作用:每小时定时执行以下代码,能将上一个小时中的数据进行取出,用以进行数据分析和挖掘

把以下代码中需要修改的部分修改一下后创建一个sh文件,将修改该好的数据放进去就行了,这个是针对oracle的sqoop语句

红色字体为我后加的注释,要注意去掉

橙色部分为需要修改的部分,sql部分需要针对自己业务进行设计,注意最终输出地址:默认为hdfs地址,也可导进hive中,这个请自行百度

#!/bin/sh
#comments

当前小时(注意等号后面的字符两端有反单引号(即在英文输入状态下esc下面的按键按出来的),因为字体的原因本站显示不出来)
nowHour=`date “+%Y-%m-%d %H:00:00″`

上一小时(注意等号后面的字符两端有反单引号(即在英文输入状态下esc下面的按键按出来的),因为字体的原因本站显示不出来)
lastHour=`date -d -1hour “+%Y-%m-%d %H:00:00″`

sqoop要执行的sql语句
sql=”SELECT  id,TO_CHAR(logdate,’yyyy-mm-dd hh24:mi:ss’) FROM testT WHERE logdate >= TO_date(‘”$lastHour”‘,’yyyy-mm-dd hh24:mi:ss’) and logdate < TO_date(‘”$nowHour”‘,’yyyy-mm-dd hh24:mi:ss’) and  \$CONDITIONS”

sqoop命令
sqoop import –connect jdbc:oracle:thin:@192.168.0.xx:1521:orcl –username username–password pwd\
–query “\”$sql\”” \
–m 1 –append –target-dir /hdfs目录


本文作者:网友 来源:CIO之家
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读