官网:https://hadoop.apache.org/docs/stable/hadoop-distcp/DistCp.html
我在数据迁移的时候使用了这个参数,可以提高2-3倍的速度,具体的参数解析在下面
最好还是参看官网
默认情况下,DistCp尝试比较每个映射的大小,以使每个副本大致复制相同数量的字节。请注意,文件是最精细的级别,因此,增加同时复印机(即地图)的数量可能并不总是会增加同时复印的数量或整体吞吐量。
新的DistCp还提供了“动态”大小映射的策略,与较慢的节点相比,较快的数据节点可复制更多字节。使用-strategy dynamic(在体系结构中说明),而不是将固定的源文件集分配给每个映射任务,而是将文件分成几组。集的数量超过地图的数量,通常是2-3倍。每个地图都会拾取并复制块中列出的所有文件。当一个块用完时,将获取并处理一个新的块,直到不再剩余任何块为止。
通过不将源路径分配给固定映射,与较慢的节点相比,较快的映射任务(即数据节点)能够消耗更多的块,从而复制更多的数据。尽管此分布不均匀,但对于每个映射器的容量而言,这是公平的。
动态策略由DynamicInputFormat实现。在大多数情况下,它都具有出色的性能。
对于长时间运行和定期运行的作业,建议将映射数调整为源群集和目标群集的大小,副本的大小以及可用带宽