有没有一种简单的方法在Java中将HDFS目录复制到另一个目录?
例如,如何将/user/abc/pudding的内容移动到/user/def/pudding?
我正在寻找一些HDFS等效于UNIX的cp命令,可以用Java编程实现。
注意:我知道FileSystem,但它似乎只允许我从本地机器复制到HDFS?
有没有一种简单的方法在Java中将HDFS目录复制到另一个目录?
例如,如何将/user/abc/pudding的内容移动到/user/def/pudding?
我正在寻找一些HDFS等效于UNIX的cp命令,可以用Java编程实现。
注意:我知道FileSystem,但它似乎只允许我从本地机器复制到HDFS?
尝试使用FileUtil中的复制方法之一。例如:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.FileUtil;
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
);
我记得FileSystem可以将HDFS中的目录复制到本地文件系统