一、HDFS的Trash回收机制
-
Trash回收机制应用场景
-
放置用户手一抖彻底删除数据,当放置到Trash回收站里,还可以再次恢复数据。
-
-
Trash回收站原理
-
当用户默认删除数据的时候,并不是直接从物理磁盘删掉,而只是将文件移动到指定的文件夹下,如果一致不恢复数据(根据默认时间7天等相关参数),Trash数据将从磁盘中抹掉。
-
<property>
<name>fs.trash.interval</name>
<value>10080</value>
<description>Number of minutes after which the checkpoint gets deleted. If zero, the trash feature is disabled.</description>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>0</value>
<description>Number of minutes between trash checkpoints. Should be smaller or equal to fs.trash.interval. If zero, the value is set to the value of fs.trash.interval.</description>
</property>
-
如果使用java API 来删除数据的话,直接将文件从磁盘抹掉,不会移动到Trash回收站中,shell才会。
-
如果不想放到回收站
#直接删除数据,不放在回收站中hdfs dfs -rm-r-skipTrash /config3/yarn-site.xml
-
恢复数据
#将Trash回收站中的指定的数据恢复到指定文件夹中hdfs dfs -mv hdfs://node1:8020/user/root/.Trash/200820154000/config3/yarn-site.xml /config3/
-
清空Trash回收站
hdfs dfs -expunge
总结,Trash回收机制为了保证操作数据,删除数据的时候,防止误删除,所以建议生产环境,在删除数据的时候,不要 skipTrash 跳过Trash回收机制。