最初我创建了一个 Hive external 下表位置hdfs://user/temp2然后我把地点改成如下。hdfs://user/temp3现在即使跑了 MSCK repair table 我的table指向老地方(hdfs://user/temp2)表是动态分区的。
Hive external
MSCK repair table
u2nhd7ah1#
问题是您的表是分区的,分区有自己的旧位置。对于外部表,最简单的方法是删除并创建表+修复表,这将在新位置子目录的顶部创建分区。要完成的步骤是:
DROP TABLE abc; CREATE EXTERNAL TABLE abc ... location 'hdfs://user/temp3'; MSCK REPAIR TABLE abc;
1条答案
按热度按时间u2nhd7ah1#
问题是您的表是分区的,分区有自己的旧位置。对于外部表,最简单的方法是删除并创建表+修复表,这将在新位置子目录的顶部创建分区。
要完成的步骤是: