分区简介
Hive在对数据进行查询的时候一般会对整个表进行扫描,当表很大的时候会消耗很多时间,有时候只是需要对表中的一部分数据进行扫描,因此Hive引入分区。
Hive分区不同于一般分布式系统下的范围分区,哈希分区,一致性分区等。 Hive的分区是在Hive的表结构下面根据分区的字段设置将数据按照目录进行存放,相当于简单的索引功能。Hive表分区需要在创建表的时候指定模式(Hive创建表的时候指定模式的语句: PARTITIONED BY (part_1 STRING,part_2 STRING))才能够使用。它的字段指定的是虚拟的列,在实际的表中并不存在,在Hive表分区的模式下可以指定多级结构,相当于对目录进行嵌套。
Hive表分区操作主要包含创建分区,增加分区和删除分区。
创建分区在创建表的时候完成,具体参考:Hive创建表.
(1)增加分区
ALTER TABLE table_name ADD partition_spec [LOCATION 'location'] partition_spec [LOCATION 'location']...partition_spec::PARTITION (partition_col = partition_col_name,partition_col = partition_col_name,...)
查看表结构:
hive> describe test_table_partition;</

最低0.47元/天 解锁文章
963

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



