hive的数据模型

  • 视图(View)
  1. 视图是一种虚表,是一个逻辑概念;能够跨越多张表。
  2. 视图在创建在已有表的基础上,视图以创建的这些表为基表。
  3. 视图能够简化复杂的查询。

    eg. create view empinfo as select * from emp e,dept d where e.deptno= d.deptno; 数据库

        select * from empinfo;
spa


  • 桶表(Bucket Table)
  1. 桶表是对数据进行哈希取值,而后放到不一样文件中存储

    create table bucket_table(sid int,sname string,age int) clustered by (sname) into 5 buckets; 索引


  • 外部表(External Table)
  1. 指向已经在HDFS中存在的数据,能够建立Partition;
  2. 它和内部表在元数据的组织上是相同的,而实际数据的存储有较大的差别;
  3. 外部表只有一个过程,加载数据和建立表同时完成,并不会移动到数据仓库中,只是与外部数据创建一个连接。当删除一个外部表,仅删除该连接。


  • 内部表
  1. 与数据库中的Table在概念上是相似;
  2. 每个Table在Hive中都有一个相应的目录存储数据;
  3. 全部的Table 数据(不包括 External Table)都保存在这个目录中;
  4. 删除表时,元数据与数据都会被删除;
  • 分区表(Parttion)
  1. Partition 对应于数据库的Parttion列的密集索引
  2. 在Hive中 ,表中的一个Parttion对应于表下的一个目录,全部的Parttion的数据都存储在对应的目录中。
相关文章
相关标签/搜索