如何知道MR2中的HDFS并发吞吐量

时间:2015-02-08 12:01:01

标签: performance hadoop hdfs throughput

我是Hadoop的新手。最近我正在尝试使用TestDFSIO来评估我的 hdfs性能,我对并发吞吐量有疑问:

在MR 1中

并发吞吐量=报​​告吞吐量x地图槽数

例如

Throughput MB/sec: 141.4427 
Map Slots=2 
Concurrent Throughput = 282.8854 MB/sec.

但是在MR2中(YARN中不再存在map和reduce插槽),如何计算并发吞吐量?

1 个答案:

答案 0 :(得分:0)

这是一篇很好的简单文章,它解释了这些' concurent'背后的大部分数学知识。词:

Benchmarking and Stress Testing an Hadoop Cluster With TeraSort, TestDFSIO & Co.

并发吞吐量是指您确实可以处理多少数据(通过给定数量的映射器或缩减器)。如果你有100个映射器插槽,但你的工作只需要4个映射器 - 你只有4倍的平均吞吐量。在YARN中,您有限量的容器。因此并发吞吐量约为

[平均吞吐量] x [实际使用的容器数量]。

但为什么你需要这个告诉你什么的指标呢? 例如,如果您的群集将是异构的(它们迟早会发生),那么您永远不会收到满负荷。如果你有很多波浪,就会出现同样的情况。在你的工作中。

Hadoop集群的真正威力与集群本身无关,而是将您的工作通常用于Hadoop模型,并针对特定情况采用集群平衡。我经常会遇到这样一种情况:我的调优阶段集群在客户端击败了生产集群。这通常会导致关于客户群集配置或硬件平衡的谈判,因为他们通常不会考虑自己的具体细节。但他们的硬件没有任何问题比我的硬件更好。