hive 自動加載分區 --動態分區



#!/bin/bash

date1="20080101"

date2="20080401"

enddate="20200501"

while [ "$date1" -le "$enddate" ];

do

yesterday=`date -d "$date1" +%Y-%m-%d`

today=`date -d "$date2" +%Y-%m-%d`

echo "${yesterday}" "${today}"


hive -e ' use bd; set hive.exec.max.dynamic.partitions.pernode=100; set hive.exec.dynamici.partition=true; set hive.exec.dynamic.partition.mode=nonstrict; insert overwrite table ods_xxx partition(sale_day) select * from (select *,substr(sale_time,0,10) from tmp_ods_xxx where substr(sale_time,0,10) > "2020-01-25")t ;'


date1=`date -d "$date1 +3month" +%Y%m%d`

date2=`date -d "$date2 +3month" +%Y%m%d`

done

 

對於動態分區,hive最多一次插入100個分區


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM