[shell]shell指令碼實現每天自動抽取資料插入hive表

TOMOCAT發表於2018-08-17
#!/bin/bash
source /etc/profile
source ~/.bashrc

M_DATE=$(date -d'-1 day' +%m) #取系統日期前一天的月份




spark-sql -e"
insert overwrite table db.tbname 
partition(event_day='${day}')
select 
    col_name1
    ,col_name2
    ,col_name3
from
    db.tbname2
where condition
  ;"

  #touchz _SUCCESS
  line_num=`$HADOOP_HOME/bin/hadoop fs -du -s /user/warehouse/db/tbname1/event_day=$day | awk '{print $1}'`
  if [ $line_num -gt 0 ]
  then
      $HADOOP_HOME/bin/hadoop fs -touchz /user/warehouse/db/tbname1/event_day=$day/_SUCCESS
  fi

 

相關文章