#!/bin/sh
#hive集群中間表定時清理指令碼
databases="odb pdb"
#hive集群中所有庫庫名
stime=`date +%s`
#記錄當前時間
for db in $databases
do#遍歷所有庫
echo "*************************==開始清理庫$db***********************************===="
hive -e "use $db;show tables like 'vra*res*tmp';" >/home/deployer/zcb/tmp/db_tmp.txt
#取出當前庫中中間表表名
echo "*************************該庫下有以下中間表***********************************="
cat /home/deployer/zcb/tmp/db_tmp.txt
#輸出顯示當前庫中中間表表名
echo "*************************中間表展示完畢****************************************"
for tb in `cat /home/deployer/zcb/tmp/db_tmp.txt`
dohive -e "use $db;drop table if exists $tb"
#挨個表刪除
done
echo "*************************==清理庫結束$db***********************************===="
done
etime=`date +%s`
s=`echo "scale=0; ($etime - $stime)%60" | bc`
m=`echo "scale=0; ($etime - $stime)/60%60" | bc`
h=`echo "scale=0; ($etime - $stime)/60/60" | bc`
echo "****************************************指令碼執行完畢****************************************="
臨時表與中間表
外部臨時表 通過create temporary table 建立的臨時表,這種臨時表稱為外部臨時表。這種臨時表只對當前使用者可見,當前會話結束的時候,該臨時表會自動關閉。這種臨時表的命名與非臨時表可以同名 同名後非臨時表將對當前會話不可見,直到臨時表被刪除 內部臨時表 內部臨時表是一種特殊輕量級的...
hive 外部表 內部表 臨時表
1.外部表 關鍵字 external 外部表建立時需要指定location 刪除外部表時,資料不被刪除 create external table page view viewtime int,userid bigint,page url string,referrer url string,ip ...
HIVE 資料庫臨時表
hive從0.14.0開始提供建立臨時表的功能,表只對當前session有效,session退出後,表自動刪除。語法 create temporary table 注意點 1 如果建立的臨時表表名已存在,那麼當前session引用到該錶名時實際用的是臨時表,只有drop或rename臨時表名才能使用...