maven编译ycsb0.1.4支持针对hbase性能测试,解决not a host:port pair问题,附下载地址

Yahoo! Cloud Serving Benchmark (YCSB) 是 Yahoo 公司的一个用来对云服务进行基础测试的工具。目标是促进新一代云数据服务系统的性能比较。目前支持对:Cassandra,、HBase、mongodb、redis和一个简单的片式MySQL执行测试,制订了一套核心基准测试和结果报告。


最近在学习hbase,采用的测试环境是hadoop1.0.0、hbase0.92.1。使用官方提供的ycsb0.1.4(下载地址https://github.com/brianfrankcooper/YCSB/wiki)进行测试,总提示"Not a host:port pair"

经过反复安装不同版本hadoop和hbase,均不行。

经查看ycsb源代码(下载地址http://github.com/brianfrankcooper/YCSB/tarball/0.1.4),终于发现端倪。


在源代码根目录下有一个pom.xml文件,内有一段代码是 

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

,需要根据需要进行修改,并对hbase客户端代码内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.0.0</version>
    </dependency>


这里的hadoop版本为对应版本

3.使用maven进行编译,编译方法为在命令行中进入到源代码根目录,运行mvn clean package。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\中。


具体测试方法分为两步骤:

1.在hbase目录中执行

./bin/hbase shell

进入hbase shell

2.创建一个名为“usertable"的表,并随意创建一个列族,这里以first为例。

create 'usertable','f1','f2','f3'
3. 加载数据

终端进入ycsb根目录;执行

./bin/ycsb load hbase -P workloads/workloada -p threads=10 -p columnfamily=first -p recordcount=10000 -s > load.dat

4.执行测试

./bin/ycsb run hbase -P workloads/workloada -threads 10 -p  -p columnfamily=first -p > transactions.dat


5.查看测试结果

vim transactions.dat

我已经编译好了针对hbase0.92.1版本的文件,下载地址是http://pan.baidu.com/share/link?shareid=536252&uk=2567213251


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值