sqoop导入脚本
来源:互联网 发布:网络男主播 编辑:程序博客网 时间:2024/05/21 22:45
#!/bin/sh
source ExitCodeCheck.sh
opts=$@
getparam(){
arg=$1
echo $opts |xargs -n1 |cut -b 2- |awk -F'=' '{if($1=="'"$arg"'") print $2}'
}
IncStart=`getparam inc_start`
IncEnd=`getparam inc_end`
oracle_connection=`getparam jdbc_str`
oracle_username=`getparam db_user`
oracle_password=`getparam db_psw`
dataName=`getparam db_sid`
queueName=`getparam hdp_queue`
hdfshostname=`getparam hdfs_host`;
IncStartYear=`echo ${IncStart:0:4}`;
IncStartMonth=`echo ${IncStart:4:2}`;
IncStartDay=`echo ${IncStart:6:2}`;
IncStartAll=${IncStartYear}"-"${IncStartMonth}"-"${IncStartDay}" 00:00:00.0";
IncStartAllFormat=${IncStartYear}"-"${IncStartMonth}"-"${IncStartDay};
IncEndYear=`echo ${IncEnd:0:4}`;
IncEndMonth=`echo ${IncEnd:4:2}`;
IncEndDay=`echo ${IncEnd:6:2}`;
IncEndAll=${IncEndYear}"-"${IncEndMonth}"-"${IncEndDay}" 00:00:00.0";
IncEndAllFormat=${IncEndYear}"-"${IncEndMonth}"-"${IncEndDay};
OneDayAgo=`date -d "$IncStart 1 days ago " +%Y%m%d `;
OneDayAgoYear=`echo ${OneDayAgo:0:4}`;
OneDayAgoMonth=`echo ${OneDayAgo:4:2}`;
OneDayAgoDay=`echo ${OneDayAgo:6:2}`;
OneDayAgoAll=${OneDayAgoYear}"-"${OneDayAgoMonth}"-"${OneDayAgoDay}" 00:00:00.0";
OneDayAgoAllFormat=${OneDayAgoYear}"-"${OneDayAgoMonth}"-"${OneDayAgoDay};
#任务名取脚本名
job_name=$0
#任务名取脚本名
job_name=$0
#目标表名
hive_table=AGG_MOBILE_HR_DEPT_ALL
#临时目录
target_dir=/apps-data/hduser0101/sx_360_safe/import/${hive_table}
#删除临时目录,支持二次运行
hadoop dfs -rmr ${target_dir}
sqoop import -D mapred.job.queue.name=${queueName} -D mapred.job.name=${job_name} \
--connect ${oracle_connection} \
--username ${oracle_username} \
--password ${oracle_password} \
--query "SELECT \
PARENT_DEPARTMENT_CODE \
,DEPARTMENT_CODE \
,DEPARTMENT_NAME \
,DEPARTMENT_LEVEL \
,OPTION_ITEM \
,CR_MONTH \
,CR_YEAR \
,COMP_LY \
,COMP_YEAR_END \
,TLL_MONTH \
,TLL_MONTH_NUM \
,TLL_YEAR \
,TLL_YEAR_NUM \
,ZYL_MONTH \
,ZYL_MONTH_NUM \
,ZYL_YEAR \
,ZYL_YEAR_NUM \
,PLAN_DATA_M \
,PLAN_DATA_Y \
,C_PLAN_DATA_M \
,C_PLAN_DATA_Y \
,CR_MONTH_LY \
,CR_YEAR_LY \
,CREATED_BY \
,DATE_CREATED \
,UPDATED_BY \
,DATE_UPDATED \
,ORDER_NO \
,ZY_Y_CUR \
,TL_Y_CUR \
,LM_HR \
,ZY_M_LY \
,ZY_Y_LY \
,TL_M_LY \
,TL_Y_LY \
FROM AGG_MOBILE_HR_DEPT_ALL \
WHERE CANC_DATE = to_date('${IncStart}','yyyymmdd') \
and \$CONDITIONS " \
-m 1 \
--hive-table SX_360_SAFE.${hive_table} \
--hive-drop-import-delims \
--fetch-size 5000 \
--hive-partition-key CANC_DATE \
--hive-partition-value ${IncStartAllFormat} \
--target-dir "${target_dir}" \
--hive-overwrite \
--null-string '\\N' \
--null-non-string '\\N' \
--hive-import;
exitCodeCheck $?
source ExitCodeCheck.sh
opts=$@
getparam(){
arg=$1
echo $opts |xargs -n1 |cut -b 2- |awk -F'=' '{if($1=="'"$arg"'") print $2}'
}
IncStart=`getparam inc_start`
IncEnd=`getparam inc_end`
oracle_connection=`getparam jdbc_str`
oracle_username=`getparam db_user`
oracle_password=`getparam db_psw`
dataName=`getparam db_sid`
queueName=`getparam hdp_queue`
hdfshostname=`getparam hdfs_host`;
IncStartYear=`echo ${IncStart:0:4}`;
IncStartMonth=`echo ${IncStart:4:2}`;
IncStartDay=`echo ${IncStart:6:2}`;
IncStartAll=${IncStartYear}"-"${IncStartMonth}"-"${IncStartDay}" 00:00:00.0";
IncStartAllFormat=${IncStartYear}"-"${IncStartMonth}"-"${IncStartDay};
IncEndYear=`echo ${IncEnd:0:4}`;
IncEndMonth=`echo ${IncEnd:4:2}`;
IncEndDay=`echo ${IncEnd:6:2}`;
IncEndAll=${IncEndYear}"-"${IncEndMonth}"-"${IncEndDay}" 00:00:00.0";
IncEndAllFormat=${IncEndYear}"-"${IncEndMonth}"-"${IncEndDay};
OneDayAgo=`date -d "$IncStart 1 days ago " +%Y%m%d `;
OneDayAgoYear=`echo ${OneDayAgo:0:4}`;
OneDayAgoMonth=`echo ${OneDayAgo:4:2}`;
OneDayAgoDay=`echo ${OneDayAgo:6:2}`;
OneDayAgoAll=${OneDayAgoYear}"-"${OneDayAgoMonth}"-"${OneDayAgoDay}" 00:00:00.0";
OneDayAgoAllFormat=${OneDayAgoYear}"-"${OneDayAgoMonth}"-"${OneDayAgoDay};
#任务名取脚本名
job_name=$0
#任务名取脚本名
job_name=$0
#目标表名
hive_table=AGG_MOBILE_HR_DEPT_ALL
#临时目录
target_dir=/apps-data/hduser0101/sx_360_safe/import/${hive_table}
#删除临时目录,支持二次运行
hadoop dfs -rmr ${target_dir}
sqoop import -D mapred.job.queue.name=${queueName} -D mapred.job.name=${job_name} \
--connect ${oracle_connection} \
--username ${oracle_username} \
--password ${oracle_password} \
--query "SELECT \
PARENT_DEPARTMENT_CODE \
,DEPARTMENT_CODE \
,DEPARTMENT_NAME \
,DEPARTMENT_LEVEL \
,OPTION_ITEM \
,CR_MONTH \
,CR_YEAR \
,COMP_LY \
,COMP_YEAR_END \
,TLL_MONTH \
,TLL_MONTH_NUM \
,TLL_YEAR \
,TLL_YEAR_NUM \
,ZYL_MONTH \
,ZYL_MONTH_NUM \
,ZYL_YEAR \
,ZYL_YEAR_NUM \
,PLAN_DATA_M \
,PLAN_DATA_Y \
,C_PLAN_DATA_M \
,C_PLAN_DATA_Y \
,CR_MONTH_LY \
,CR_YEAR_LY \
,CREATED_BY \
,DATE_CREATED \
,UPDATED_BY \
,DATE_UPDATED \
,ORDER_NO \
,ZY_Y_CUR \
,TL_Y_CUR \
,LM_HR \
,ZY_M_LY \
,ZY_Y_LY \
,TL_M_LY \
,TL_Y_LY \
FROM AGG_MOBILE_HR_DEPT_ALL \
WHERE CANC_DATE = to_date('${IncStart}','yyyymmdd') \
and \$CONDITIONS " \
-m 1 \
--hive-table SX_360_SAFE.${hive_table} \
--hive-drop-import-delims \
--fetch-size 5000 \
--hive-partition-key CANC_DATE \
--hive-partition-value ${IncStartAllFormat} \
--target-dir "${target_dir}" \
--hive-overwrite \
--null-string '\\N' \
--null-non-string '\\N' \
--hive-import;
exitCodeCheck $?
阅读全文
0 0
- sqoop导入脚本
- sqoop脚本(导入到pg库)
- sqoop脚本
- python脚本 用sqoop把mysql数据导入hive
- [Sqoop]Sqoop导入与导出
- sqoop并行导入数据
- sqoop定时增量导入
- Sqoop导入hive注意事项
- Sqoop增量导入Hive
- sqoop导入导出数据库文件
- sqoop导入导出
- Sqoop 导入,导出练习
- Sqoop 数据导入问题
- sqoop导入导出
- sqoop数据导入导出
- Sqoop 测试数据导入示例
- sqoop增量导入问题
- Sqoop数据增量导入
- 树莓派chromium代理设置
- 【数据库】MySql报2006error错误的解决方法(数据过大)
- MySQL数据库引擎介绍、区别、创建和性能测试的深入分析
- RCU回顾
- Coursera deeplearning.ai 深度学习笔记3-Structuring Machine Learning Projects
- sqoop导入脚本
- SparkML模型选择(超参数调整)与调优
- SVN:客户端与服务器端安装、配置与使用
- Unity对象池使用
- Spring Cloud Feign 启动UnsatisfiedDependencyException
- java入门篇--字符串操作(下)
- 查看与修改网关,DNS
- python web 常用库
- python迭代器