Ycsb下载地址:https://github.com/brianfrankcooper/YCSB/releases

目前测试hbase0.94.11,因此下载ycsb-0.1.4.tar.gz

1.  解压缩ycsb:

sudo tar -zxvf ycsb-0.1.4.tar.gz -C /usr/local

  sudo chmod -R cs ycsb-0.1.4.tar.gzycsb-0.1.4.tar.gz

2.将hbase/conf中的hbase-site.xml复制到ycsb /hbase/conf中。

3. 在hbase中创建测试表:

create 'usertable','family'

4. 在ycsb目录下,进行加载数据:

ycsb load hbase -P workloads/workloada -p table=usertable -p columnfamily=family -p recordcount=10000

此时,会提示“java.lang.IllegalArgumentException: Not a host:port pair:”错误。这是因为版本不一致的问题。

打开ycsb的pom.xml文件,有这么一行:

  <hbase.version>0.90.5</hbase.version>

因此官网上的编译好的ycsb0.1.4测试的默认是hbase0.90.5版本。此时需要重新编译ycsb源码和pom.xml。

  1. 下载ycsb源代码,将根目录下的pom.xml中<hbase.version>0.90.5</hbase.version>修改为对应版本;
  2. 将源代码中hbase文件夹中pom.xml中增加

<dependency>

<groupId>org.apache.hadoop</groupId>

<artifactId>hadoop-core</artifactId>

<version>1.1.2</version>

</dependency>

因为habse0.94.11在hadoop1.1.2上运行的。

  3.使用maven进行编译,编译方法为在命令行中进入到源代码根目录,运行mvn clean package。maven需要联网环境才可以编译,因为编译的时候会自动下载相关库

