HDFS文件删除后,HIVE元数据还存在的问题

一.背景

手动在hdfs上删除了一个表的分区数据(inc_day=2023-08-30),当查询这个表这个分区的数据时报错文件不存在

二.原因

即HDFS数据删除了,但是hive metastore元数据却没有更新,使用show partitions tablename 发现该分区还存在

三.解决办法

  • 查阅资料发现hive的msck命令只能修复新增的分区

    msck repair table tablename;

  • 可以使用以下命令解决

    alter table tableneme drop partition(inc_day='2023-08-30')
    对应有条件清理对应分区的,可以使用规则判断,或者正则
    alter table tableneme partition(inc_day < '2023-08-30')

相关推荐
Francek Chen14 小时前
【大数据处理与分析】数据仓库Hive:08 Impala
数据仓库·hive·hadoop·数据分析·impala
ha_lydms1 天前
Window Functions(窗口函数)
大数据·数据仓库·hadoop·spark·数据处理·dataworks·maxcompute
大鳥2 天前
JSON 解析最佳实践:从入门到生产级优化
hive·sql·spark·json
ha_lydms2 天前
Xml Functions(XML 函数)
xml·大数据·hadoop·spark·数据处理·dataworks·maxcompute
ha_lydms2 天前
Vector Functions(向量函数)
大数据·hadoop·spark·数据处理·dataworks·maxcompute·数据中台
ha_lydms2 天前
阿里云大数据组件
大数据·hadoop·阿里云·spark·云计算·数据处理·dataworks
ruxshui3 天前
Hadoop 生产运维实战手册
大数据·运维·hadoop
泡干脆面就番茄3 天前
Hive窗口函数:从原理到三大面试题
大数据·数据仓库·hive·hadoop
程序员梅雨3 天前
Hive面试总结
hive·hadoop·面试
ha_lydms5 天前
Datetime Functions(日期时间函数)
大数据·hadoop·阿里云·spark·数据处理·dataworks·maxcompute