MySQL Cluster初步测试结果汇总图示报告 --> 用mysqlslap与sysbench进行测试
Cluster结构图
测试环境简介
Mysql cluster集群测试环境
4 data node,32G 8核cpu
4 sql node, 16G 8核cpu
1 manage node,16G 8核cpu
Cluster版本:
mysql-5.5.25ndb-7.2.7
单机innodb测试环境
32G内存 32核cpu mysql版本 5.1.56
测试工具
1mysqlslap
2sysbench
备注1:mysqlslap测试图片中,纵坐标为耗时(s),横坐标为最大的客户端连接数。
备注2:sysbench测试图片中,纵坐标为执行操作数量,横坐标为最大的客户端连接数。
mysqlslap和sysbench的使用可以参考以下资料:
http://blog.csdn.net/mchdba/article/details/8960249
http://blog.csdn.net/mchdba/article/details/8951289
1.1 Mysqlslap50W并发写
1.2Mysqlslap100W并发写
1.3Mysqlslap200W并发写
1.4Mysqlslap400W并发写
2.2 sysbench500W读写
2.2 sysbench1000W读写
2.3sysbench1500W读写
3.1 sysbench500W读
3.2 sysbench1000W读
3.2 sysbench2000W读
4.1单条复杂sql测试结果1
以上可以看出,工具压力测试之下,4个datanode下,mysqlcluster的读写性能都要高于innodb,但是一些复杂的sql,在节点数少的情况下,mysqlcluster的查询性能比innodb稍差,比如:
SELECTSQL_NO_CACHE l.brand_code,l.card_crc,l.card_ln,l.card_limit_money,l.card_no,
l.card_pwd,l.user_id,l.effect_date,l.expire_time,l.card_money,l.create_time,l.card_type,l.status,l.issue,l.isextension,l.active_time
FROM card_packagel WHERE 1 ANDcard_type=20ANDis_reserve=0ORDER BYcard_lnDESC,card_noASC LIMIT 0,20;
4.2 单条复杂sql测试结果2
再看第二个复杂的sql,走全表扫描,检索的数据占据总量90%多(520W/550W)
SELECTSQL_NO_CACHE COUNT(card_no)FROMcard_couponl WHERE 1 ANDcard_type=30ANDis_reserve=0;从图中1节点2节点4节点的数据可以看出,比较复杂的sql或者检索数据比较多的sql,datanode越多,查询性能越高
5.1cluseter与innodb总结
从以上1.X、2.X、3.X以及4.X系列可以看出,4个datanode下,大量并发的情况下:
1,在写操作上ndbcluster是innodb的3到4倍
2,在读性能上,ndbcluster是innodb的2倍,压力越大并发量越大时,ndbcluster的查询性能越高
3,99.999%高可用,无延时
Cluster需要注意的地方:
1,如果没有异地灾备或者第二组cluster备的情况下,0.001%的几率下,所有的数据节点一起down机,重新启动整个cluster比较耗时,经过测试,10G的数据加载到内存中,大概需要25分钟。
2,需要很多数据节点,所以对机器的数量要求比较多。
3,并发量小,cluster相对于innodb没有很大的优势,基本持平;但是一些复杂的sql查询或者表扫描的情况下,数据节点少的时候,cluster的性能会与单机innodb持平
4,sql在group、order之前的数据集越少或越接近最终结果集 还是比较好的,反之结果多了网络开销和多次计算使得它的查询性能会与单机持平甚至略差。
5,一条sql允许write的总记录行数是与config.ini的参数相关联的。
MySQL Cluster初步测试结果汇总图示报告 --> 用mysqlslap与sysbench进行测试的更多相关文章
- [置顶] MySQL Cluster初步学习资料整理--安装部署新特性性能测试等
1.1 mysql-cluster简介 简单的说,MySQLCluster实际上是在无共享存储设备的情况下实现的一种完全分布式数据库系统,其主要通过NDBCluster(简称NDB)存储引擎来实现. ...
- 第 16 章 MySQL Cluster
前言: MySQL Cluster 是一个基于 NDB Cluster 存储引擎的完整的分布式数据库系统.不仅仅具有高可用性,而且可以自动切分数据,冗余数据等高级功能.和 Oracle Real Cl ...
- MySql(十六):MySql架构设计——MySQL Cluster
前言: MySQL Cluster 是一个基于 NDB Cluster 存储引擎的完整的分布式数据库系统.不仅仅具有高可用性,而且可以自动切分数据,冗余数据等高级功能.和 Oracle Real Cl ...
- MySQL性能调优与架构设计——第 16 章 MySQL Cluster
第 16 章 MySQL Cluster 前言: MySQL Cluster 是一个基于 NDB Cluster 存储引擎的完整的分布式数据库系统.不仅仅具有高可用性,而且可以自动切分数据,冗余数据等 ...
- sysbench压力测试工具简介和使用(一)
sysbench压力测试工具安装和参数介绍 一.sysbench压力测试工具简介: sysbench是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据 ...
- MySQL Cluster搭建与测试
MySQL Cluster是一个基于NDB Cluster存储引擎的完整的分布式数据库系统.不仅仅具有高可用性,而且可以自动切分数据,冗余数据等高级功能.和Oracle Real Cluster Ap ...
- MySQL Cluster测试过程中的错误汇总--ERROR 1296 (HY000)等等
参考资料: http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-privilege-distribution.html http://www.cl ...
- MySQL Cluster 7.3.5 集群配置实例(入门篇)
一.环境说明: CentOS6.3(32位) + MySQL Cluster 7.3.5,规划5台机器,资料如下: 节点分布情况: MGM:192.168.137. NDBD1:192.168.137 ...
- mysql集群 MySQL Cluster
<?php /* 郑重说明2015年6月11日16:28:14,目前为止MySQL Cluster 社区版不支持INNODB,商业版支持,但是授权价格20W左右,so看此文档之前,考虑下钱 My ...
随机推荐
- (翻译)Entity Framework技巧系列之十 - Tip 37 - 41
提示37. 怎样进行按条件包含(Conditional Include) 问题 几天前有人在StackOverflow上询问怎样进行按条件包含. 他们打算查询一些实体(比方说Movies),并且希望预 ...
- ASP.NET MVC 入门10、Action Filter 与 内置的Filter实现(实例-防盗链)
于ASP.NET MVC Preview5. 前一篇中我们已经了解了Action Filter 与 内置的Filter实现,现在我们就来写一个实例.就写一个防盗链的Filter吧. 首先继承自Filt ...
- linux下判断网络是否连接
本文改写自网上的一个程序,原始程序中为阻塞式调用,而且有现成创建的过程,非常不利于集成到自己程序中,因此对原始程序进行改造,使其可以完成发送一个imcp包的方式来判断网络连通,只需要调用改进后的 bo ...
- Nitrous挂VPN
- 线性表-串:KMP模式匹配算法
一.简单模式匹配算法(略,逐字符比较即可) 二.KMP模式匹配算法 next数组:j为字符序号,从1开始. (1)当j=1时,next=0: (2)当存在前缀=后缀情况,next=相同字符数+1: ( ...
- 打印出从1到最大的n位十进制数
首先这一题会溢出,要考虑的大数问题.所以不能用简单的是int类型数来表示(32位无符号int 范围是0x00000000···0xFFFFFFFF),下面主要是非递归的实现代码,自己做了注释方便以后回 ...
- 为Virtualbox中的Solaris10安装VBoxAdditions
安装增强插件,以便能够和虚拟机拖放文件 1.启动虚拟系统,选择安装VirtualBox增强功 能(Guest Additions).在VirtualBox中选择“设备”->“安装增强功能”.Vi ...
- 《GettingThingsDone》--GTD学习笔记(一)-GTD理论
利用春节假期阅读了<Getting Things Done>一书,下文整理了下阅读过程中做的读书笔记和心得. ==GTD理论== 一. 目的: 1. 收集需要处理的事情把它置于一个脱离大脑 ...
- 字符串旋转(str.find()---KMP)
此题旋转带有技巧性,问题转化为常见的问题,熟练STL可以直接用str.find()函数,其是主要想用KMP算法实现字符串的查找算法... //如果对于一个字符串A,将A的前面任意一部分挪到后边去形成的 ...
- 安装sql server 出现挂起问题
1.安装SQL Server的时候出现的情况.“以前的某个程序已在安装计算机上创建挂起的文件操作.运行安装之前必须重新启动计算机”的提示. 2.解决方法 关于SQL安装被挂起的修复大家可能都遇到过当S ...