hadoop系统中,包含了很多测试工具包,如测试mapreduce系统读写文件系统,有testDFSIO工具
首先安装好hadoop,配置好环境变量
进入share目录下的mapreduce目录下面,使用测试的jar包
testDFSIO的参数如下:
read | 读测试。执行该测试之前,需要先做write测试 |
write | 写测试 |
nfFiles | 文件个数,默认为1 |
fileSize | 文件大小,默认为1MB |
resFile | 结果文件名,默认为” TestDFSIO_results.log” |
bufferSize | 设置缓存大小,默认为1000000 |
clean | 清理数据 |
seq | 数据是否有序,默认无序 |
输入命令:
测试写
hadoop jar *tests.jar TestDFSIO -write -nrFiles 256 -fileSize 1000
测试结果
结果说明
结果说明:
Total MBytes processed : 总共需要写入的数据量 ==》 256*1000
Throughput mb/sec :总共需要写入的数据量/(每个map任务实际写入数据的执行时间之和(这个时间会远小于Test exec time sec))==》256000/(map1写时间+map2写时间+...)
Average IO rate mb/sec :(每个map需要写入的数据量/每个map任务实际写入数据的执行时间)之和/任务数==》(1000/map1写时间+1000/map2写时间+...)/256,所以这个值跟上面一个值总是存在差异。
IO rate std deviation :上一个值的标准差
Test exec time sec :整个job的执行时间
测试读
hadoop jar *tests.jar TestDFSIO -read -nrFiles 256-fileSize 1000
测试结果
测试得过程中,注意目录的权限,可能会出现权限不够而失败的情况