为了设计一些算法,我需要模拟 map-reduce 环境。我假设我有几个工作,每个工作都由一组 map 和 reduce 任务组成。我必须对地图的处理时间和减少任务做出假设。例如作业“j1”有 3 个 map 任务和 2 个 reduce 任务。现在map任务和reduce任务的处理时间有什么限制吗?通常情况如何?
问问题
88 次
1 回答
1
如果不知道你的 map 和 reduce 任务是做什么的,就很难做出任何假设。map 或 reduce 任务的处理时间完全取决于您希望他们做什么,您不能真正做出笼统的假设。
例如,您的个人地图功能可能正在处理单个文件作为输入,或单个行或单个单词,所有这些都直接影响处理时间。
减速机同理;它可以做很多处理,少量处理,甚至根本不处理。(使用 Hadoop 的 MapReduce 实现,您甚至不必为您的 MapReduce 任务使用 reducer,这证明了处理量不同的事实)。这仅取决于单个任务的要求。
如果您知道模拟的 MapReduce 作业实际上会做什么,您可以使用它来确定不同任务的一般处理时间将彼此比较。
于 2012-12-13T14:43:11.000 回答