(Maven下载地址: http://maven.apache.org/download.cgi

修改环境变量,在/etc/profile中添加以下几行

MAVEN_HOME=/usr/local/maven3

export MAVEN_HOME

export PATH=${PATH}:${MAVEN_HOME}/bin

执行source /etc/profile使环境变量生效

最后运行mvn -v验证maven是否安装成功

   4.编译完毕后,将hbase\target\hbase-binding.jar文件替换原来\ycsb-0.1.4\hbase-binding\lib中的对应的文件即可。

  5.将hbase目录下的hbase-site.xml文件拷贝到\ycsb-0.1.4\hbase-binding\conf\中。

继续运行  ycsb load hbase -P workloads/workloada -p table=usertable -p columnfamily=family -p recordcount=10000。

出现了“SLF4J: slf4j-api 1.6.x (or later) is incompatible with this binding. SLF4J: Your binding is version 1.5.5 or earlier. SLF4J: Upgrade your binding to version 1.6.x. or 2.0.x”的错误。

查看hbase的pom.xml文件,得知hbase的SLF4J是1.4.3版本。

查看ycsb的pom.xml文件,得知SLF4J是1.6.4版本。

为了保持habse服务端的配置不变,只能把ycsb的SLF4J的版本降低,因此重新把ycsb源代码中根目录下的pom.xml的SLF4J版本改为1.4.3重新编译,继续按照上述的步骤继续往下走。

测试成功。

5.在ycsb目录下,进行压力测试:

ycsb run hbase -P workloads/workloada -p table=usertable -p columnfamily=family  -p operationcount=10000

使用ycsb对hbase0.94.11 benchmark的更多相关文章

  1. 谁说他们版本不兼容——hadoop1.2.1+hbase0.94.11+nutch2.2.1+el

    一.背景 最近由于项目和论文的需要,需要搭建一个垂直搜索的环境,查阅了很多资料,决定使用Apache的一套解决方案hadoop+hbase+nutch+es.这几样神器的作用就不多作介绍了,自行参考各 ...

  2. hadoop1.2.1+hbase0.94.11+nutch2.2.1+elasticsearch0.90.5安装配置攻略

    一.背景 最近由于项目和论文的需要,需要搭建一个垂直搜索的环境,查阅了很多资料,决定使用Apache的一套解决方案hadoop+hbase+nutch+es.这几样神器的作用就不多作介绍了,自行参考各 ...

  3. 伪分布式hadoop1.1.2和hbase0.94.11配置

    Hadoop 1.1.2 和Hbase 0.94.11版本配置 测试时ip  172.19.32.128 这个版本需要把/etc/hosts的aa-vm改成127.0.0.1,也就是和localhos ...

  4. hbase0.94.11版本和hbase1.4.9版本的benchamark区别

    1.起初使用ycsb对hbase进行benchmark,分别在100%写的情况下检测写性能:在100%读的情况下检测读的性能.实验数据如下: 2.新版本的habse写性能竟然不如老版本.!!!.于是我 ...

  5. 伪分布式hbase从0.94.11版本升级stable的1.4.9版本

    Hbase从0.94.11升级到stable的1.4.9版本: 升级思路: hadoop1.1.2    hbase 0.94.11                             ↓ had ...

  6. hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解

    hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解 一,环境: 1,主机规划: 集群中包括3个节点:hadoop01为Master,其余为Salve,节点之间局域网连接 ...

  7. Hadoop2.2.0 hive0.12 hbase0.94 配置问题记录

    环境:centos6.2 Hadoop2.2.0 hive0.12 hbase0.94 1>hadoop配好之后,跑任务老失败,yarn失败,报out of memory错误,然后怎么调整内存大 ...

  8. hbase-0.94.16 在hadoop-1.2.1的安装配置

    1. ZooKeeper的安装: ZooKeeper是一个分布式的服务框架.可用于处理分布式的一些数据管理问题,如统一命名服务.状态同步服务.集群管理.分布式应用配置项的管理等. 步骤如下: a. 准 ...

  9. Ubuntu环境下nutch2.2.1集成HBase0.94.25

    nutch2.2.1集成HBase0.94.25 (详见:http://duguyiren3476.iteye.com/blog/2085973 ) 1. 修改nutch的hbase配置 //将自己的 ...

随机推荐

  1. elasticsearch自动按天创建索引脚本

    elasticsearch保存在一个索引中数据量太大无法查询,现在需要将索引按照天来建,查询的时候关联查询即可 有时候es集群创建了很多索引,删不掉,如果是测试环境或者初始化es集群(清空所有数据), ...

  2. js 数组不重复添加元素

    1 前言 由于使用JS的push会导致元素重复,而ES5之前没有set(集合)方法,重复元素还要做去重处理,比较麻烦些,所以直接写一个新push来处理 2 代码 Array.prototype.pus ...

  3. Json 文件中value的基本类型

    在Json中,value的类型只能是以下几种: 1.字符串 2.数字 3.true 或者 false (注意,和字符串不同,没有双引号包裹) 4.null

  4. 并发性能的隐形杀手之伪共享(false sharing)

    在并发编程过程中,我们大部分的焦点都放在如何控制共享变量的访问控制上(代码层面),但是很少人会关注系统硬件及 JVM 底层相关的影响因素.前段时间学习了一个牛X的高性能异步处理框架 Disruptor ...

  5. iPhone内存溢出——黑白苹果

    一旦iPhone内存长期占用过大,一关机即再难启动,如果你Home键加power键等都不行,那么可以要刷机了. 方式: 1.电脑下载ITunes,这个过程比较漫长,一系列逐渐大概3G,下载完成打开. ...

  6. python 列表,字典,元组,字符串,常用函数

    飞机票 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中包含3个元组),相当于ls和object ...

  7. kindEditor 富文本编辑器 使用介绍

    第一版:存放位置:  ---->把该创建的文件包放到javaWeb 过程的 WEB_INF 下:如图所示. 第二步:< kindEditor 插件的引用> :JS引用 <scr ...

  8. Confluence 6 嵌入的 H2 数据库

    为了让你的 Confluence 在安装成功后就可以使用而不需要使用任何外部的数据库,Confluence 使用一个嵌入的 H2 数据库. 当你选择对 Confluence 进行评估和测试的时候,H2 ...

  9. linux之iptables常用命令

    iptables详解 iptables -L 该命令会以列表的形式显示出当前使用的 iptables 规则,每一条规则前面的编号可以用来做为其它操作--例如删除操作--的参数,很有用 iptables ...

  10. 《剑指offer》顺时针打印矩阵

    本题来自<剑指offer> 顺时针打印矩阵 题目: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 1 ...