MSCK修复HIVE外部表格

时间:2018-06-13 08:03:52

标签: hive

我每天都会将数据输入HDFS。 从数据到HDFS我生成按日期分区的Hive外部表。 我的问题如下,我应该在每次数据摄取后运行MSCK REPAIR TABLE tablename,在这种情况下我必须每天运行命令。 或者在创建表格时只运行一次就足够了。 非常感谢您的回答

祝你好运

1 个答案:

答案 0 :(得分:2)

只有在更改外部表的结构分区时才会运行MSCK REPAIR TABLE。此命令更新表的元数据。

通常会发生的一个例子,例如

您使用字段dt表示分区表的日期。

  • 昨天,您插入了一些dt=2018-06-12的数据,然后您应该运行MSCK REPAIR TABLE来更新元数据,以告知配置单元了解新分区dt=2018-06-12
  • 今天,您插入一些dt=2018-06-13的数据,然后您应该运行MSCK REPAIR TABLE来更新元数据,以告知配置单元知道新的分区dt=2018-06-13