gpt4 book ai didi

hive - 删除 Hive 表中的所有分区?

转载 作者:行者123 更新时间:2023-12-01 21:38:55 32 4
gpt4 key购买 nike

如何删除 Hive 表中当前加载的所有分区?

我可以使用 alter table <table> drop partition(a=, b=...); 删除单个分区

我可以使用恢复分区语句加载所有分区。但我似乎无法删除所有分区。

我使用的是 EMR 支持的最新 Hive 版本 0.8.1。

最佳答案

从版本 0.9.0 开始,您可以使用 comparators在删除分区语句中,可用于一次删除所有分区。

一个例子,取自drop_partitions_filter.q测试用例:

create table ptestfilter (a string, b int) partitioned by (c string, d string);
alter table ptestfilter add partition (c='US', d=1);
alter table ptestfilter add partition (c='US', d=2);
alter table ptestFilter add partition (c='Uganda', d=2);
alter table ptestfilter add partition (c='Germany', d=2);
alter table ptestfilter add partition (c='Canada', d=3);
alter table ptestfilter add partition (c='Russia', d=3);
alter table ptestfilter add partition (c='Greece', d=2);
alter table ptestfilter add partition (c='India', d=3);
alter table ptestfilter add partition (c='France', d=4);

show partitions ptestfilter;
alter table ptestfilter drop partition (c>'0', d>'0');
show partitions ptestfilter;

关于hive - 删除 Hive 表中的所有分区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15492394/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com