hive的分区表和分桶表的初步认识

静态分区表

单分区
必须在表定义时指定对应partition字段
单分区建表语句在这里插入图片描述
上传数据
在这里插入图片描述
双分区
双分区创建语句
在这里插入图片描述
增加分区

alter table fei add partition(dt=10,hour=40);

也就是说添加分区的时候不能直接添加,而是需要将原来的分区也要包含其中,完成相应的排序
删除分区
alter table tablename drop partition (sex='boy')
注:删除分区的时候,会将所有存在的分区都删除

动态分区表

1、修改权限
set hive.exec.dynamic.partiton=true //开启动态分区
2、修改默认状态
set hive.exec.dynamic.partiton.mode=nostrict //默认strict。至少有一个静态分区
跟静态分区创建一样
动态写入数据

from psn21 //已经存在的表格并且要有数据
insert overwrite table pas22 partiton (age,sex)
select * distribute by age,sex 

分桶表

开启分桶

set hive.enforce.bucketing=true

创建分桶的操作
在这里插入图片描述
加载数据

insert into  table psnbucket select id,name,age from psn31

抽样

select * from bucket_table tablesample(bucket 1 out of 4 on age)

在这里插入图片描述
这里就好了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值