zoukankan      html  css  js  c++  java
  • 集群基准性能测试

    集群基准性能测试

    问题引入:输入端有2T的数据,问多长时间能把数据上传到集群?

    假如说1个小时,那么双11时瞬间产生100T数据,服务器能顶住吗?
    

    因此,我们需要对服务器进行压力测试,对服务器整体性能有精准把控

    1)测试HDFS写性能

    测试内容,向集群上传10个128M的文件

    [root@hadoop102 mapreduce]$ hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128MB
    #-write 写测试   -nrFiles 10 写10个文件  -fileSize 128M  每个文件大小128M
    2020-04-16 13:41:24,724 INFO fs.TestDFSIO: ----- TestDFSIO ----- : write
    2020-04-16 13:41:24,724 INFO fs.TestDFSIO: Date & time: Thu Apr 16 13:41:24 CST 2020
    2020-04-16 13:41:24,724 INFO fs.TestDFSIO:         Number of files: 10  #上传了10个文件
    2020-04-16 13:41:24,725 INFO fs.TestDFSIO:  Total MBytes processed: 1280  #每个文件128M
    												#吞吐量(写性能)8M/s
    									#100个G需要的时间 (100*1024)/8=3.5小时
    2020-04-16 13:41:24,725 INFO fs.TestDFSIO:       Throughput mb/sec: 8.88
    2020-04-16 13:41:24,725 INFO fs.TestDFSIO:  Average IO rate mb/sec: 8.96
    2020-04-16 13:41:24,725 INFO fs.TestDFSIO:   IO rate std deviation: 0.87
    2020-04-16 13:41:24,725 INFO fs.TestDFSIO:      Test exec time sec: 67.61
    

    2)测试读性能

    测试内容,读取HDFS集群10个128M的文件

    [root@hadoop102 mapreduce]$ 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
    
    2020-04-16 13:43:38,857 INFO fs.TestDFSIO: ----- TestDFSIO ----- : read
    2020-04-16 13:43:38,858 INFO fs.TestDFSIO:   Date & time: Thu Apr 16 13:43:38 CST 2020
    2020-04-16 13:43:38,859 INFO fs.TestDFSIO:         Number of files: 10	#读取10个文件
    2020-04-16 13:43:38,859 INFO fs.TestDFSIO:  Total MBytes processed: 1280  #每个文件128M 
    2020-04-16 13:43:38,859 INFO fs.TestDFSIO:       Throughput mb/sec: 85.54 #吞吐量85M/s
    2020-04-16 13:43:38,860 INFO fs.TestDFSIO:  Average IO rate mb/sec: 100.21  
    2020-04-16 13:43:38,860 INFO fs.TestDFSIO:   IO rate std deviation: 44.37
    2020-04-16 13:43:38,860 INFO fs.TestDFSIO:      Test exec time sec: 53.61
    

    3)删除测试生成的数据

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

    4)测试MR计算能力

    机器128G内存以上才可以测试本命令

    (1)使用RandomWriter来产生随机数,每个节点运行10个Map任务,每个Map产生大约1G大小的二进制随机数
    [root@hadoop102 mapreduce]$ hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar randomwriter random-data
    (2)执行Sort程序
    [root@hadoop102 mapreduce]$ hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar sort random-data sorted-data
    (3)验证数据是否真正排好序了
    [root@hadoop102 mapreduce]$ 
    hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-3.1.3-tests.jar testmapredsort -sortInput random-data -sortOutput sorted-data
    
  • 相关阅读:
    Java之ServiceLoader
    docker学习(3)--Dockfile详解
    docker学习(2)--基础命令
    docker学习(1)--基础概念
    dubbo学习(1)--简单的入门搭建实例
    Flume搭建及学习(基础篇)
    VM下--Linux根分区磁盘扩容
    Windows10下简单搭建zookeeper
    Windows10下搭建TensorFlow环境
    cmath库函数
  • 原文地址:https://www.cnblogs.com/traveller-hzq/p/14135180.html
Copyright © 2011-2022 走看看