首先,ycsb放狗,第一个就是
https://github.com/brianfrankcooper/YCSB/wiki
新东西一般只有国外首先有技术文档,所以一定要耐着性子看英文,开个词霸,google翻译
从getting started开始
obtain YCSB source
首先是下载一个压缩包,或者安装git(类似svn)下载源代码,再build
build the basic package
解压后进入该文件夹,执行ant(只要jdk安装正确,一般都会成功)
然后build database layers
从原文我以为只要将hbase的jar拷入db/hbase/lib下就行了,其实不行,执行ant dbcompile-hbase后会报错:package org.apache.hadoop.conf找不到,而这只要将hadoop下的jar包拷过来就可以解决了
第二部分running a workload
它说有六步,其实最终只有以下几步
在hbase里建个表
数据装载
事务测试
当然是用默认的类,(如果有自己的测试设计,要重写coreworkload类?)
装载数据的命令:
java -
cp
build
/ycsb
.jar:db
/hbase/lib/
* com.yahoo.ycsb.Client -load \
-db com.yahoo.ycsb.db.HBaseClient -P workloads
/workloada
\
-p columnfamily=family -p recordcount=1000 -s > load.dat
执行事务:
java -
cp
build
/ycsb
.jar:db
/hbase/lib/
* com.yahoo.ycsb.Client -t \
-db com.yahoo.ycsb.db.HBaseClient -P workloads
/workloada
\
-p columnfamily=family -p operationcount=1000000
(这里我设的是10000,1M一段时间后内在用完,100000完成后还在不断继续,不知道为啥)
-s \
-threads 10 -target 100 > transactions.dat
六大步里有篇幅是介绍这些命令里的参数的
一般在运行完命令后,在YCSB的文件夹下面会有load.dat,transactions.dat文件的,里面记录了相应的结果