有没有一种简单的方法可以在Java中将HDFS目录复制到另一个目录?
例如,如何将 /user/abc/pudding 的内容移动到 /user/def/pudding?
我正在寻找一些相当于 UNIX cp 命令的 HDFS,我可以使用 Java 以编程方式执行该命令。
注意:我知道FileSystem,但它似乎只允许我从本地计算机复制到 HDFS?
尝试FileUtil中的复制方法之一。例如:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.FileUtil;
Run Code Online (Sandbox Code Playgroud)
Configuration conf = new Configuration(); // if necessary
FileSystem fileSystem = FileSystem.get(conf); // if necessary
FileUtil.copy(
fileSystem, new Path("/path/to/src"),
fileSystem, new Path("/path/to/dst"),
false, // move if true
conf
);
Run Code Online (Sandbox Code Playgroud)