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

63 篇文章 40 订阅 ¥19.90 ¥99.00
23 篇文章 2 订阅

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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值