HDFS-集群压测

582 阅读1分钟

写测试

写测试底层:

image.png

测试命令行:

doop-mapreduce-clientjobclient-3.1.3-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128MB

ps:nrFiles n 为生成 mapTask 的数量,生产环境一般可通过 hadoop103:8088 查看 CPU核数,设置为(CPU 核数 - 1)

命令执行结果

2021-02-09 10:43:16,854 INFO fs.TestDFSIO: Number of files: 10

2021-02-09 10:43:16,854 INFO fs.TestDFSIO: Total MBytes processed: 1280

2021-02-09 10:43:16,854 INFO fs.TestDFSIO: Throughput mb/sec: 1.61

2021-02-09 10:43:16,854 INFO fs.TestDFSIO: Average IO rate mb/sec: 1.9

2021-02-09 10:43:16,854 INFO fs.TestDFSIO: IO rate std deviation: 0.76

2021-02-09 10:43:16,854 INFO fs.TestDFSIO: Test exec time sec: 133.05

  • Total MBytes processed:
  • 单个 map 处理的文件大小
  • Throughput mb/sec:
  • 单个 mapTak 的吞吐量
  • 计算方式:处理的总文件大小/每一个 mapTask 写数据的时间累加
  • 集群整体吞吐量:生成 mapTask 数量*单个 mapTak 的吞吐量
  • Average IO rate mb/sec::
  • 平均 mapTak 的吞吐量
  • 计算方式:每个 mapTask 处理文件大小/每一个 mapTask 写数据的时间全部相加除以 task 数量
  • IO rate std deviation:
  • 方差、反映各个 mapTask 处理的差值,越小越均衡

读性能

读取hdfs 10个128M文件

hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -read -nrFiles 10 -fileSize 128MB