您的位置:首页 > 其它

Hive学习笔记 3 Hive的数据模型:内部表、分区表、外部表、桶表、视图

2017-10-08 16:34 826 查看
1、内部表

Hive中默认的表就是内部表,即元数据存在数据库中,数据存在HDFS中



顺便补充以下创建内部表的细节:指定列分隔符、从其他表中查询插入



内部表被删除后,HDFS会把其移动到垃圾箱中



2、分区表

作用:加快查询效率,如按照性别分区





如果按照性别进行分区,则可以加快按照性别查询时的查找效率

分区表创建实例:

在mysql中新建一个person表,并插入几条数据



使用Sqoop将mysql数组导入到hive中



在hive中查询是否导入成功  select * from person

创建分区表并指定列分隔符 create table partitiontable(sid int,sname string) partitioned by (gender string) row format delimited fields terminated by ',';

向分区表的gender=M分区中插入从person中查询的gender=M的数据:

insert into table partitiontable partition(gender='F') select id,name  from person where gender = 'F';

insert into table partitiontable partition(gender='M') select id,name  from person where gender = 'M';





在HDFS中查看分区表的结构和内容



3、外部表









3、桶表

将某个属性进行hash,分到一定数量的桶中



4、视图

概念与数据库中的视图概念基本相同,理解为虚表

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息