被误删的HDFS文件如何有效恢复

Posted 格格巫 MMQ!!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了被误删的HDFS文件如何有效恢复相关的知识,希望对你有一定的参考价值。

1.回收站机制恢复

HDFS的回收站机制默认是关闭的,需要我们在配置文件core-site.xml中配置一些参数

2.快照机制恢复

HDFS快照是文件系统的只读时间点副本。可以在文件系统的子树或整个文件系统上创建快照。一个快照是一个全部文件系统、或者某个目录在某一时刻的镜像。

为目录/bigdata/snapshot创建名为snapshot-test的快照:

创建快照:
hdfs dfsadmin -allowSnapshot /bigdata/snapshot
hdfs dfs -createSnapshot /bigdata/snapshot snapshot-test
快照机制进行文件的恢复(要用cp命令,不能用mv,因为快照在这里是只读的):
hdfs dfs -cp /bigdata/snapshot/.snapshot/snapshot-test/test.txt /bigdata/snapshot
3.编辑日志(edits)恢复

文件的恢复存在以下几种情况:(主要和集群的繁忙状态有很大关系。而且通过这种方式恢复误删文件的代价很高)
1)全部恢复
2)部分恢复
3)完全没有回复

NameNode在收到删除命令时,会先将这个命令写到edits中,然后会告诉DataNode执行真正的文件删除操作。所以我们在误删文件后,需要做的是立刻停止NameNode和DataNode节点,阻止删除命令的执行。然后找到执行删除操作发生时间对应的edits日志。

HDFS命令将这个文件转换成可读的xml形式

hdfs oev -i edits_inprogress_0000000007798347582 -o edits_inprogress_0000000007798347582.xml
在edits_inprogress_000000000

以上是关于被误删的HDFS文件如何有效恢复的主要内容,如果未能解决你的问题,请参考以下文章

如何有效恢复误删的HDFS文件

文件被误删怎么找回

怎么恢复误删的文件?

果粉们注意:Mac误删的照片也能恢复

文件误删如何恢复

误删Downloads文件夹后如何快速恢复?