多测师-多培养一些优秀的测试工程师
网站地图 |   收藏本站   |   

13825291265

大数据压力测试工具HiBench

发布日期:2021-12-29 10:14:56 作者:多测师 浏览次数:

  需求描述:需要测试cdh集群的组件的性能和稳定性。

  压力测试工具选型:HiBench

  HiBench测试工具说明:

  HiBench是一套基准测试套件,用于帮助我们评估不同的大数据框架性能指标(包括处理速度、吞吐等)的负载指标,可以评估Hadoop、Spark和流式负载等

  HiBench内置了若干主要的大数据计算程序作为基准测试的负载(workload)。

  Sort,对数据进行排序大数据程序。

  WordCount,前面多次提到过,词频统计大数据计算程序。

  TeraSort,对1TB数据进行排序,最早是一项关于软件和硬件的计算力的竞赛,所以很多大数据平台和硬件厂商进行产品宣传的时候会用TeraSort成绩作为卖点。

  Bayes分类,机器学习分类算法,用于数据分类和预测。

  k-means聚类,对数据集合规律进行挖掘的算法。

  逻辑回归,数据进行预测和回归的算法。

  SQL,包括全表扫描、聚合操作(group by)、连接操作(join)几种典型查询SQL。

  PageRank,Web排序算法。

大数据压力测试工具HiBench

  一、安装Hibench

  1、下载Hibench

  wget https://github.com/intel-hadoop/HiBench/archive/HiBench-7.0.zip

  2、编译所有模块(注意:编译前,确保系统中已经安装好了maven)

  命令:mvn -Dspark=2.1 -Dscala=2.11 clean package

  3、编译指定模块

  可根据需求只编译你需要测试的模块

  如:只编译hadoop benchmarks

  mvn -Phadoopbench -Dspark=2.1 -Dscala=2.11 clean package

  如:只编译hadoop 和 Spark benchmarks

  mvn -Phadoopbench -Psparkbench -Dspark=2.1 -Dscala=2.11 clean package

  注意:目前支持的框架,如下:

  hadoopbench、sparkbench、flinkbench、stormbench、gearpumbench。

  以上Hibench安装完成

  更加详细安装说明参考官方文档: https://github.com/intel-hadoop/HiBench/blob/master/docs/build-hibench.md

  二、Hibench的配置使用

  1、前提条件

  1)、需要python2.x(>=2.6)

  2)、需要linux bc命令,用于生成Hibench 报告,

  bc解释详见:

  http://man.linuxde.net/bc

  http://www.runoob.com/linux/linux-comm-bc.html

  若没有,则安装:yum install bc

  3)、支持的hadoop版本apache hadoop2.x(经实测hadoop3.x也支持)、CDH5.x、HDP

  4)、已经编译好了Hibench

  5)、启动好hdfs、yarn集群

  2、配置hadoop.conf

  创建并编辑{Hibench_HOME}/conf/hadoop.conf

  命令: cp {Hibench_HOME}/ conf/hadoop.conf.template {Hibench_HOME}/ conf/hadoop.conf

  配置项说明

  hibench.hadoop.home:hadoop安装目录

  hibench.hadoop.executable:你的bin/hadoop所在目录,一般是{HADOOP_HOME}/bin/hadoop

  hibench.hadoop.configure.dir:hadoop配置文件所在目录,一般位于HADOOP_HOME}/etc/hadoop

  hibench.hdfs.master:hdfs上存储Hibench数据的目录,如:hdfs://localhost:8020/user/hibench

  hibench.hadoop.release:hadoop发行版提供者,支持value:apache, cdh5, hdp

  以下是样例:

  vim hadoop.conf  # Hadoop home  hibench.hadoop.home /opt/hadoop-3.0.0  # The path of hadoop executable  hibench.hadoop.executable /opt/hadoop-3.0.0/bin/hadoop  # Hadoop configraution directory  hibench.hadoop.configure.dir /opt/hadoop-3.0.0/etc/hadoop  # The root HDFS path to store HiBench data  hibench.hdfs.master hdfs://hadoopmaster:9820  # Hadoop release provider. Supported value: apache, cdh5, hdp  hibench.hadoop.release apache

  3、运行一个workload

  以下是一个使用例子

  bin/workloads/micro/wordcount/prepare/prepare.sh ---产生测试数据(数据位于配置的hibench.hdfs.master指定的目录里面)

  bin/workloads/micro/wordcount/hadoop/run.sh ---运行例子

  说明:bin/run_all.sh能够用来运行所有位于conf/benchmarks.lst 和 conf/frameworks.lst中的workloads。

  4、查看运行结果报告

  执行详情见:{ Hibench_HOME }/report/hibench.report

  5、补充:配置生成数据的大小

  要改变输入数据的大小,在conf/hibench.conf配置文件中hibench.scale.profile属性的值即可,该值可选为tiny, small, large, huge, gigantic and bigdata。

  具体数字修改查看详见conf/workloads/micro/wordcount.conf

  6、修改conf/hibench.conf可以控制mapreduce运行时的并行度

  hibench.default.map.parallelism mapper的数量

  hibench.default.shuffle.parallelism reducer的数量

如需了解更多测试技术信息请关注:https://www.duoceshi.cn/jswz/深圳多测师软件与技术服务有限公司


查看更多 >>

推荐阅读