[PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]mysql
在建表时,指定了PARTITIONED BY ,这个表称为分区表
PARTITIONED BY 以什么分区sql
MR: 在MapTask输出key-value时,为每一个key-value计算一个区号,同一个分区的数据,会被同一个reduceTask处理
这个分区的数据,最终生成一个结果文件!
经过分区,将MapTask输出的key-value通过reduce后,分散到多个不一样的结果文件中!
Hive: 将表中的数据,分散到表目录下的多个子目录(分区目录)中oop
多级分区表,有多个分区字段
create external table if not exists learnwork.deptpart2(
deptno int,
dname string,
loc int
)
PARTITIONED BY(area string,province string)
row format delimited fields terminated by '\t';orm
create external table if not exists learnwork.deptpart3(
deptno int,
dname string,
loc int
)
PARTITIONED BY(area string)
row format delimited fields terminated by '\t'
location 'hdfs://hadoop101:9000/deptpart3';hadoop
show partitions 表名string
alter table 表名 add partition(分区字段名=分区字段值) ;it