MapReduce 工作流基准

Posted

技术标签:

【中文标题】MapReduce 工作流基准【英文标题】:MapReduce workflow benchmarks 【发布时间】:2014-04-08 23:03:20 【问题描述】:

任何机构都可以通过任何基准测试 MapReduce 工作流程吗?还是一般的 BigData 工作流基准测试来测试 Oozie 等工作流系统的性能和准确性?

谢谢

【问题讨论】:

【参考方案1】:

可能最著名的 MapReduce 基准测试是Terasort。它需要大量随机生成的记录,并对整个数据集进行排序。这模拟了一个真正的大规模 MapReduce 作业,其中包括映射器和缩减器。它包含在 MapReduce 中,因此您不必单独安装它。

第一步是使用您的 MapReduce lib 目录中的 MapReduce 示例 jar 生成带有 Teragen 的输入数据:

hadoop jar hadoop-*examples*.jar teragen <number of 100-byte rows> <output dir>

第二步是在生成的输入数据上运行Terasort。这一步花费的时间是基准测试的结果:

hadoop jar hadoop-*examples*.jar terasort <input dir> <output dir>

(可选)第三步是使用Teravalidate 验证输出结果是否正确:

$ hadoop jar hadoop-*examples*.jar teravalidate <terasort output dir (= input data)> <teravalidate output dir>

比较这个基准在一个集群和另一个集群之间的时间可能非常困难,但它对于比较同一集群内的变化非常有用,例如修改配置或添加新节点。

this blog entry中有对Terasort的深入描述。

【讨论】:

以上是关于MapReduce 工作流基准的主要内容,如果未能解决你的问题,请参考以下文章

mapreduce工作原理

mapreduce工作流程

MapReduce Terasort算法分析

Hadoop 4Hadoop MapReduce的工作原理

Hadoop MapReduce 一文详解MapReduce及工作机制

MapReduce 框架原理MapReduce 工作流程 & Shuffle 机制