- 视图(View)
- 视图是一种虚表,是一个逻辑概念;可以跨越多张表。
- 视图在建立在已有表的基础上,视图以建立的这些表为基表。
- 视图可以简化复杂的查询。
eg. create view empinfo as select * from emp e,dept d where e.deptno= d.deptno;
select * from empinfo;
- 桶表(Bucket Table)
- 桶表是对数据进行哈希取值,然后放到不同文件中存储。
create table bucket_table(sid int,sname string,age int) clustered by (sname) into 5 buckets;
- 外部表(External Table)
- 指向已经在HDFS中存在的数据,可以创建Partition;
- 它和内部表在元数据的组织上是相同的,而实际数据的存储有较大的差异;
- 外部表只有一个过程,加载数据和创建表同时完成,并不会移动到数据仓库中,只是与外部数据建立一个链接。当删除一个外部表,仅删除该链接。
- 内部表
- 与数据库中的Table在概念上是类似;
- 每一个Table在Hive中都有一个相应的目录存储数据;
- 所有的Table 数据(不包括 External Table)都保存在这个目录中;
- 删除表时,元数据与数据都会被删除;
- 分区表(Parttion)
- Partition 对应于数据库的Parttion列的密集索引
- 在Hive中 ,表中的一个Parttion对应于表下的一个目录,所有的Parttion的数据都存储在对应的目录中。