集群之间/集群内的 Distcp 是 Map-Reduce 作业。我的假设是,它在输入拆分级别复制文件,有助于提高复制性能,因为一个文件将由多个并行处理多个“片段”的映射器复制。但是,当我浏览 Hadoop Distcp 的文档时,似乎 Distcp 只能在文件级别上工作。请参考这里:hadoop.apache.org/docs/current/hadoop-distcp/DistCp.html
根据 distcp doc,distcp 只会拆分文件列表,而不是文件本身,并将列表的分区提供给映射器。
谁能告诉这究竟是如何工作的?
- 附加问题:如果一个文件只分配给一个映射器,映射器如何在它运行的一个节点上找到所有输入拆分?