Hive分割槽的常用命令
阿新 • • 發佈:2018-12-29
一、建立分割槽
ALTER TABLE stg_userlogin ADD IF NOT EXISTS PARTITION (p_day_id = '20170608') location '/datacenter/business/stg/stg_userlogin/2017/06/08/';
一次新增多個分割槽
ALTER TABLE page_view ADD PARTITION (p_day_id='20170607', country='cn') location '/datacenter/business/stg/stg_pv/2017/06/07/' PARTITION (p_day_id='20170608', country='cn') location '/datacenter/business/stg/stg_pv/2017/06/08/';
二、刪除分割槽
ALTER TABLE stg_userlogin DROP IF EXISTS PARTITION (p_day_id = '20170608');
ALTER TABLE page_view DROP IF EXISTS PARTITION (p_day_id='20170608', country='cn');
三、修改分割槽
ALTER TABLE stg_userlogin PARTITION (p_day_id = '20170608') SET LOCATION "/datacenter/business/fact/fact_userlogin/2017/06/08/";
ALTER TABLE stg_userlogin PARTITION (p_day_id='20170608') RENAME TO PARTITION (p_day_id='2017-06-08');
四、修復Hive分割槽表的命令
MSCK REPAIR TABLE stg_userlogin;
五、修改Hive表屬性
alter table table_name set TBLPROPERTIES ('EXTERNAL'='TRUE'); //內部錶轉外部表 alter table table_name set TBLPROPERTIES ('EXTERNAL'='FALSE'); //外部錶轉內部表