我阅读了Amazon's S3DistCp的文档 - 它说,
"在复制操作期间,S3DistCp会暂存一份临时副本 集群中的HDFS输出。必须有足够的自由空间 HDFS用于暂存数据,否则复制操作失败。在 另外,如果S3DistCp失败,它不会清除临时HDFS 因此,您必须手动清除临时文件。对于 例如,如果将500 GB的数据从HDFS复制到S3,则S3DistCp将复制 整个500 GB进入HDFS的临时目录,然后上传了 从临时目录"。
到Amazon S3的数据
如果你有一个大的HDFS集群,这并不是无关紧要的。是否有人知道常规Hadoop DistCp是否具有将文件暂存以复制到临时文件夹中的相同行为?
答案 0 :(得分:0)
Distcp不使用临时文件夹而是使用distcp将Map Reduce用于inter / intra集群中的文件副本。同样用于HDFS到S3。如果由于某种原因失败,AFAIK distcp不会使整堆文件副本失败。
如果需要发生总共500 GB的文件复制,并且如果已经复制了200 GB的文件并且distcp失败,则在S3中有200 GB的数据。当您尝试再次重新运行distcp作业时,它将跳过现有文件。
有关命令的更多信息,请参阅distcp指南here