Hive中分区表与分桶表——个人学习记录

Hive中分区表与分桶表

参考:https://blog.csdn.net/Li_Jian_Hui_/article/details/112280985

区别:

(一)从表现形式上:

        分区表是一个目录;分桶表是文件

(二)从创建语句上:

        分区表使用partitioned by(partition_name string),指定字段为伪劣(非表内字段),需要指定字段类型

        分桶表使用clustered by(column_name) into 3 buckets,指定字段是真实字段(表内字段),不需要指定字段类型,但需要指定桶的个数

(三)从数量上:

        分区表的分区个数可以增长;分桶表一旦指定不能再增长

(四)从作用上:

        分区表避免全表扫描,根据指定分区列查询指定目录提高查询速度

        分桶表保存分桶查询结果(数据已经按照分桶字段进行hash散列),分桶表数据进行抽样和Join时可以提高MR程序的效率

        分区表就是一种逻辑上的划分,分区字段使用的是表外字段并不保存数据,只是HDFS中一个文件存储目录。在插入数据时指定分区,若该分区原先不存在就是根据分区字段新建一个目录,在该目录下存放数据;若该分区原先存在,则是在原分区目录下添加一份数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值