前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >hive动态分区相关

hive动态分区相关

作者头像
chimchim
发布2022-11-13 12:59:29
6100
发布2022-11-13 12:59:29
举报
文章被收录于专栏:chimchim要努力变强啊

1.动态分区操作 –动态分区插数 set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict; set hive.exec.max.dynamic.partitions=100000; set hive.exec.max.dynamic.partitions.pernode=100000;

INSERT overwrite table 目标表名 partition(分区字段) select 表字段,分区字段 from 源表;

2.但是如果遇到想批量插入某些分区的数据的情况,可不可以限制分区范围动态分区插入数据呢?下面来测试一下。

1)建两张测试表。 create table db_test.test_dtfq (a string comment ‘’,b bigint comment ‘’)partitioned by (ds string) STORED AS orc; create table db_test.test_dtfq_bak (a string comment ‘’,b bigint comment ‘’)partitioned by (ds string) STORED AS orc; 2)造几条测试数据。 insert into db_test.test_dtfq partition(ds=‘2020-07-21’) values(‘1’,1); insert into db_test.test_dtfq_bak partition(ds=‘2020-06-01’) values(‘4’,4); insert into db_test.test_dtfq_bak partition(ds=‘2020-06-21’) values(‘2’,2); insert into db_test.test_dtfq_bak partition(ds=‘2020-06-31’) values(‘3’,3); 3)动态分区插入数据。 set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict; set hive.exec.max.dynamic.partitions=100000; set hive.exec.max.dynamic.partitions.pernode=100000;

INSERT overwrite table test_dtfq partition(ds) select a ,b , ds from db_test.test_dtfq_bak where ds<=‘2020-06-21’ ; 4)执行查看结果。 select * from db_test.test_dtfq;

结果显而易见,可以限制某些分区动态插入数据。噢耶!!!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-07-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档