Scylladb 性能测试

发表于:2017-6-14 10:28

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:叶槟杰    来源:51Testing软件测试网采编

分享:
   看到标题相信大部分同学会对scylladb这个名字比较陌生,先来简单介绍下:ScyllaDB 是用 C++ 重写的 Cassandra,官方称拥有比 Cassandra 多10x 倍的吞吐量,并降低了延迟,是性能优异的 NoSQL 列存储数据库,和hbase一样都源自Google三驾马车之一的Bigtable。如果对Cassandra也比较陌生,有兴趣可以自行补下相关的知识,这里不做展开。来张图谱:
  scylladb的官方提供了和cassandra性能对比的压测结果——http://www.scylladb.com/product/benchmarks/ycsb-cluster-benchmark/
  呵呵,试问吹牛逼技术哪家强? 带着疑问和好奇,DBA组也进行了一番自测。 首先需要声明一下:压测的工具同样是YCSB,不过我们测的是 docker中的单节点,硬件系统也和官方有差距,压测的指标和官方的有出入是正常的。
  首先看下我们的服务器硬件
  数据库服务器类型:Dell Inc.; PowerEdge R630; vNot Specified (Rack Mount Chassis)
  CPU:20xIntel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz RAM:64 GB
  网络:2000Mb/s
  系统磁盘:1T SSD
  操作系统:CentOS Linux release 7.3.1611 (Core)
  内核版本:3.10.0-327.el7.x86_64
  docker容器版本:Docker version 17.05.0-ce, build 89658be
  数据库镜像版本:scylladb 1.7.0-0.20170519.25607ab对应Cassandra 2.2.8
  YCSB客户端加载程序硬件
  服务器类型:Dell Inc.; PowerEdge R630; vNot Specified (Rack Mount Chassis)
  CPU:48xIntel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz
  RAM:96 GB
  网络:2000Mb/s
  操作系统:CentOS release 6.7 (Final)
  内核版本:2.6.32-573.el6.x86_64
  YCSB版本:ycsb-0.12.0
  下面是我们每次迭代的基准测试步骤:
  1.停止集群。
  2.通过删除所有数据文件和提交日志清除数据库状态。
  3.使用命令清除OS缓存: echo 1 > /proc/sys/vm/drop_caches
  4.启动集群。
  5.创建YCSB密钥空间和表用户表。
  6.在用户表中插入1000万行。
  7.运行OPS加载。
  每个步骤对应执行的命令如下:
  1.docker stop scylla1
  2.rm -rf scylla/ && mkdir -p /data/scylla/scylla1/data /data/scylla/scylla1/commitlog
  3.echo 1 > /proc/sys/vm/drop_caches
  4.docker run --rm -p 10.10.10.36:9042:9042 --name scylla1 --volume /data/scylla/scylla1:/var/lib/scylla -d scylladb/scylla
  5.create keyspace ycsb WITH REPLICATION = {'class' : 'SimpleStrategy', 'replicationfactor': 1 }; USE ycsb;
  create table usertable (
  yid varchar primary key, field0 varchar, field1 varchar, field2 varchar, field3 varchar, field4 varchar, field5 varchar, field6 varchar, field7 varchar, field8 varchar, field9 varchar);
  6.bin/ycsb load cassandra-cql -P workloads/workload* -P cassandra.properties -s -threads 100
  7.bin/ycsb run cassandra-cql -P workloads/workload* -P cassandra.properties -s -threads 100 >> ./results/workload*.log
  结果:
  1000w数据量约占7.4G的存储空间;
  结论:单节点未开启dpdk模式就能达到如此高吞吐量,同时提供低延迟,非常不错,很有深入调研的价值。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号