1
我在hdfs中有一個目錄,每兩天獲取一次文件。我想將這個目錄中的所有文件複製到另一個文件中,這樣如果今天有新文件出現,我希望將文件複製到重複目錄中。將數據從一個HDFS目錄複製到另一個連續
我們如何在Hdfs中做到這一點。
我知道我們可以在linux中使用rsync來做到這一點。在Hdfs中也有類似的方法嗎?
我在hdfs中有一個目錄,每兩天獲取一次文件。我想將這個目錄中的所有文件複製到另一個文件中,這樣如果今天有新文件出現,我希望將文件複製到重複目錄中。將數據從一個HDFS目錄複製到另一個連續
我們如何在Hdfs中做到這一點。
我知道我們可以在linux中使用rsync來做到這一點。在Hdfs中也有類似的方法嗎?
不,HDFS沒有可用的文件同步方法。您必須手動或通過任何調度程序(cron
)執行hdfs dfs -cp
或hadoop distcp
。
如果文件數量多,distcp
是首選。如果源和目標的大小,塊大小,或校驗和不同
hadoop distcp -update <src_dir> <dest_dir>
的-update
標誌將覆蓋。
'distcp''-update'就像你說的覆蓋整個目錄。有沒有辦法只檢查是否只有變化,如果有變化,然後只更新那些變化 – User12345
不,它只覆蓋更改。如果源有10個文件,並且目標已經有5個文件,distcp將只寫剩餘的5個文件到目的地。這個更新標誌將檢查那些已經存在的5個文件中是否有更新,如果有更新會被覆蓋或者被跳過。 – franklinsijo