1. 程式人生 > >Hive建立外部表表external table

Hive建立外部表表external table

Hive建表(外部表external table):

CREATE EXTERNAL TABLE `table_name`(
  `column1` string, 
  `column2` string, 
  `column3` string)
PARTITIONED BY ( 
  `proc_date` string)
ROW FORMAT SERDE 
  'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' 
STORED AS INPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat' 
OUTPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
  'hdfs://ns-hf/...'
TBLPROPERTIES ()TBLPROPERTIES (
  'transient_lastDdlTime'='')

新增分割槽並載入分割槽資料:

alter table table_name add partition (proc_date='${hivevar:pdate}'location '...'(不改變源資料儲存位置)

load data inpath '...' into table table_name partition(proc_date='${hivevar:pdate}');(會將源資料切到hive表指定的路徑下)

刪除分割槽:alter table table_name drop if exists partition(proc_date='${hivevar:pdate}');