7.3.1 使用Hibench

下面介绍Hibench[1]的使用方法。

1.前期准备

(1)设置HiBench-2.2

下载或者签出HiBench-2.2 benchmark suite,官方网址为https://github.com/intel-hadoop/HiBench/zipball/HiBench-2.2。

(2)设置Hadoop

在运行其他工作负载之前,请确认已经正确安装了Hadoop,所有的工作负载已经在Cloudera Distribution of Hadoop 3 update 4(cdh3u4)and Hadoop version 1.0.3版本的Hadoop上测试通过。

(3)设置Hive[2]

如果需要测试hivebench,则确认实验环境已经安装了Hive,或者使用benchmark中已经打包的Hive 0.9。

(4)针对所有的工作负载配置参数

需要在使用前在bin/hibench-config.sh中配置一些全局变量。

·HADOOP_HOME:Hadoop的安装路径。

·HADOOP_CONF_DIR:Hadoop的配置文件目录,默认为$HADOOP_HOME/conf目录下。

·COMPRESS_GLOBAL:设置是否压缩输入输出数据,0表示不压缩,1表示压缩。

·COMPRESS_CODEC_GLOBAL:设置默认的输入输出压缩方式。

(5)针对每个工作负载参数配置

如果工作负载的目录下游conf/configure.sh文件,则可以通过修改conf/configure.sh来配置每个工作负载,所有数据规模以及和这个工作负载相关的参数都在这个目录配置。

同步所有节点的时间,这在dfsioe是必须做的,其他可做可不做。

2.运行

(1)一起运行多个工作负载

在配置文件conf/benchmarks.lst中定义了当运行/run-all.sh时需要运行的工作负载。文件中的每一行都是一个指定的工作负载.可以用#符号来注释掉不需要运行的负载。

(2)单独运行各个工作负载

也可以单独运行各个工作负载。通常情况下,在每个工作负载的目录下都有3个独立的shell文件,这3个文件的功能如下。

·conf/configure.sh:这个配置文件包含数据规模和测试的运行参数。

·bin/prepare*.sh:生成测试数据或者将输入数据复制到HDFS中。

·bin/run*.sh:执行工作负载。

用户可以按照下面的顺序执行工作负载。

1)配置Benchmark。

如果需要更高级的测试需求,则通过修改配置文件configure.sh来配置参数。

2)准备数据。

通过运行Shell文件bin/prepare.sh生成和准备数据(bin/prepare-read.sh这个文件针对dfsioe)。

3)运行Benchmark。


  1. bin/run*.sh

[1] https://github.com/intel-hadoop/HiBench。

[2] 这个只在运行Hive的Benchmark时,才需要安装。