HDFS的垃圾回收机制
Posted 格格巫 MMQ!!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDFS的垃圾回收机制相关的知识,希望对你有一定的参考价值。
hadoop hdfs 垃圾回收机制
何为垃圾回收
开启垃圾回收站 把删除的文件首先放置在回收站中 等待配置的时间结束 进行真正的数据删除
如何开始
vim core-site.xml
scp -r /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/core-site.xml node-3:/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/
垃圾回收机制演示效果
未开启
[root@node-1 ~]# hadoop fs -rm /test/1.txt
Deleted /test/1.txt
开启
hadoop fs -rm /test/1.txt
19/07/18 16:18:17 INFO fs.TrashPolicyDefault: Moved: ‘hdfs://node-1:8020/test/1.txt’ to trash at: hdfs://node-1:8020/user/root/.Trash/Current/test/1.txt
本质是把删除文件 首先移动一个指定的文件夹下面
恢复删除的数据
hadoop fs -mv /user/root/.Trash/Current/test/1.txt /test
跳过垃圾回收 直接删除
skipTrash 选项删除文件,该选项不会将文件发送到垃圾箱。它将从HDFS 中完全删除
配置1
fs.trash.interval=1440
被删除的文件会进入回收站,默认保留1440分钟后完全删除
配置2
fs.trash.checkpoint.interval=60
回收站checkpoint机制:进入回收站的文件首先进入Current目录,然后定期移动到一个时间戳目录,定期的间隔为60分钟
过程
1 删除命令
hdfs dfs rm /tmp/test
2 进入回收站
hdfs://
n
n
/
u
s
e
r
/
nn/user/
nn/user/user_name/.Trash/Current/tmp/test
3 定时检查
hdfs://
n
n
/
u
s
e
r
/
nn/user/
nn/user/user_name/.Trash/Current/tmp/test
移动到
hdfs:// n n / u s e r / nn/user/ nn/user/user_name/.Trash/$yyMMddHH0000/tmp/test
4 定时检查(24小时后)
彻底删除
备注
在 步骤2 和 步骤3 之间,回收站里的数据随时可以恢复,移动会原来的位置即可
要格外注意的是,在 步骤2 时,有可能在操作过程中提示File Not Exists,这时不要惊慌,文件并没有丢失,其实是进行了 步骤3,文件移动到了另一个目录而已
以上是关于HDFS的垃圾回收机制的主要内容,如果未能解决你的问题,请参考以下文章