我试图让YCSB-0.1.4在CDH 5.1.2上测试Hbase 0.98.1。我按照https://github.com/brianfrankcooper/YCSB/wiki/Getting-Started的说明进行操作。当我运行YCSB测试时,它可以工作,但它不会将数据加载到usertable中。在下面的log files.see命令中看不到任何错误,操作为零。怎么解决?
$ bin/ycsb load hbase -P workloads/workloada -p columnfamily=f1 -s | tee -a workloada.dat
YCSB Client 0.1
Command line: -db com.yahoo.ycsb.db.HBaseClient -P workloads/workloada -p columnfamily=f1 -s -load
Loading workload...
Starting test.
0 sec: 0 operations;
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.3.2-1031432, built on 11/05/2010 05:32 GMT
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:host.name=sapphire
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.version=1.7.0_65
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.home=/usr/java/jdk1.7.0_65/jre
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.class.path=/home/YCSB/ycsb-0.1.4/voldemort-binding/conf:/home/YCSB/ycsb-0.1.4/core/lib/core-0.1.4.jar:/home/YCSB/ycsb-0.1.4/gemfire-binding/conf:/home/ /YCSB/ycsb-0.1.4/nosqldb-binding/conf:/home/ /YCSB/ycsb-0.1.4/jdbc-binding/conf:/home/ /YCSB/ycsb-0.1.4/hbase-binding/lib/hbase-binding-0.1.4.jar:/home/ /YCSB/ycsb-0.1.4/hbase-binding/conf:/home/ /YCSB/ycsb-0.1.4/infinispan-binding/conf
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.library.path=/opt/oracle/bd_cell12.1.2.0.99_LINUX.X64_140907.2307/cellsrv/lib:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:os.name=Linux
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:os.arch=amd64
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:os.version=2.6.39-400.215.9.el6uek.x86_64
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:user.name=dodo
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:user.home=/home/hbase
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Client environment:user.dir=/home/ /YCSB/ycsb-0.1.4
14/09/23 10:11:12 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=zk:2181,zk1:2181,zk2:2181 sessionTimeout=60000 watcher=hconnection
14/09/23 10:11:12 INFO zookeeper.ClientCnxn: Opening socket connection to server zk1/192.168.27.63:2181
14/09/23 10:11:12 INFO zookeeper.ClientCnxn: Socket connection established to zk1/192.168.27.63:2181, initiating session
14/09/23 10:11:12 INFO zookeeper.ClientCnxn: Session establishment complete on server zk1/192.168.27.63:2181, sessionid = 0x2488ae01865289b, negotiated timeout = 60000
10 sec: 0 operations;
20 sec: 0 operations;
30 sec: 0 operations;
40 sec: 0 operations;
50 sec: 0 operations;
60 sec: 0 operations;
70 sec: 0 operations;
答案 0 :(得分:0)
当我遇到这个错误时,我正在MultiNode
群集(大约12-16)工作,这是我必须改变的: -
1)检查YCSB\pom.xml
下hbase10\hbase098\hbase094
下的HBase版本是否与单节点或多节点群集中的HBase版本兼容。 (寻找hbase10.version
)
2)同时使用ycsb命令提供HBase配置文件路径。
恩。
这是你的命令: - bin/ycsb load hbase -P workloads/workloada -p columnfamily=f1 -s
应该是这样的: - bin/ycsb load hbase -P workloads/workloada -cp $HBase_HOME/conf/-p columnfamily=f1 -s
仅供参考: - 当我尝试使用单节点群集时,我没有提供配置文件路径。但是对于多节点集群,我必须提供配置文件路径。
还有一件事需要查找,usertable
应该包含名称为f1
的列系列(family
配置文件中的默认值为workload
)
希望它有所帮助。 :)