码迷,mamicode.com
首页 > 其他好文 > 详细

HIve数据存储

时间:2018-11-25 21:20:59      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:input   外部表   bucket   元数据   插入   数据仓库   bsp   执行   str   

  • Table 内部表
  • Partition 分区表
  • External Table 外部表
  • Bucket Table 桶表

内部表

 

技术分享图片

技术分享图片

分区表

       parttion对应于数据库中的Partition列的密集索引,在hive中,表的一个Partition对应于表下一个目录,所有的Partition的数据都存储在对应的目录中

技术分享图片

技术分享图片

每个分区对应一个目录,建立分区表可以提高查询效率

查看HQL查询效率:使用explain语句生成执行计划,指定了分区的HQL语句生成的执行计划步骤比没有指定分区的HQL执行计划的步骤少

技术分享图片

技术分享图片

外部表

       指向已经在HDFS中存在的数据,可以创建Partition;它和内部表在元数据的组织上是相同的,而实数据的存储则有较大差异;外部表只有一个过程,加载数据和创建表同时完成(而内部表创建和插入是分开执行),并不会移动到数据仓库的目录中,只是与外部数据建立一个连接,当删除外部表的时候也只是删除这个连接。

技术分享图片

技术分享图片

然后把Student01,Student02,Student03这几个txt文件放到input目录下;

 

 

当删除hdfs下input目录中的文件03

技术分享图片

再次查询,发现对应记录没有了,,少了几条

技术分享图片

 

视图

 

HIve数据存储

标签:input   外部表   bucket   元数据   插入   数据仓库   bsp   执行   str   

原文地址:https://www.cnblogs.com/nicoleljc/p/10017231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!