使用ycsb对hbase0.94.11 benchmark
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。
- 下载ycsb源代码,将根目录下的pom.xml中<hbase.version>0.90.5</hbase.version>修改为对应版本;
- 将源代码中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的更多相关文章
- 谁说他们版本不兼容——hadoop1.2.1+hbase0.94.11+nutch2.2.1+el
一.背景 最近由于项目和论文的需要,需要搭建一个垂直搜索的环境,查阅了很多资料,决定使用Apache的一套解决方案hadoop+hbase+nutch+es.这几样神器的作用就不多作介绍了,自行参考各 ...
- hadoop1.2.1+hbase0.94.11+nutch2.2.1+elasticsearch0.90.5安装配置攻略
一.背景 最近由于项目和论文的需要,需要搭建一个垂直搜索的环境,查阅了很多资料,决定使用Apache的一套解决方案hadoop+hbase+nutch+es.这几样神器的作用就不多作介绍了,自行参考各 ...
- 伪分布式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 ...
- hbase0.94.11版本和hbase1.4.9版本的benchamark区别
1.起初使用ycsb对hbase进行benchmark,分别在100%写的情况下检测写性能:在100%读的情况下检测读的性能.实验数据如下: 2.新版本的habse写性能竟然不如老版本.!!!.于是我 ...
- 伪分布式hbase从0.94.11版本升级stable的1.4.9版本
Hbase从0.94.11升级到stable的1.4.9版本: 升级思路: hadoop1.1.2 hbase 0.94.11 ↓ had ...
- 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,节点之间局域网连接 ...
- Hadoop2.2.0 hive0.12 hbase0.94 配置问题记录
环境:centos6.2 Hadoop2.2.0 hive0.12 hbase0.94 1>hadoop配好之后,跑任务老失败,yarn失败,报out of memory错误,然后怎么调整内存大 ...
- hbase-0.94.16 在hadoop-1.2.1的安装配置
1. ZooKeeper的安装: ZooKeeper是一个分布式的服务框架.可用于处理分布式的一些数据管理问题,如统一命名服务.状态同步服务.集群管理.分布式应用配置项的管理等. 步骤如下: a. 准 ...
- Ubuntu环境下nutch2.2.1集成HBase0.94.25
nutch2.2.1集成HBase0.94.25 (详见:http://duguyiren3476.iteye.com/blog/2085973 ) 1. 修改nutch的hbase配置 //将自己的 ...
随机推荐
- Unix下5种I/O模型
Unix下I/O模型主要分为5种: (1)阻塞式I/O (2)非阻塞式I/O (3)I/O复用(select和poll) (4)信号驱动式I/O (5)异步I/O 1.阻塞式I/O模型 unix基本的 ...
- 【原创】大数据基础之Logstash(3)应用之http(in和out)
一个logstash很容易通过http打断成两个logstash实现跨服务器或者跨平台间数据同步,比如原来的流程是 logstash: nginx log -> kafka 打断成两个是 log ...
- [PHP]常量的一些特性
1. define()函数如果定义了两个名称一模一样的常量,那么它将不会抛出错误,并且只有第一次的定义是生效的,再次定义并不会覆盖先前的值: define('ABC', 0); define('ABC ...
- LINUX-redis & mongodb
ubuntu安装redis: apt-get -y install redis-serverubuntu启动redis: /etc/init.d/redis-server restart linux安 ...
- STM32L476应用开发之三:串行通讯实验
在我们的项目需求中,有两个串口应用需求,一个是与炭氢传感器的通讯,另一个是与显示屏的通讯.鉴于此,我们需要实验串行通讯. 1.硬件设计 串行通讯一个采用RS232接口,另一个直接采用TTL方式.我们在 ...
- Modbus库开发笔记之十:利用协议栈开发Mosbus RTU Slave应用
上一节我们使用协议占开发了一个Modbus TCP Server应用.接下来我们使用协议栈在开发一个基于串行链路的Mosbus RTU Slave应用. 根据前面对协议栈的封装,我们需要引用Modbu ...
- HTML中特殊符号的处理
一.写在前面 今天在写页面时记不清大/小于符号该怎么写,于是就想着整理一下方便后面用到! 二.HTML中常用特殊符号的处理 < < 小于号或显示标记 > ...
- 【batch】批处理文件多参数处理和for循环字符串连接
batch文件写起来,酸爽不谈了.[1]今天在github上发现个好东西batsh,运行地址:https://batsh.org/.[1] 这里需求的场景是:调用run.bat脚本并传入多个参数(相对 ...
- PDF编辑方法,PDF怎么去除背景
PDF文件现在是使用的频率很高的一个软件的格式,PDF文件能够更加直观清楚的表达,PDF文件的使用很方便但编辑起来就来没有那么容易了,PDF文件的编辑是需要借助软件的,今天小编就来跟大家分享一下PDF ...
- CF919F
题意: Alice和Bob玩游戏,每人各有8张牌,牌的大小在0~4之间 每次操作,先手可以选择自己一张牌和对方一张牌求和后%5,将新的牌替代自己拿出的那张牌,以此类推,直到有一个人手中的牌全部是0,则 ...