hive分区的概念以及操作方法
hadoop生态组件之hive
hive处理的数据是存储在HDFS中
hive分析数据底层的默认实现是mapReduce
执行程序运行在Yarn上
在开启hive之前一定要先开启hdfs和yarn
hive的分区概念:
hive分区按照设置的分区字段,将一个大的数据集根据业务需要分割成小的数据集,在查询时通过WHERE子句中的表达式选择查询所需要指定的分区,这样的查询效率会提高很多。
分区的操作流程:
1.创建分区表(分区属性可以自定义,相当于在原表的基础上添加一个特殊标识的字段)
create table 表名(字段名 属性,… …)
partitioned by (分区属性 string)
row format delimited fields terminated by ‘\t’;
2.加载数据到分区表中
load data local inpath ‘引入文件的路径’ into 分区表 partition(分区属性=‘值’);
创建的分区表信息可以在mysql中的PARTITIONS中查询到分区信息
在hdfs上分区以文件夹的形式出现
查询:select * from 分区表 where 分区字段=’’;
查询的时候把分区的字段当成普通字段。
分区增加
alter table 表明 add partition(分区字段=’ ');
分区删除
alter table 表名 drop partition(字段名=’ ');