Hive外部表 - 删除表/分区和删除数据

时间:2017-12-04 18:33:19

标签: azure hive hdfs hdinsight

当删除配置单元外部表或分区时,它仅从配置单元播放器中删除元数据。 HDFS / Azure存储帐户中的基础数据不会被删除。删除表/分区时删除数据有哪些选项?

1 个答案:

答案 0 :(得分:0)

我一直在做一些研究,这些是我的发现

选项1: 放下桌子/隔板&如果使用HDInsight,请删除HDFS / Azure Blob存储中的相应文件。

选项2: 更新hive Metastore以使table属性成为托管属性。删除分区并更改回table属性external,如下所示。

ALTER TABLE poc_drop_partition SET TBLPROPERTIES('EXTERNAL'='FALSE') ;
ALTER TABLE poc_drop_partition DROP IF EXISTS PARTITION(partition_date <= '2017-10-11');
ALTER TABLE poc_drop_partition SET TBLPROPERTIES('EXTERNAL'='TRUE') ;

类似地,DROP表语句将删除表和基础数据文件。

有没有更好的方法来做到这一点。我知道JIRA中有TRUNCATE功能可供使用。