hive表分区的修复
hive从低版本升级到高版本或者做hadoop的集群数据迁移时,需要重新创建表和表分区,由于使用的是动态分区,所以需要重新刷新分区表字段,否则无法查看数据。
在hive中执行中以下命令即可自动更新元数据中的表分区:
MSCK REPAIR TABLE 表名;
这个更高级,如果有直接删除hdfs文件,导致查询报错时,使用sync可以修复两边的不一致性。
MSCK [REPAIR] TABLE table_name [ADD/DROP/SYNC PARTITIONS];
后记:
今天同事在测试从其他集群移过来的数据时,发现使用count统计记录数时显示为0.
由于没有分区字段,即是用了msck也不行,后来解决的方法是:
使用load命令再重新加载一次,load的源路径和目标路径可以相同。
本文来自博客园,作者:硅谷工具人,转载请注明原文链接:https://www.cnblogs.com/30go/p/8241883.html