【问题标题】:drop table command with partitions column in hive在配置单元中使用分区列删除表命令
【发布时间】:2018-10-08 06:34:46
【问题描述】:

hive 中的drop table 命令也会删除分区吗?

我只是想知道,否则我们必须为此使用alter table table_name drop partition() 命令?

【问题讨论】:

    标签: hive hiveddl


    【解决方案1】:

    DROP TABLE 语句总是删除MANAGEDEXTERNAL 表的分区元数据,因为没有表就不能存在分区。但是对于EXTERNAL 表,它不会删除文件系统中的数据。

    如果表是MANAGED,那么DROP TABLE 将删除表位置的表和分区元数据和数据,所有表位置包括分区子文件夹。

    如果表是EXTERNAL,它将只删除元数据和分区定义中的表定义,包含数据的表位置,包括所有分区文件夹将保持原样,您可以在同一位置再次创建表并recover partitions.

    同样适用于DROP PARTITION:如果表是MANAGED,它将删除分区元数据以及分区子文件夹。如果表为EXTERNAL,则保留有数据的分区子文件夹,只删除分区元数据。

    所以,对于MANAGED表,你不需要删除表或分区后删除数据。

    有关详细信息,另请参阅 DROP TABLEDROP PARTITION 手册。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-02-13
      • 1970-01-01
      • 1970-01-01
      • 2017-02-08
      • 2017-09-17
      • 2016-04-05
      • 2016-03-15
      • 1970-01-01
      相关资源
      最近更新 更多