Hadoop-之性能测试(基准测试)

Hadoop-之性能测试(基准测试)

Hadoop的基准测试一般是在集群搭建完成之后,在各个参数设置合理的情况下进行基准测试(有点类似于kafka的读写性能测试),基准测试比较耗时间,因为涉及到集群的性能压榨,那么下面就开始进行基准测试吧。

测试内容如下。

  • 写性能IO测试
  • 读性能IO测试
  • Mapreduce计算能力测试

1 写性能测试

#向HDFS写10个128M的文件,其中10根据集群的规模来测试,集群同时能跑多少个map task
hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.7-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128MB

执行日志大致如下:

21/01/10 20:14:54 INFO fs.TestDFSIO: ----- TestDFSIO ----- : write
21/01/10 20:14:54 INFO fs.TestDFSIO:             Date & time: Sun Jan 10 20:14:54 CST 2021
21/01/10 20:14:54 INFO fs.TestDFSIO:         Number of files: 10      #处理的文件个数
21/01/10 20:14:54 INFO fs.TestDFSIO:  Total MBytes processed: 1280    #总共处理多少MB
21/01/10 20:14:54 INFO fs.TestDFSIO:       Throughput mb/sec: 141.02  #每秒的吞吐量
21/01/10 20:14:54 INFO fs.TestDFSIO:  Average IO rate mb/sec: 267.29  #平均IO
21/01/10 20:14:54 INFO fs.TestDFSIO:   IO rate std deviation: 120.45
21/01/10 20:14:54 INFO fs.TestDFSIO:      Test exec time sec: 35.55   #执行时间

2 读性能测试

#向HDFS读取10个128M的文件
hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.7-tests.jar TestDFSIO -read -nrFiles 10 -fileSize 128MB

执行日志大致如下:

21/01/10 20:14:54 INFO fs.TestDFSIO: ----- TestDFSIO ----- : read
21/01/10 20:14:54 INFO fs.TestDFSIO:             Date & time: Sun Jan 10 20:14:54 CST 2021
21/01/10 20:14:54 INFO fs.TestDFSIO:         Number of files: 10
21/01/10 20:14:54 INFO fs.TestDFSIO:  Total MBytes processed: 1280
21/01/10 20:14:54 INFO fs.TestDFSIO:       Throughput mb/sec: 141.02
21/01/10 20:14:54 INFO fs.TestDFSIO:  Average IO rate mb/sec: 267.29
21/01/10 20:14:54 INFO fs.TestDFSIO:   IO rate std deviation: 120.45
21/01/10 20:14:54 INFO fs.TestDFSIO:      Test exec time sec: 35.55

3 清除测试产生的数据,减少磁盘的消耗

hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.7-tests.jar TestDFSIO -clean

4 MR计算性能测试

MR的这个测试比较耗费时间,一般大概是1个多小时,主要是通过随机数排序来测试性能,测试流程主要分为以下几个步骤

  • 使用randomwriter来产生随机数,每个节点运行10个map任务,每个map产生约1G的二进制随机数
  • 执行sort程序
  • 验证数据是否真正排好序
# 1、randomwriter来产生随机数
hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar randomwriter random-data

# 2、执行sort程序
hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar sort random-data  sorted-data

# 3、验证数据是否真正排好序
hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.7-tests.jar testmapredsort -sortInput random-data -sortOutput -sorted-data
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值