是否有数学模型来描述hadoop的运行时间和输入数据大小之间的关系?

时间:2013-05-18 15:30:14

标签: hadoop

在hadoop集群中,是否有数学模型来描述Mapper的传输时间和datainputSize的曲线?

例如,如果M Mappers的原始数据大小为N,并且从所有Mappers到Reducers的总传输时间是T.现在我想在Mappers中将数据大小加倍到2N,是否有传输的近似估计时间T'(我认为T'必须小于2T),所以我的想法是使用对数曲线来描述这条曲线,但我不确定它是否正确。

1 个答案:

答案 0 :(得分:0)

我假设您的输入来自HDFS(?) 我还假设您的输入数据已经放在HDFS上,所以我们不是在讨论将输入数据从本地文件存储器传输到HDFS的时间。 我假设您的输入大小N是所有输入文件组合的总大小。 我假设M是映射任务的数量(基于输入文件被分解的输入拆分数)。 如果我们谈论map任务和reduce任务之间的传输,那么我们需要知道map操作的输出大小。通常,此输出的大小与输入N的大小无关。

即使我们知道在地图任务和减少任务之间需要传输多少总数据,但要求传输时间并不一定有意义,因为这种传输可以与地图同时发生并减少任务执行,它将是各个地图任务之间的一系列单独传输,并减少每个在不同时间点发生的任务。写得好的hadoop应用程序的目标是通过重叠计算和通信来隐藏这个传输时间。