我想在相同的 HDFS 中复制文件,就像将文件从 HDFS://abc:9000/user/a.txt 复制到 HDFS://abc:9000/user/123/
我可以通过使用 JAVA API 来做到这一点吗?谢谢
最佳答案
FileUtil 提供了一种复制文件的方法。
Configuration configuration = new Configuration();
configuration.set("fs.defaultFS", "hdfs://abc:9000");
FileSystem filesystem = FileSystem.get(configuration);
FileUtil.copy(filesystem, new Path("src/path"), filesystem, new Path("dst/path"), false, configuration);
如果您需要将其复制到另一个集群,只需创建一个新的
Configuration
和 setup 以及新的 FileSystem
。关于hadoop - 如何使用 JAVA API 在 HDFS 中移动或复制文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38141516/