例如,如果M Mappers的原始数据大小为N,并且从所有Mappers到Reducers的总传输时间是T.现在我想在Mappers中将数据大小加倍到2N,是否有传输的近似估计时间T'(我认为T'必须小于2T),所以我的想法是使用对数曲线来描述这条曲线,但我不确定它是否正确。
答案 0 :(得分:0)
我假设您的输入来自HDFS(?) 我还假设您的输入数据已经放在HDFS上,所以我们不是在讨论将输入数据从本地文件存储器传输到HDFS的时间。 我假设您的输入大小N是所有输入文件组合的总大小。 我假设M是映射任务的数量(基于输入文件被分解的输入拆分数)。 如果我们谈论map任务和reduce任务之间的传输,那么我们需要知道map操作的输出大小。通常,此输出的大小与输入N的大小无关。
即使我们知道在地图任务和减少任务之间需要传输多少总数据,但要求传输时间并不一定有意义,因为这种传输可以与地图同时发生并减少任务执行,它将是各个地图任务之间的一系列单独传输,并减少每个在不同时间点发生的任务。写得好的hadoop应用程序的目标是通过重叠计算和通信来隐藏这个传输时间。