Hive中 分区表和桶
Hive分区表在hive Select 查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作.有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念.分许表指的是在创建表时指定的partition的分区空间. Hive可以对数据按照某列或者某些列进行分区管理,所谓分区我们可以拿下面的列子进行解释. 当前互联网应用每天都要存储大量的日志文件.几G.十几G甚至更大都是有可能的.存储日志,其中必然有个属性是日志产生的日期.在产生分区时,就可以按照日志产生的日期列进行划分.把每一天的日志当做一个分区.将数据组织成分区,主要可以提高数据的查询速度.至于用户存储的每一天记录到底放到那个分区,由用户决定.即用户在加载数据的时候必须显示制定该部分数据放到那个分区. 实现细节 一个表可以拥有一个或者多个分区 每个分区一文件夹的形式单独存储在表文件夹的目录下.表和列名不区分大小写分区是以字段的形式在表结构中存在.通过describe table 命令可以查看到字段存在. 语法创建一个分区表 以ds 为分区列create table invites (id int, name st...