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、视图
概念与数据库中的视图概念基本相同,理解为虚表
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、视图
概念与数据库中的视图概念基本相同,理解为虚表
相关文章推荐
- Hive的数据存储(内部表,外部表,分区表,桶表,视图)
- Hive数据加载(内部表,外部表,分区表)
- 一起学Hive——创建内部表、外部表、分区表和分桶表及导入数据
- Hive内部表、外部表、分区表以及外部分区表创建以及导入数据实例讲解
- Hive关于内部表外部表以及分区表数据删除总结
- hive内部表、外部表、分区表、视图
- Hive关于内部表外部表以及分区表数据删除总结
- hive内部表、外部表、分区表、视图
- hive 采用JDBC编码方式获取外部分区表数据
- hive中的内部表、外部表、分区表
- Hive的数据模型-外部表
- Hive内部表、外部表、分区表介绍
- HIVE 外部表和内部表数据导入方式以及区别
- Hive的数据模型之外部表
- hive内部表,外部表,分区表,桶表,函数及自定义函数
- Hive 文件格式 & Hive操作(外部表、内部表、区、桶、视图、索引、join用法、内置操作符与函数、复合类型、用户自定义函数UDF、查询优化和权限控制)
- Hadoop学习笔记(十八)---Hive内部表,外部表,分区表,桶表
- Hive的数据模型-分区表
- Hive的数据模型之视图
- Hive中管理表(内部表)和外部表的区别是什么,及分区表使用场景