http://adaishu.blog.163.com/blog/static/175831286201151272221903/
为了测试Hadoop用mapreduce方式读写文件系统的性能,开发了TestDFSIO,用法如下:
写测试
cd到hadoop安装目录:
# cd hadoop
看看内存情况:
# free -g
同步内存文件缓存到硬盘:
# sync
清空linux文件系统缓存:
# echo 3 > /proc/sys/vm/drop_caches
再次查看内存情况:
# free -g
切换到hadoop用户:
# su - hadoop
$ cd hadoop
$ hadoop jar hadoop-test-0.20.2-cdh3u0.jar TestDFSIO -write -nrFiles 1000 -fileSize 512 -bufferSize 67108864
其中hadoop-test-0.20.2-cdh3u0.jar在下载来的hadoop里面应该已经编译好了。参数应该很清楚,-nrFiles为写入文件数量,-fileSize为每个文件大小。
测试结果:
11/06/09 11:04:03 INFO fs.TestDFSIO: ----- TestDFSIO ----- : write
11/06/09 11:04:03 INFO fs.TestDFSIO: Date & time: Thu Jun 09 11:04:03 CST 2011
11/06/09 11:04:03 INFO fs.TestDFSIO: Number of files: 1000
11/06/09 11:04:03 INFO fs.TestDFSIO: Total MBytes processed: 512000
11/06/09 11:04:03 INFO fs.TestDFSIO: Throughput mb/sec: 3.0791832418338796
11/06/09 11:04:03 INFO fs.TestDFSIO: Average IO rate mb/sec: 3.3843436241149902
11/06/09 11:04:03 INFO fs.TestDFSIO: IO rate std deviation: 1.4860198954469508
11/06/09 11:04:03 INFO fs.TestDFSIO: Test exec time sec: 218.298
结果说明:
Total MBytes processed : 总共需要写入的数据量 ==》 512X1000
Throughput mb/sec :总共需要写入的数据量/(每个map任务实际写入数据的执行时间之和(这个时间会远小于Test exec time sec))==》512000/(map1写时间+map2写时间+...)
Average IO rate mb/sec :(每个map需要写入的数据量/每个map任务实际写入数据的执行时间)之和/任务数==》(512/map1写时间+512/map2写时间+...)/1000,所以这个值跟上面一个值总是存在差异。
IO rate std deviation :上一个值的标准差
Test exec time sec :整个job的执行时间
读测试
如果说写测试还可以不要清空linux文件系统缓存的话,跟着的读测试则必须清空,否则可能会对结果影响很大。
$ su root
# free -g
# sync
# echo 3 > /proc/sys/vm/drop_caches
# free -g
# su - hadoop
$ hadoop jar hadoop-test-0.20.2-cdh3u0.jar TestDFSIO -read -nrFiles 1000 -fileSize 512 -bufferSize 67108864
测试结果:
11/05/31 16:41:02 INFO fs.TestDFSIO: ----- TestDFSIO ----- : read
11/05/31 16:41:02 INFO fs.TestDFSIO: Date & time: Tue May 31 16:41:02 CST 2011
11/05/31 16:41:02 INFO fs.TestDFSIO: Number of files: 1000
11/05/31 16:41:02 INFO fs.TestDFSIO: Total MBytes processed: 512000
11/05/31 16:41:02 INFO fs.TestDFSIO: Throughput mb/sec: 51.157743703700746
11/05/31 16:41:02 INFO fs.TestDFSIO: Average IO rate mb/sec: 55.17451095581055
11/05/31 16:41:02 INFO fs.TestDFSIO: IO rate std deviation: 14.862287798304873
11/05/31 16:41:02 INFO fs.TestDFSIO: Test exec time sec: 38.702
结果说明:
结果的意思同写,就是标准差比写要大。
清理测试文件
hadoop jar hadoop-test-0.20.2-cdh3u0.jar TestDFSIO -clean
集群比较小的情况下,这个测试并发map(mapred.tasktracker.map.tasks.maximum)数越少,则显示出来的速度会越快。
分享到:
相关推荐
hadoop性能测试报告
Hadoop集群测试报告
hadoop单元测试方法--使用和增强MRUnit.docx
Hadoop集群测试报告
基于hadoop上的基本测试,很好的资源哦
1/Hadoop平台搭建及实例运行.doc; 2/hadoop常见测试问题_自测试.docx; 3/hadoop源代码分析.docx; 4/Hibench BenchMark suite.docx。
hadoop本地测试环境搭建工具包 1.hadoop.dll 2.hadoop源码请到官网下载
真实的用户上网行为数据,已经过清洗。数据量超100万,可直接使用。是学习大数据,进行测试的不二之选
Hadoop2.4.0测试环境搭建 http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.1-latest/bk_installing_manually_boo k/content/rpm-chap1-11.html [bigdata@namenode1 scripts]$ pwd /home/bigdata/software/...
hadoop测试数据,人脸分析测试数据,适应学习大数据,记进行数据分析
hadoop测试的数据,可用于刚刚接触hadoop的朋友学习和使用
YARN HA 测试Job YARN HA 测试Job 序号 任务名称 任务一 准备MapReduce输入文件 任务二 将输入文件上传到HDFS 任务三 运行MapReduce程序测试Job 任务一 准备MapReduce输入文件 在master主节点,使用 root 用户登录,...
Hadoop阶段测试3.doc
本文档是对自己学习hadoop的一个小测试,适合初学hadoop的人士观看。
基于Docker构建的Hadoop开发测试环境,包含Hadoop,Hive,HBase,Spark+源代码+文档说明 基于Docker的Hadoop开发测试环境使用说明 ## 0.内容 1. 基本软件环境介绍 2. 使用方法简介 3. 已知问题 4. 注意事项 ## 1....
hadoop测试(1)---HDFS文件操作 完整测试代码, 相关文章:http://www.cnblogs.com/yinpengxiang/archive/2011/07/03/2096605.html
大数据开发_基于docker的hadoop开发测试环境构建
hadoop权威指南天气测试案例和执行脚本
Hadoop MRUnit测试 工程用Maven构建,详细过程参见本人博客Maven构建一文