如何轻松地恢复分区。以下是场景:在现有外部表“t”上有“n”个分区删除表“t”重新创建的表't'//注意:相同的表,但排除了某些列如何恢复步骤1中表“t”的“n”分区?我可以通过编写一些脚本来手动更改表以添加“n”分区。但那很乏味。有没有内置的东西来恢复这些分区?
0s7z1bwu1#
元数据不会保存在垃圾箱中,而是被永久删除;您将无法还原删除的表、分区等的元数据。请参阅:http://www.cloudera.com/documentation/archive/cdh/4-x/4-7-1/cdh4-installation-guide/cdh4ig_hive_trash.html
yws3nbqq2#
当分区目录仍然存在于hdfs中时,只需运行以下命令:
MSCK REPAIR TABLE table_name;
它根据表目录中存在的内容将分区定义添加到元存储中。
2条答案
按热度按时间0s7z1bwu1#
元数据不会保存在垃圾箱中,而是被永久删除;您将无法还原删除的表、分区等的元数据。请参阅:http://www.cloudera.com/documentation/archive/cdh/4-x/4-7-1/cdh4-installation-guide/cdh4ig_hive_trash.html
yws3nbqq2#
当分区目录仍然存在于hdfs中时,只需运行以下命令:
它根据表目录中存在的内容将分区定义添加到元存储中。