首页 文章

从 HDFS 删除分区目录,它会反映在配置单元表中吗?

提问于
浏览
1

可以说我用年,月,日的分区列创建了一个配置单元表,如果我从 hdfs 中删除了该分区,那么结果是否会反映在配置单元表中

2 回答

  • 0

    是。分区数据将消失。
    元存储仍将保留分区信息(元数据),您可以使用show partition mytable查看它。
    您可以使用msck repair mytable找到需要删除的分区。
    您可以使用alter table mytable drop partition (...)删除分区

  • 0

    Hive 表仍将显示分区,您必须手动删除在 HDFS 上删除的分区(或删除和 re-create 表)并运行 MSCK。

    命令:

    如果您打算更改表并删除所有已删除的分区,

    ALTER TABLE table_name DROP [IF EXISTS] PARTITION partition_spec[, PARTITION partition_spec, ...]
      [IGNORE PROTECTION] [PURGE];            -- (Note: PURGE available in Hive 1.2.0 and later, IGNORE PROTECTION not available 2.0.0 and later)
    

    我将使用 drop 和 re-create 表,然后运行 MSCK。

    要将所有现有分区添加到表中,

    msck repair table <table_name>
    

    或者,您可以使用ALTER TABLE删除所有分区,然后运行MSCK命令。

相关问题