【问题标题】:how t restore a hdfs deleted file如何恢复 hdfs 删除的文件
【发布时间】:2021-07-07 22:13:27
【问题描述】:

我被问到以下问题。

采访者:如何恢复hdfs中删除的文件。 我:从垃圾目录我们可以复制/移回原始目录。 采访者:除了垃圾回收还有其他方法吗? 我:我说不。

所以我的问题是,是否真的有任何方法可以恢复已删除的文件或面试官只是要求我测试我的信心。

我发现下面的恢复方式与 hdfs -cp/mv 不同,但它也是从垃圾箱中获取文件。

hadoop distcp -D ipc.client.fallback-to-simple-auth-allowed=true -D dfs.checksum.tpe=CRC32C -m 10 -pb -update /users/vijay/.Trash/ /application/data /维杰;

【问题讨论】:

    标签: hadoop hdfs


    【解决方案1】:

    Hadoop 从 2.1.0 版本开始提供 HDFS 快照(SnapShot)功能 你可以尝试使用它

    首先,创建快照

    hdfs dfsadmin -allowSnapshot /user/hdfs/important
    hdfs dfs -createSnapshot /user/hdfs/important important-snapshot
    

    接下来,尝试删除一个文件

    hdfs dfs -rm -r /user/hdfs/important/important-file.txt
    

    最后,恢复它

    hdfs dfs -ls /user/hdfs/important/.snapshot/
    hdfs dfs -cp /user/hdfs/important/.snapshot/important-snapshot/important-file.txt /user/hdfs/important/
    hdfs dfs -cat /user/hdfs/important/important-file.txt
    

    P.S:这种方式要恢复被删除的文件,必须使用CP命令(不是MV命令)因为快照中删除的文件是只读文件

    希望我的回答能帮到你

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-26
      • 2010-12-23
      • 1970-01-01
      • 1970-01-01
      • 2014-05-11
      • 2014-02-03
      • 2016-03-12
      相关资源
      最近更新 更多