刚接触了ycsb,这个确实比较新,基本没有找到除官方发布的信息以外的资料,国内的就更不用指望了.按照getting started
http://wiki.github.com/brianfrankcooper/YCSB/getting-started试了下ycsb来benchmarkCassandra,由于本人是ycsb的新手,cassandra的新手,外加unix的新手,期间还是纠结了一阵.现记录下整个过程:
环境:ubuntu910 Jdk 1.6.21 Cassandra0.6.4 ycsb0.1.2
1.下载Cassandra,把lib中的jar包全部拷贝到ycsb的db/Cassandra-0.6/lib 下
2.打开terminal,cd到YCSB目录,执行:
ant
ant dbcompile-cassandra-0.6
如果没有successfully build,并且遇到了class version的error,那么考虑下你的jdk版本是不是够高,因为Cassandra的jar包是在jdk1.6编译的,好像是u12以上.
3.安装Cassandra,具体:
a,把下载的Cassandra放在var/lib(推荐)下,文件夹就改为Cassandra好了
b,打开conf/storage-conf.xml,看到里面CommitlogDirectory和DataFileDirectory,在对应的目录下创建相关文件,并适当设置权限.
c,打开log4j.properties文件,看到里面的日志文件目录,一般为var/log/cassandra/system.log创建相应目录和文件,并设置权限.
d,打开terminal,cd到cassandra目录,执行:
bin/cassandra -f
cassandra应该就可以跑起来了.看到能跑起来就关掉好了.
4.根据YCSB的具体要求,再次打开onf/storage-conf.xml,更改keyspace的name,即把keyspace1改为usertable,并且添加一个column family:
<ColunmFamily name="data"/>
.注释掉其他的columnFamily.
5.按照3.d启动cassandra
6.进入YCSB目录,输入以下:
java -cp build/ycsb.jar:db/cassandra_0.6/lib/* com.yahoo.ycsb.CommandLine -p hosts=注1 -db com.yahoo.ycsb.db.CassandraClient6
这样应该就可以看到connected,表明ycsb跟Cassandra联通了.
7.导数据.可以执行:
java -cp build/ycsb.jar:db/cassandra_0.6/lib/* com.yahoo.ycsb.Client -p -hosts=注1 -load -db com.yahoo.ycsb.db.CassandraClient6 -P workloads/workloada
这样就有数据进去了,如果要改数据规模可以直接修改workloada中的recordcount,或者据说可以再命令后加上-p recordcount=...,不过我没有成功,莫名.
8.你可以执行6的代码,根据提示输入help就可以看到可以进行的操作了,如scan
9.执行测试
java -cp build/ycsb.jar:db/cassandra_0.6/lib/* com.yahoo.ycsb.Client -p -hosts=注1 -t -db com.yahoo.ycsb.db.CassandraClient6 -P workloads/workloada
注1为hosts的ip,如果有多个host,用逗号一一隔开就好
分享到:
相关推荐
通过 YCSB,测试者可以设置不同的参数,如并发用户数量、操作类型、记录大小等,以适应各种实际环境。 ### Cassandra 简介 Apache Cassandra 是一种高度可扩展的分布式NoSQL数据库,特别适合处理大规模数据。它的...
benchmark_hbase_cassandra 使用 YCSB 对 HBase 和 Cassandra 进行基准测试的脚本。 数据库 - HBase 和 Cassandra benchmark_report.pdf 该文件包含使用 YCSB 的 HBase 和 Cassandra 基准测试结果的报告和观察结果。...
Yahoo 专门用于主流的 nosql 性能测试,java 编写,内集成 hbase,mongodb,cassandra,voldemort,redis。使用时注意需要将相应的数据库驱动复制到对应的数据库 lib 下面。
标题 "Cassandra write performance test (为什么Cassandra的写入如此慢)" 暴露了一个关键问题,即在某些情况下,Cassandra数据库系统的写入性能可能不如预期。这通常与多种因素有关,包括但不限于架构设计、硬件...
它支持多种数据库系统,包括HBase、Cassandra、MongoDB等。 2. **数据模型**:YCSB的数据模型基于键值对,其中键是唯一的,值可以是任意大小的数据。这使得它能够适应各种NoSQL数据库。 3. **工作负载**:YCSB定义...
3. **数据库绑定(Binding)**:每个数据库都有对应的绑定实现,位于`binding`目录下,如`mongodb-binding`、`cassandra-binding`等,这些绑定实现了`Database`接口,使得YCSB可以与特定数据库进行通信。 三、源码...
6. **收集与分析结果**:YCSB会记录并显示各种性能指标,如操作速率、延迟、吞吐量等。通过这些数据,你可以评估HBase在不同场景下的性能。 7. **优化HBase**:根据测试结果,对HBase的配置进行调整,如调整...
每个场景文件中定义了多个参数,如recordcount(加载元数据时的记录条数)、operationcount(压力测试时选取的记录条数)、readproportion和updateproportion等,这些参数控制着测试的行为和结果。 在进行压力测试...
3. **自定义负载**:允许用户根据实际需求定义不同的操作比例(如读取、更新、插入和扫描等)以及记录的选择分布方式(如均匀分布、Zipfian分布或最近记录优先等)。 #### 三、YCSB的工作负载 YCSB内置了多种不同...
Cloud Serving Benchmark”,是雅虎开发的用来对云服务进行基础测试的工具,其内部涵盖了常见的NoSQL数据库产品,如Cassandra、MongoDB、HBase、Redis等等。在运行YCSB的时候,可以配置不同的workload和DB,也可以...
《深入解析YCSB-HBase14-Binding 0.17.0》 YCSB(Yahoo! Cloud Serving Benchmark)是一种广泛使用的云数据库基准测试工具,它为各种分布式存储系统提供了标准化的性能评估框架。YCSB-HBase14-Binding 0.17.0是针对...
Cloud Serving Benchmark”,是雅虎开发的用来对云服务进行基础测试的工具,其内部涵盖了常见的NoSQL数据库产品,如Cassandra、MongoDB、HBase、Redis等等。在运行YCSB的时候,可以配置不同的workload和DB,也可以...
2. **数据加载**: YCSB会生成随机的数据记录并加载到数据库中,这些记录通常包含一些字段,如键(Key)和值(Value),以模拟真实业务中的数据结构。 3. **执行工作负载**: 根据预设的模式,YCSB执行一系列的读写...
本人使用ycsb 0.1.4源码编译后 在 hadoop 2.4.0 的 hbase0.98.0 集群上测试通过。 由于资源上传受大小限制,所以只上传 编译后的文件。对不起我最大只能上传50M,只能上传编译方法了。下载源码,然后将下载后的pom....
非关系数据库(经常被称为NoSQL)的特点是弹性和可伸缩性。另外,它们可以存储大数据并与云计算系统协同工作。这些因素导致非关系数据库非常流行。在2013年,NoSQL数据库的种类达到了150多个,并且一直在增长,多种...
标题中的“ycsb.zip_ycsb脚本_压测”表明这是一个关于YCSB(Yahoo! Cloud Serving Benchmark)工具的压缩包,其中包含了用于压力测试MongoDB数据库的脚本。YCSB是一个广泛使用的分布式系统性能基准测试工具,主要...
YCSB HBase Group 7-1 测试步骤
The benchmark also utilized the Yahoo Cloud Serving Benchmark (YCSB) to simulate different types of workloads: 1. **Insert Only:** - **HDD Platform:** Slower insert rates due to higher latency. - *...