我有1個HDFS和我的本地系統,我正在執行我的程序以在同一個hdfs系統中執行副本。 像:hadoop fs -cp /user/hadoop/SrcFile /user/hadoop/TgtFile
使用FileUtil API在同一hdfs中複製文件需要的時間太長
我使用:
FileUtil.copy(FileSystem srcFS,
FileStatus srcStatus,
FileSystem dstFS,
Path dst,
boolean deleteSource,
boolean overwrite,
Configuration conf)
但奇怪的事情發生了,當我在命令行做拷貝,它只是花一點時間來複制,但是當我做它編程需要10 - 15分鐘來複制190 MB文件。
對我來說,它看起來像是通過本地系統流式傳輸數據,而不是直接流式傳輸,因爲目標位置與源文件系統位於同一文件系統中。
糾正我,如果我錯了,也幫我找出最好的解決方案。