Hive 从配置单元表中删除分区是否会删除它';什么是分区?

Hive 从配置单元表中删除分区是否会删除它';什么是分区?,hive,hive-partitions,Hive,Hive Partitions,我有一个外部蜂巢表,它有像year=2017、year=2018这样的分区,在它们里面我有year=2017和year=2018每个月的分区 我的问题是: 如果我删除year=2017的分区,它会删除year=2017的所有月份分区吗 如果是内部表,会发生什么情况 是的,如果是内部表,hive会删除所有月份分区/子分区,包括文件系统(HDFS..etc)中的数据 对于外部表,数据不会从文件系统(HDFS)中删除,但hive会从hive表元数据中删除分区信息。谢谢@Shu。还有一个疑问是,如果我不

我有一个外部蜂巢表,它有像year=2017、year=2018这样的分区,在它们里面我有year=2017和year=2018每个月的分区

我的问题是:

  • 如果我删除year=2017的分区,它会删除year=2017的所有月份分区吗

  • 如果是内部表,会发生什么情况


  • 是的,如果是内部表,hive会删除所有月份分区/子分区,包括文件系统(HDFS..etc)中的数据


    对于外部表,数据不会从文件系统(HDFS)中删除,但hive会从hive表元数据中删除分区信息。

    谢谢@Shu。还有一个疑问是,如果我不在hive CLI上运行drop partition命令而直接删除2017 HDFS目录,更改是否也会自动反映在表中?它还会在hive meratada store(我猜是derby)中引起任何类型的问题。如果我们直接删除HDF,即使表是外部/内部表也无所谓,hive在从hive运行msck repair table/drop partition语句之前不知道已删除的目录。问题是作业将无法找到目录(已在HDFS中删除)