2

有没有办法在使用以下命令从 Hive 中的托管表删除分区时跳过垃圾箱?

ALTER TABLE <table> DROP PARITION (<partition_name>)

类似于我们在使用 hadoop fs 命令删除文件时所做的,例如 hadoop fs -rmr -skipTrash

4

4 回答 4

2

试试这套。

设置 hive.warehouse.data.skiptrash=true;

于 2017-01-16T17:32:16.913 回答
1

如果有帮助,这里是一个用于在删除表时跳过垃圾的补丁。

https://issues.apache.org/jira/browse/HIVE-6469 它尚未被 hive 社区接受,但补丁应该适用于 HIVE-0.12 没有任何问题。HIVE-0.13 和主干的补丁也将在那里。希望能帮助到你。

于 2014-04-22T02:21:02.570 回答
1

No you can't使用当前可用的配置单元版本来做到这一点。数据总是被移到垃圾箱,元数据永远丢失。

但是,默认情况下应将垃圾箱配置为在一天后删除数据。我想这对于大多数情况应该没问题。

于 2013-05-01T15:23:41.013 回答
1

尝试:

ALTER TABLE tablename DROP IF EXISTS PARTITION partionspec PURGE
于 2017-10-09T07:08:42.547 回答