1. 测试目的
测试Cassandra集群读写TPS的极值,确定Cassandra读写性能。

2. 测试环境

2.1 硬件信息

CPU 8核 Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
RAM 16G

2.2  软件信息

JDK 1.8u151
Cassandra 3.11.1
cassandra-driver-core 3.3.2
OS CentOS Linux release 7.3.1611

2.3 集群信息

集群名称 IP 类型
JCPT Test Cluster 10.112.68.184 节点1
10.112.68.185 节点2
10.112.68.186 节点3(种子节点)
10.112.68.189 节点4
10.112.68.191 节点5
10.112.68.192 节点6(种子节点)
2.4   主要配置信息
集群配置为单数据中心,测试时,数据库keyspace的,采取SimpleStrategy策略
副本因子:3
分区器:Murmur3Partitioner
整个过程中通用设置如下
A.线程池设置:
setCoreConnectionsPerHost(HostDistance.LOCAL, 2)
setMaxConnectionsPerHost(HostDistance.LOCAL, 4) 

B.每次连接最大请求数量采取默认设置:本地端--1024;远程端--256
C.本地线程池门限采用默认设置:32
3. 测试过程
先测试单个客户端的读写性能,再测试多个客户端的TPS,测试出服务器读写操作的TPS瓶颈。
3.1  单客户端测试读写性能及结果
在单个客户端对集群中的单表进行数据读写操作,测试读写性能。
具体过程:
100个并发向同一张表处理100W数据;
200个并发向同一张表处理100W数据;
500个并发向同一张表处理100W数据;
1000个并发向同一张表处理100W数据;
1500个并发向同一张表处理100W数据;
(脚本测试所在机器:10.112.68.186)
测试结果:

l  表一 单数据库100W数据性吞吐量性能测试

  100 200 500 1000 1500
insert 5472 5574 23429 30781 35024
select 18985 20323 35795 39088 38927
update 5766 5824 27805 34301 35867
delete 5446 5328 26581 34934 34635 

l  表二 单数据100W数据时间耗时时测试

  100 200 500 1000 1500
insert 182.734 179.406 42.683 32.488 28.566
select 52.672 49.206 27.937 25.583 25.702
update 173.439 171.717 25.779 29.154 27.895
delete 183.608 187.671 37.621 28.625 28.887
为了直观上看各项性能变化,将上述表格使用折线图表示,如图1、图2所示:

图1 100W性能测试—TPS

图2 100W性能测试—耗时(S)

3.2   多客户端测试读写性能及结果

在多个客户端分别对集群中的同一张表进行数据读写操作,测试读写性能。
过程:
I. 2个客户端进行分别处理100W数据,将各个客户端TPS值相加,计算集群TPS;
II. 3个客户端进行分别处理100W数据, 将各个客户端TPS值相加,计算集群TPS;
III.依次增加客户端数量,计算TPS达到瓶颈之后,停止增加;
IV. 线程数量为500。
结果:

图3 多客户端性能测试—吞吐量(TPS)

集群达到瓶颈之后开始抛出如下错误信息:

Cassandra timeout during write query at consistency LOCAL_ONE (1 replica were required but only 0 acknowledged the write)

Cassandra timeout during write query at consistency LOCAL_ONE (1 replica were required but only 0 acknowledged the write)

Cassandra timeout during write query at consistency LOCAL_ONE (1 replica were required but only 0 acknowledged the write)

                      ... ...

4  测试结论

( 1 )   从单客户端测试数据得出在并发大于500后个并发范围内,各项操作TPS提升幅度较大,并发数量为1500时TPS趋于稳定,测试线程数大于1500之后会出现响应超时错误。

( 2 )   当增加客户端数量,集群 TPS线性增加,集群读写TPS可以达到6万,之后趋于稳定,其中超过6个客户端同时进行百万级读数据操作时达到瓶颈,写操作在超过7个客户端后同时进行百万级写数据操作时性能达到瓶颈,此时写和修改操作TPS高于读的TPS。可知:大量数据操作时写的性能优于读。
附件:
测试代码 cassandra-test.rar

转载于:https://www.cnblogs.com/chenjunjie12321/p/8253034.html

