【博学谷学习记录】超强总结,用心分享 | Hive分区表和分桶表

本文详细介绍了Hive的分区表和分桶表的概念、作用及操作实例。分区表通过按字段分类数据,实现数据管理和高效查询,适合大数据场景。动态分区和静态分区是常见的分区方式。分桶表则通过数据分组提高JOIN效率和实现数据抽样。分桶基于哈希函数,有助于优化查询性能。
摘要由CSDN通过智能技术生成

 #博学谷IT技术支持# 

一、分区表

  1. 分区表就是对一个表的文件数据进行分类管理,表现形式就是有很多的文件夹(dt=2019-02-27)。
  2. 分区表的作用是以后查询时,我们可以手动指定对应分区的数据,避免全表扫描,提高查询效率。
  3. 所谓的分区表,指的就是将数据按照表中的某一个字段进行统一归类,并存储在表中的不同的位置,也就是说,一个分区就是一类,这一类的数据对应到hdfs存储上就是对应一个目录。当我们需要进行处理的时候,可以通过分区进行过滤,从而只取部分数据,而没必要取全部数据进行过滤,从而提升数据的处理效率。且分区表是可以分层级创建。
  4. 分区表的关键字是Partition,这里的分区是MR中的分区没有关系。
  5. 分区表可以有内部分区表,也可以有外部分区表。
  6. 什么时候表数据不用分区:
    1. 几乎在实际应用中所有的表数据都要分区。
    2. 如果你的数据量很小,而且数据很单一,此时可以不用分区。
  • 静态分区
-- 1、创建单分区表
create table score
(
    sid    string,
    cid    string,
    sscore int
)
partitioned by (dt string)  -- 这个dt是分区字段和表字段没有关系,理论上可以随便写
row format delimited fields terminated by '\t';

-- 2、给分区表加载数据
-- 第一件事:在HDFS的表目录下创建文件夹:dt=2022-10-13  第二件事:将
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值