本文删除的是hive的分区表,parquet格式snappy压缩。有分桶,现在做一下数据的恢复
-
首先你要知道你的hdfs回收站是否开启
-
找到你的回收站里的刚才删除的hive表数据的文件,前提是你的表示drop的,而不是truncate的,truncate的表数据我暂时不知道能不能恢复

我们hive表删除的数据是在 标记1 的这个文件里(Current)这个需要看你的配置和个人的登陆服务器情况,但是一定不会在标记2这里
-
新建原表
-
CREATE TABLE `hive_national_f4_engine_data`( `rowkey` string COMMENT 'rowkey', `vin` string COMMENT 'vin', `vid` int COMMENT 'vid', `collecttime` string COMMENT '采集时间', `receivetime` string COMMENT '接收时间', `protocoltype` string COMMENT '端口号', `speed` int COMMENT '车速', `atmosphericpressure` int COMMENT '大气压', `outputtorqueofengine` int COMMENT '发动机净输出扭矩', `frictiontorque` int COMMENT '摩擦扭矩', `enginerotation` int COMMENT '发动机转速', `enginefuelflow` int COMMENT '发动机燃料流量', `u

当误删Hive分区表后,如果开启了HDFS回收站,并且是drop操作而非truncate,可以尝试恢复。首先确认回收站中存在删除的文件,然后新建原表并移动回收站中的文件到Hive数据位置。最后修复表元数据,即可完成恢复。但若忘记建表语句,则无法恢复。
最低0.47元/天 解锁文章
3850

被折叠的 条评论
为什么被折叠?



