• 定时每天执行前一天的数据导入oracle


    #!/bin/bash
    export LANG="en_US.UTF-8"

    #设定时间变量,为前一天时间
    log_date=`date +%Y-%m-%d -d "-1 days"`
    #清空hive上的数据,再重建一个文件夹 hadoop dfs
    -rm -r /hjh/channels hadoop dfs -mkdir /hjh/channels
    #设置文件路径 curr_dir
    ="/home/hadoop/hjh/sh/channels/runlastdaychannels/" temdir="${curr_dir}template/" hqlfiledir="${curr_dir}hqlfile/"
    #设置hql的文件路径 importTemFile
    ="${temdir}channels.hql" importHqlFile="${hqlfiledir}channels_${log_date}.hql" rm -f ${importHqlFile} cp ${importTemFile} ${importHqlFile}
    #发送hql文件到另一个文件夹 sed
    -i "s/__DATE_STR__/${log_date}/g" ${importHqlFile} /opt/hive-0.13.0/bin/hive -f ${importHqlFile}
    #把执行之后hdfs上的数据导入到oracle
    /opt/sqoop-1.4.4/bin/sqoop export --table mytablename --connect jdbc:oracle:thin:@**.**.**.**:***:dbasename --username myusername--password mypassword
    --export-dir /result/hive/***/000000_0 --columns column1,column2,column3
    --input-fields-terminated-by '01' --input-lines-terminated-by ' '
  • 相关阅读:
    第八周作业
    第八周上机练习
    第七周作业
    第七次上机练习
    第六周作业
    4.9上机作业
    第五周作业
    第四次JAVA作业
    第四周作业
    第十六次作业
  • 原文地址:https://www.cnblogs.com/aijianiula/p/4895554.html
Copyright © 2020-2023  润新知