一、分区表概述
分区表也是内部表,创建表时可以同时为表创建一个或多个分区,这样我们在加载数据时为其指定具体的分区,查询数据时可以指定具体的分区从而提高效率,分区可以理解为表的一个特殊的列。关键字是partitioned。
分区表实际上是将表文件分成多个有标记的小文件方便查询。
二、创建分区表
这里我们将oracle用户scott下的emp表导出的emp.csv文件在Hive中创建分区表存放,按照部门编号进行分区,emp表的字段信息值如下:
empno,ename,job,mgr,hiredate,salary,comm,deptno
7499,ALLEN,SALESMAN,7698,1981/2/20,1600,300,30
hive> create table part_emp(
> empno int,
> ename string,
> job string,
> mgr int,
> hiredate string,
> salary float,
> comm float
> )
> partitioned by (deptno int)
> row format delimited fields terminated by ',';
OK
Time taken: 0.061 seconds
查看分区表,其中# Partition Information为分区信息,有两个分区year和city
hive>desc extendedpart_emp;
OK
empno

本文介绍了Hive分区表的概念,通过创建、加载数据到分区表,并展示如何根据分区查询数据,强调了分区在提高查询效率方面的作用。还对比了分区表和普通表的执行计划,揭示了分区在HDFS上的存储形式。
最低0.47元/天 解锁文章
975

被折叠的 条评论
为什么被折叠?