Cassandra读写性能测试相关推荐

  1. seafile 部署_Seafile开启webdav及读写性能测试

    为什么要在seafile搞webdav Seafile 一直是一款可靠的文件同步web应用,经过个人测试,同一台机器上,seafile在传输文件时的速度比nextcloud要快(可能也与php的设置有 ...

  2. influxdb mysql对比_InfluxDB读写性能测试

    这里将告诉您InfluxDB读写性能测试,教程操作步骤: 今天进行了InfluxDB和MySQL的对比测试,这里记录下结果,也方便我以后查阅. 操作系统: CentOS6.5_x64InfluxDB版 ...

  3. HADOOP读写性能测试

    HADOOP读写性能测试 一.操作系统磁盘IO测试 1磁盘写: [root@hadoop13 ~]#  timedd if=/dev/zero of=/data/test.txt bs=1M coun ...

  4. cassandra读写数据

    cassandra读写数据 写 写一致性级别 cassandra的可调一致性级别意味着你可以在查询中指定所需的写操作一致性,一致性级别越高,说明需要更多的副本节点相应才能认为写操作完成,更高的一致性级 ...

  5. PG-NoSQL特性:json和 jsonb 读写性能测试

    json和 jsonb 读写性能测试 文章目录 json和 jsonb 读写性能测试 前言 一.jsonb 类型创建索引 二.json jsonb 表写性能测试 1.写入速度比较 2.两表占用空间间大 ...

  6. termux获取sd卡读写权限_原来是用错了读卡器,雷克沙lexar 1667X 真实读写性能测试...

    上一篇文章结合泥坑D3300套装老设备对雷克沙新版1667x 进行兼容性部分的测试,可以正常使用,而且在拍摄性能上有了很大的提升.当然雷克沙新版1667x 主要还是用来搭配SONY A6100来进行视 ...

  7. nas 软件 性能测试,理论读写性能测试

    评测平台介绍与说明:硬件平台 CPUIntel Core i7 4770K 主板华硕Z87-A 内存金士顿 DDR3-1600 4G*2 硬盘主盘:浦科特M5P 512G 测试盘:HGST 4TB N ...

  8. 使用iozone进行磁盘读写性能测试

    对于很多GIS工程师,经常需要对系统的磁盘性能进行测试,为了排查问题或者帮助用户进行系统设计. IOZone这个磁盘性能测试工具就是一个很方便的辅助工具. 下面就以个测试共享目录的读写性能为例,说明其 ...

  9. 使用maven编译YCSB0.1.4对cassandra进行性能测试

    Yahoo! Cloud Serving Benchmark (YCSB) 是 Yahoo 公司的一个用来对云服务进行基础测试的工具.目标是促进新一代云数据服务系统的性能比较.目前支持对:Cassan ...

最新文章

  1. 分享10个我最满意的windows工具,极大提升工作效率
  2. Tomcat(二):tomcat配置文件server.xml详解和部署简介
  3. 通过selenium模拟登陆新浪微博爬取首页和评论
  4. 数据增强:数据有限时如何使用深度学习 ?
  5. 跨语言调用Hangfire定时作业服务
  6. 接私活被公司开除。。
  7. drop 很慢 物化视图_物化视图问题-效率捉摸不定
  8. 【设计模式】第三章 单例模式
  9. CPU Cache Line:CPU缓存行/缓存块
  10. python的django框架http请求_python django框架(一)
  11. moead算法流程步骤_算法——抓住程序的灵魂
  12. 基于netty框架的socket长连接负载均衡解决方案
  13. Q132:PBRT-V3,BSSRDF(双向散射表面反射分布函数)(5.6.2章节、11.4章节)
  14. 如何编写一个高效的Testbench?
  15. 【汽车冷却胶管】的试验研究检测及质量改进方法
  16. 【WPS】中插入“公式”后行距不正常的解决办法
  17. HTML期末学生大作业 响应式动漫网页作业 html+css+javascript (1)
  18. 计算机网络期末考试代做,代做计算机作业-易指做帮写网
  19. Python脚本刷网页访问量或关键词搜索频率
  20. 2022年制冷与空调设备运行操作最新解析及制冷与空调设备运行操作作业考试题库

热门文章

  1. 是男人就过8题!楼教主出题,请接招!
  2. 一个普通AI程序员的内心独白...
  3. Tomcat 架构原理解析到架构设计借鉴
  4. 那些总是写“烂代码”的同学,强烈推荐你使用这款IDEA插件!
  5. Spring MVC 到 Spring BOOT 的简化之路
  6. 优雅的使用 ThreadLocal
  7. 新网杯top1方案:手把手构建中文语音合成模型!
  8. 2021科大讯飞-车辆贷款违约预测赛事 Top1方案!
  9. CMU赵越:关于数据挖掘的分享!
  10. 一块V100运行上千个智能体、数千个环境,这个「曲率引擎」框架实现RL百倍提速...