DistCp :是Hadoop的一个分布式复制程序,它能从文件系统同将大量的文件复制到hadoop中也能是从hadoop中复制文件到分布式文件系统中
例如:% hadoop distcp hdfs://namenode1/foo hdfs://namenode2/bar
将foo文件复制到第二个bar目录下 注意 必须是绝对的路径
当想要在两个同版本之间的hdif的复制的时候,这个时候使用distcp再hdfs协议上复制会出现失败的情况,解决的方法可以使用基于http协议的hftp的只读协议,从源文件读取数据
,这个任务必须运行在目标集群上,从而实现hdfs rpc的兼容,
使用的命令:% hadoop distcp hftp://namenode1:50070/foo hdfs://namenode2/bar
也可以使用较新的 webhdfs协议来替换hftp 来实现在不同版本直接集群数据的复制
% hadoop distcp webhdfs://namenode1:50070/foo webhdfs://namenode2:50070/bar