HDFS的快照講解
一個(gè)snapshot(快照)是一個(gè)全部文件系統(tǒng)、或者某個(gè)目錄在某一時(shí)刻的鏡像,使用vmware類似軟件的同學(xué)指定,快照可以為虛擬機(jī)保存某個(gè)狀態(tài),如果做了更改,或者系統(tǒng)被折騰壞,還有個(gè)復(fù)原的操作。
快照應(yīng)用在如下場景中:
防止用戶的錯(cuò)誤操作; 備份:給hdfs目錄做快照,然后復(fù)制快照里面的文件到備份; 試驗(yàn)/測試 災(zāi)難恢復(fù)
HDFS的快照操作
這里測試的Hadoop3.0版本,也是我的線上版本。
開啟快照
hdfs?dfsadmin?-allowSnapshot?/data/test/test_snapshot
[hdfs@cdh-003?~]$?hdfs?dfs?-ls?/data/test/test_snapshot
-rw-r--r--???2?hdfs?supergroup?????????88?2021-10-08?16:59?/data/test/test_snapshot/ods_user1.txt
這里開啟目錄/data/test/test_snapshot快照功能,該目錄當(dāng)前有一個(gè)文件ods_user1.txt。
創(chuàng)建快照
給目錄/data/test/test_snapshot創(chuàng)建了一個(gè)快照,名為backup01。
hdfs?dfs?-createSnapshot?/data/test/test_snapshot?backup01
[hdfs@cdh-003?~]$?hdfs?dfs?-ls?/data/test/test_snapshot/.snapshot/backup01
Found?1?items
-rw-r--r--???2?hdfs?supergroup?????????88?2021-10-08?16:59?/data/test/test_snapshot/.snapshot/backup01/ods_user1.txt
可以看到實(shí)際上是在開啟快照的目錄下新建了一個(gè)文件夾.snapshot,下面有個(gè)目錄backup01,里面有一個(gè)文件,相當(dāng)于復(fù)制了一份文件。
查看快照
hdfs?lsSnapshottableDir
再上傳一個(gè)文件
hdfs?dfs?-put?data/urls.txt?/data/test/test_snapshot
再創(chuàng)建一個(gè)快照
?hdfs?dfs?-createSnapshot?/data/test/test_snapshot?backup02
這里又新建了一個(gè)快照backup02,.snapshot下面有兩個(gè)目錄,分別是backup01和backup02。
[hdfs@cdh-003?~]$?hdfs?dfs?-ls?/data/test/test_snapshot/.snapshot
Found?3?items
drwxr-xr-x???-?hdfs?supergroup??????????0?2021-10-08?17:04?/data/test/test_snapshot/.snapshot/backup01
drwxr-xr-x???-?hdfs?supergroup??????????0?2021-10-08?17:12?/data/test/test_snapshot/.snapshot/backup02
對比快照
因?yàn)楹髞碛稚蟼髁艘粋€(gè)文件,所以快照backup02下面有2個(gè)文件了,比backup01多一個(gè)文件urls.txt。
[hdfs@cdh-003?~]$?hdfs?snapshotDiff?/data/test/test_snapshot?backup01?backup02
Difference?between?snapshot?backup01?and?snapshot?backup02?under?directory?/data/test/test_snapshot:
M?.
+?./urls.txt
恢復(fù)快照如果不小心把文件刪除了,這個(gè)文件就被移動(dòng)到回收站(如果開啟了回收站),如果回收站到期清理了或者沒有開啟回收站,這個(gè)時(shí)候快照的作用就發(fā)揮出來了,直接 cp過去。
hdfs?dfs?-cp?/data/test/test_snapshot/.snapshot/backup01/ods_user1.txt?/data/test/test_snapshot
猜你喜歡
mysql自增id用完了怎么辦?
Hadoop 數(shù)據(jù)遷移用法詳解
Hbase修復(fù)工具Hbck
數(shù)倉建模分層理論
一文搞懂Hive的數(shù)據(jù)存儲與壓縮
大數(shù)據(jù)組件重點(diǎn)學(xué)習(xí)這幾個(gè)
評論
圖片
表情
