首页 > 代码库 > hibench学习

hibench学习

hibench包含几个hadoop的负载

    • micro benchmarks
      Sort:使用hadoop randomtextwriter生成数据,并对数据进行排序。 
      Wordcount:统计输入数据中每个单词的出现次数,输入数据使用hadoop randomtextwriter生成。 
      TeraSort:输入数据由hadoop teragen产生,通过key值进行排序。

    • hdfs benchmarks
      增强行的dfsio:通过产生大量同时执行读写请求的任务测试hadoop机群的hdfs吞吐量

    • web search bench marks
      Nutch indexing:大规模收索引擎,这个是负载测试nutch(apache的一个开源搜索引擎)的搜索子系统,使用自动生成的web数据,web数据中的连接和单词符合zipfian分布(一个单词出现的次数与它在频率表的排名成反比) 
      Pagerank:这个负载包含在一种在hadoop上的pagerank的算法实现,使用自动生成的web数据,web数据中的链接符合zipfian分布。(对于任意一个term其频度(frequency)的排名(rank)和frequency的乘积大致是一个常数)

    • machine learning benchmarks
      Mahout bayesian classification(bayes):大规模机器学习,这个负载测试mahout(apache开源机器学习库)中的naive bayesian 训练器,输入的数据是自动生成的文档,文档中的单词符合zipfian分布。 
      Mahout k-means clustering(kmeans):测试mahout中的k-means聚类算法,输入的数据集由基于平均分布和高斯分布的genkmeansdataset产生。

    • data analytics benchmarks
      Hive query benchmarks(hivebench):包含执行的典型olap查询的hive查询(aggregation和join),使用自动生成的web数据,web数据的链接符合zipfian分布。

hibench运行流程

技术分享

 

在github上下载hibench并且解压

修改bin/hibench_config.sh文件的这几个参数

export JAVA_HOME=/home/hadoop/jdk1.7.0_67

export HADOOP_HOME=/home/hadoop/hadoop

export HADOOP_EXECUTABLE=/home/hadoop/hadoop//bin/hadoop

export HADOOP_CONF_DIR=/home/hadoop/conf

export HADOOP_EXAMPLES_JAR=/home/hadoop/hadoop/share/hadoop/mapreduce2/hadoop-mapreduce-examples-2.3.0-cdh5.1.2.jar

export MAPRED_EXECUTABLE=/home/hadoop/hadoop/bin/mapred

#Set the varaible below only in YARN mode

export HADOOP_JOBCLIENT_TESTS_JAR=/home/hadoop/hadoop/share/hadoop/mapreduce2/hadoop-mapreduce-examples-2.3.0-cdh5.1.2.jar/hadoop-mapreduce-client-jobclient-2.3.0-cdh5.1.2-tests.jar

多个服务一起运行

  修改conf/benchmarks.lst,哪些不想运行的将之注释掉

  运行bin/run-all.sh,如果在之前的步骤中没有注释,会运行所有的

多并发运行

  修改conf/benchmarks-concurrent.lst文件,修改后面数字显示多少个并发数

  运行bin/prepare-concurrent.sh

  运行bin/run-concurrent.sh

独立运行

  修改conf/configure.sh文件来改变配置

  运行bin/prepare.sh,(dfsioe运行bin/prepare-read.sh)准在在hdfs中input数据

  运行bin/run*.sh运行相应的benchmark

结果在hibench.report中保存

hibench学习