- 静态分区
1.导入脚本
centos7,root下创建person.txt脚本,连接hive,创建表person_one。
create table person_one (
name string,
nation string
)
partitioned by (sex string)
row format delimited fields terminated by ',';
导入脚本数据
load data local inpath '/root/person.txt' into table person_one partition (sex='man');
- 多级分区
create table person_muilt (
name string,
nation string
)
partitioned by (sex string,dt string)
row format delimited fields terminated by ',' ;
导入脚本数据
load data local inpath '/root/person.txt' into table person_muilt partition (sex='man',dt='2019-09-29');
load data local inpath '/root/person.txt' into table person_muilt partition (sex='men',dt='2019-09-28');
- 动态分区
create table person_dynamic (
name string,
nation string
)
partitioned by (sex string,dt string)
row format delimited fields terminated by ',' ;
设置动态分区
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
导入脚本数据
insert overwrite table person_dynamic partition(sex,dt) select name,nation,sex,dt from person_muilt;