Hadoop回收站及fs.trash引數詳解
前言:
- Linux系統裡,個人覺得最大的不方便之一就是沒有回收站的概念。rm -rf很容易造成極大的損失。而在Hadoop或者說HDFS裡面,有trash(回收站)的概念,可以使得資料被誤刪以後,還可以找回來。
- Hadoop裡的trash選項預設是關閉的,所以如果要生效,需要提前將trash選項開啟,修改conf裡的core-site.xml即可,下面我們測試下開啟前後的區別:
點選(此處)摺疊或開啟
-
[hadoop@hadoop000 ~]$ hdfs dfs -put test.log /
-
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
-
Found 3 items
-
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:49 /test.log
-
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
-
drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
-
# 刪除test.log 注意提示
-
[hadoop@hadoop000 ~]$ hdfs dfs -rm -r /test.log
-
Deleted /test.log
-
# 重新檢視 發現test.log被刪除
-
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
-
Found 2 items
-
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
- drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
點選(此處)摺疊或開啟
-
[hadoop@hadoop000 hadoop]$ pwd
-
/opt/software/hadoop-2.8.1/etc/hadoop
-
# 增加fs.trash引數配置 開啟trash(程式不需重啟)
-
[hadoop@hadoop000 hadoop]$ vi core-site.xml
-
<property>
-
<name>fs.trash.interval</name>
-
<value>1440</value>
-
</property>
-
<property>
-
<name>fs.trash.checkpoint.interval</name>
-
<value>1440</value>
-
</property>
-
# fs.trash.interval是在指在這個回收週期之內,檔案實際上是被移動到trash的這個目錄下面,而不是馬上把資料刪除掉。等到回收週期真正到了以後,hdfs才會將資料真正刪除。預設的單位是分鐘,1440分鐘=60*24,剛好是一天;fs.trash.checkpoint.interval則是指垃圾回收的檢查間隔,應該是小於或者等於fs.trash.interval。
-
# 參考官方文件:http://hadoop.apache.org/docs/r2.8.4/hadoop-project-dist/hadoop-common/core-default.xml
-
-
[hadoop@hadoop000 ~]$ hdfs dfs -put test.log /
-
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
-
Found 3 items
-
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:54 /test.log
-
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
-
drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
-
# 刪除test.log 注意提示的不同
-
[hadoop@hadoop000 ~]$ hdfs dfs -rm -r /test.log
-
18/05/23 16:54:55 INFO fs.TrashPolicyDefault: Moved: 'hdfs://192.168.6.217:9000/test.log' to trash at: hdfs://192.168.6.217:9000/user/hadoop/.Trash/Current/test.log
-
# 發現刪除的檔案在回收站裡
-
[hadoop@hadoop000 ~]$ hdfs dfs -ls /user/hadoop/.Trash/Current
-
Found 1 items
-
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:54 /user/hadoop/.Trash/Current/test.log
-
# 恢復誤刪除的檔案
-
[hadoop@hadoop000 ~]$ hdfs dfs -mv /user/hadoop/.Trash/Current/test.log /test.log
-
[hadoop@hadoop000 ~]$ hdfs dfs -ls /
-
Found 3 items
-
-rw-r--r-- 1 hadoop supergroup 34 2018-05-23 16:54 /test.log
-
drwx------ - hadoop supergroup 0 2018-05-19 15:48 /tmp
- drwxr-xr-x - hadoop supergroup 0 2018-05-19 15:48 /user
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31401187/viewspace-2155457/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- curl常用引數詳解及示例
- ab壓力測試命令及引數詳解
- OGG引數詳解
- ajax 引數詳解
- 【RECYCLEBIN】Oracle回收站詳解Oracle
- lsblk命令引數詳解
- tar命令引數詳解
- Dockerfile - 引數與詳解Docker
- 函式引數詳解函式
- Flink Checkpoint 引數詳解
- Nginx編譯引數大全 configure引數中文詳解Nginx編譯
- Oracle GoldenGate常用引數詳解OracleGo
- oracle rac 核心引數詳解Oracle
- 常用的 wget 引數詳解wget
- variables_order引數詳解
- Prometheus hashmod 配置引數詳解Prometheus
- pg_settings引數詳解
- SQL*Plus Set引數詳解SQL
- find 命令的引數詳解
- Hadoop Shuffle詳解Hadoop
- ORACLE filesystemio_options引數詳解及IO場景測試Oracle
- Linux下安裝Hadoop 詳解及WordCount執行LinuxHadoop
- Pandas read_csv 引數詳解
- Nginx 配置檔案引數詳解Nginx
- Redis日常運維-引數詳解Redis運維
- expdp/impdp 詳細引數解釋
- ansible.cfg 配置引數詳解
- JQuery中$.ajax()方法引數詳解jQuery
- plt.figure()引數使用詳解
- caffe網路各層引數詳解
- composer.json 檔案引數詳解JSON
- consul配置引數大全、詳解、總結
- MySQL relay log 詳細引數解釋MySql
- 定時任務@Scheduled引數詳解
- 轉載-詳解功率MOS管引數
- C語言可變引數詳解C語言
- ORACLE中Cursor_sharing引數詳解Oracle
- SwaggerAPI註解詳解,以及註解常用引數配置SwaggerAPI