Hadoop之回收站


一、回收站簡介:

    在HDFS里,刪除文件時,不會真正的刪除,其實是放入回收站/trash,回收站里的文件可以快速恢復。

    可以設置一個時間閥值,當回收站里文件的存放時間超過這個閥值或是回收站被清空時,文件才會被徹底刪除,並且釋放占用的數據塊。

二、實例:

    Hadoop的回收站trash功能默認是關閉的,所以需要在core-site.xml中手動開啟。

1、修改core-site.xml,增加:

<property> 
<name>fs.trash.interval</name> 
<value>1440</value> 
<description>Number of minutes between trash checkpoints. 
If zero, the trash feature is disabled. 
</description> 
</property>

默認是0,單位是分鍾,這里設置為1天。
刪除數據rm后,會將數據move到當前文件夾下的.Trash目錄。

2、測試

1)、新建目錄input

hadoop/bin/hadoop fs -mkdir input

2)、上傳文件

root@master:/data/soft# hadoop/bin/hadoop fs -copyFromLocal /data/soft/file0* input

3)、刪除目錄input

[root@master data]# hadoop fs -rmr input 
Moved to trash: hdfs://master:9000/user/root/input

4)、查看當前目錄

[root@master data]# hadoop fs -ls 
Found 2 items 
drwxr-xr-x - root supergroup 0 2011-02-12 22:17 /user/root/.Trash

發現input刪除了,多了一個目錄.Trash
5)、恢復剛剛刪除的目錄

[root@master data]# hadoop fs -mv /user/root/.Trash/Current/user/root/input /user/root/input

6)、查看恢復的數據

[root@master data]# hadoop fs -ls input 
Found 2 items 
-rw-r--r-- 3 root supergroup 22 2011-02-12 17:40 /user/root/input/file01 
-rw-r--r-- 3 root supergroup 28 2011-02-12 17:40 /user/root/input/file02

7)、刪除.Trash目錄(清理垃圾)

[root@master data]# hadoop fs -rmr .Trash 
Deleted hdfs://master:9000/user/root/.Trash

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM