hive 分区表select全部数据_Hive分区表实战

本文详细介绍了Hive中的分区表概念,包括静态分区和动态分区的创建、插入数据、应用场景及修改分区的方法。通过分区可以提高查询效率,静态分区适用于值确定的情况,动态分区适用于值不确定的情况,但在使用动态分区时需要注意设置最大动态分区数量。
摘要由CSDN通过智能技术生成

1. Hive分区表Partition和Bucket,为了提升查询效率,前者是粗粒度的划分,后者是细粒度的划分。

建表语句中使用partitioned by指定分区字段

分区表有静态分区和动态分区两种。若分区的值是确定的,那么称为静态分区字段,反之,若分区的值是非确定的,那么称之为动态分区字段。默认是采用静态分区。

2. 静态分区

应用场景1

每天有很多不同的商店各自会产生成百上千的销售记录,当天的数据当天加载。那么这是一个最简单的示例,每天产生的这些销售记录中,某些客户的销售额如何插入到已有的数仓的表中去。日期是确定的。create external table if not exists sp_trans(cust_no string comment '客户号',shop_no string comment '商铺号',trans_amt double comment '交易额',trans_date string comment '交易日期',etl_ts timestamp comment 'etl时间戳')partitioned by (dt string)row format delimited fields terminated by ',';/* 将数据插入到某一个确定的日起分区中去 */insert into sp_trans partition (dt='2016-01-13')select * from transaction where trans_date='2016-01-13';

应用场景2

加入一个分区字段,商铺号。分区字段之间具有层级关系。create external table if not exists sp_trans2(cust_no s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值