大数据开发学习之Hive的静态分区与动态分区

124 篇文章 41 订阅 ¥19.90 ¥99.00
本文探讨了Hive的分区策略,包括静态分区和动态分区。静态分区适用于值确定的情况,而动态分区则根据输入数据动态确定分区。在使用动态分区时需要注意,过多的分区会导致reducer资源消耗过大,且在严格模式下,特定类型的查询会被禁止,如未包含分区字段的查询、无条件的笛卡尔积join和无limit的order by查询。
摘要由CSDN通过智能技术生成

分区是hive存放数据的一种方式。将列值作为目录来存放数据,就是一个分区。这样查询时使用分区列进行过滤,只需根据列值直接扫描对应目录下的数据,不扫描其他不关心的分区,快速定位,提高查询效率。分动态和静态分区两种:

1. 静态分区:若分区的值是确定的,那么称为静态分区。新增分区或者是加载分区数据时,已经指定分区名。

create table if not exists day_part1(

  uid int,

  uname string

  )

  partitioned by(year int,month int)

  row format delimited fields terminated by '\t';

  ##加载数据指定分区

  load data local inpath '/root/Desktop/student.txt' into table day_part1 partition(year=2017,month=04);

  ##新增分区指定分区名

  alter table day_part1 add partition(year=2017,month=1) partition(year=2016,month=12);

2. 动态分区:分区的值是非确定的,由输入数据来确定

2.1 动态分区的相关属性:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lmseo5hy

你的鼓励就是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值