使用ycsb测试cassandra
参考 https://github.com/cloudius-systems/osv/wiki/Benchmarking-Cassandra-and-other-NoSQL-databases-with-YCSB
https://github.com/brianfrankcooper/YCSB/tree/master/cassandra 创建 表头
https://gist.github.com/pbailis/3978273 设置field参数 长度和个数
启动和 redis类似,只不过,参数不同。
比如redis指定主机的参数是 -p "redis.host=127.0.0.1"
而cassandra 是 -p hosts=127.0.0.1
这里hosts为什么是复数,应该是因为cassandra可以有多个服务节点。
在运行测试之前,必须先运行cassrandra客户端手动创建供ycsb使用的数据库和表。
数据库名叫ycsb,表名叫usertable,按照上面的参考进行。
create keyspace ycsb
WITH REPLICATION = {'class' : 'SimpleStrategy', 'replication_factor': 1 };
USE ycsb;
create table usertable (
y_id varchar primary key,
field0 varchar,
field1 varchar,
field2 varchar,
field3 varchar,
field4 varchar,
field5 varchar,
field6 varchar,
field7 varchar,
field8 varchar,
field9 varchar);
或
create table usertable (
y_id varchar primary key,
field0 varchar);
这样在load时需要指定 -p fieldcount=1
ALTER TABLE usertable WITH COMPRESSION = {'sstable_compression': ''};
执行load测试后,可以在客户端使用 select * from usertable 查看插入的数据
示例:bin/ycsb load cassandra-cql -P workloads/workloadc -p "hosts=127.0.0.1" -p operationcount=90 -p recordcount=1000000 -p fieldlength=100 -p fieldcount=1 -threads 28
其中 -threads 28 表示使用28个线程,注意压力测试必须使用多个线程使服务端浸满,这样才可以类比leveldb的db_bench。
如果只用一个线程,那么客服交互将非常耗时。
如果出现错误,尝试使用cassandra2
bin/ycsb load cassandra2-cql -P workloads/workloadc -p "hosts=127.0.0.1" -p operationcount=90 -p recordcount=1000000 -p fieldlength=100 -p fieldcount=1 -threads 28
注意:
如果出现类似
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
的错误,网上一般说是java没装或jdk版本配置不对。但其实可能是maven没装。
直接运行提示的 mvn 命令就知道了。
使用ycsb测试cassandra的更多相关文章
- YCSB测试HBase远程完全分布式集群
写在前面 本文只讲一个很简单的问题,YCSB对HBase集群的测试.虽然网上有很多介绍YCSB测试HBase的文章,但都是针对本地HBase伪分布式集群的.大家都知道,稍微正式一些的压测都会要求测试客 ...
- 使用YCSB测试mongodb
项目里面需要对mongodb的性能进行测试,看了下网上很多做法都是使用YCSB进行测试,因此开始学习使用YCSB. 参考资料: YCSB github地址:https://github.com/bri ...
- 【操作教程】利用YCSB测试巨杉数据库性能
一.前言 巨杉数据库(SequoiaDB)是国内第一款新一代文档型分布式数据库,巨杉数据库由巨杉软件完全自主研发,拥有完全自主知识产权,不基于任何其它的开源项目.SequoiaDB数据库是为分布式存储 ...
- YCSB benchmark测试cassandra性能——和web服务器测试性能结果类似
转自:http://www.itdadao.com/articles/c15a531189p0.html http://www.cnblogs.com/bettersky/p/6158172.html ...
- YCSB测试Mysql,MongoDB,TokuMX,Couchbase性能
测试是由同事完成的,这里只做收藏. 测试说明: 1.数据量为3kw记录,每条记录11个字段,一个为主键,主键为字符类型,类似:user****,后续为数值 其他10字段为字符类型,100字符,记录长度 ...
- ycsb 测试Hbase性能
下载 github:https://github.com/brianfrankcooper/YCSB/releases/tag/0.10.0 wget https://github.com/brian ...
- 利用雅虎ycsb对cassandra做性能测试
准备: 环境: 两台虚拟机:ip:192.168.138.128/129;配置:2核4G: 版本:apache-cassandra-3.10 ycsb-cassandra-binding-0.1 ...
- 雅虎(ycsb)测试hbase(压测)
一.下载ycsb 0.10包 https://github.com/brianfrankcooper/YCSB/releases/download/0.10.0/ycsb-0.10.0.tar.gz ...
- Cassandra配置多节点集群以及使用雅虎YCSB压测Cassandra 3.11
这几天在搭Cassandra集群以及对Cassandra的性能测试,步骤还挺多,记录一下. 关于Caaandra在服务器上配置多节点集群,可以参考一下文章: http://blog.csdn.net/ ...
随机推荐
- Flume整合Spark Streaming
Spark版本1.5.2,Flume版本:1.6 Flume agent配置文件:spool-8.51.conf agent.sources = source1 agent.channels = me ...
- maven构建过程
[转载]原地址:http://www.cnblogs.com/xdp-gacl/p/4051690.html 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自 ...
- json与对象转化
/// <summary> /// 把JSON字符串还原为对象 /// </summary> /// <typeparam name="T">对 ...
- Nvelocity用法
NVelocity用法 NVelocity是一个基于.NET的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由.NET代码定 ...
- myBatis,Spring,SpringMVC三大框架ssm整合模板
整合步骤 创建web工程 导入整合所需的所有jar包 编写各层需要的配置文件 1) mybatis的全局配置文件 <configuration> <!-- 批量别名的设置 -- ...
- 转载:Solr的自动完成实现方式(第二部分:Suggester方式)
转自:http://www.cnblogs.com/ibook360/archive/2011/11/30/2269077.html 在Solr的自动完成/自动补充实现介绍(第一部分) 中我介绍了怎么 ...
- Endless Sky源码学习笔记-1
难得遇到一个比较有趣的开源游戏,又是比较偏爱的太空背景,所以打算学习下源码. Endless Sky的作者是Michael Zahniser,是一个2D太空游戏.整个程序比较简洁明了,数据没有打包,游 ...
- NPOI MVC 模型导出Excel通用类
通用类: public enum DataTypeEnum { Int = , Float = , Double = , String = , DateTime = , Date = } public ...
- I/O流——字符流
字符流 字节流提供处理任何类型输入/输出操作的足够功能,但不能直接操作Unicode字符,因而需要字符流. 字符流层次结构的顶层是Reader和Writer抽象类. 实际上,字符流的底层就是字节流. ...
- JavaScript内置对象之数组
一.JavaScript对象之数组 1.创建数组的方式 (1)使用Array构造函数 语法:new Array() 小括号()说明: -预先知道数组要保存的项目数量 -向Array构造函数中传递数组应 ...