首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于MapReduce bechmark,当我完成它们的运行时,我能知道输入/洗牌/输出数据大小分别是多少吗?

对于MapReduce bechmark,当我完成它们的运行时,我能知道输入/洗牌/输出数据大小分别是多少吗?
EN

Stack Overflow用户
提问于 2014-05-08 02:35:21
回答 1查看 352关注 0票数 0

我读了一些关于分析工作负载输入/洗牌/输出数据大小的文章。所以,我有一些问题,在我运行完TestDFSIO、Teragen、Terasort、Ter崩和Wordcount基准之后,我能知道输入/洗牌/输出数据大小分别是多少吗?

例如,如果我运行:

TestDFSIO,

TestDFSIO -write -nrFiles 10 -fileSize 1000

TestDFSIO -read -nrFiles 10 -fileSize 1000

Terasort,

hadoop-examples.jar teragen 10000000000输出dir

hadoop jar hadoop-examples.jar terasort输入dir输出dir

hadoop jar hadoop-examples.jar三雪崩terasort输出dir (=输入数据)

每个基准的输入/洗牌/输出数据大小是多少?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-08 07:00:08

是的,你可以。但是,由于您的问题太宽泛,我将只给出TestDFSIO的示例,这是为度量HDFS数据传输性能而设计的。

TestDFSIO支持以下参数:-read | -write | -clean [-nrFiles N] [-fileSize MB] [-resFile resultFileName] [-bufferSize Bytes]

现在,在对读操作进行基准测试之前,您必须编写一些像hadoop jar hadoop-test-1.2.1.jar TestDFSIO -read -nrFiles 10 -fileSize 100这样的操作。这里,fileSize是一个文件的输入大小,并在hdfs上与nrFiles100*10 mb = 1000mb相乘。您可以在/benchmarks/TestDFSIO/io_data目录下找到输出文件的确切大小。

您还将看到其他一些目录- io_control (包含读取或写入的文件名和文件大小)。

关于洗牌-这是一个中间操作。因此,要了解它,只需查看控制台输出的时间mapreduce正在运行,或者您可以去做作业跟踪器的UI来查看它。

由TestDFSIO类生成写操作的输入。它只是由mod operation based on buffersize计算的一些字节。

还会生成一个日志文件,其中包含IO和吞吐量统计数据。

希望这能澄清一些事情,并给你一个先发制人。有许多基准,您可以进一步探讨。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23531790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档