zoukankan      html  css  js  c++  java
  • 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.1cluseterinnodb总结

    从以上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的参数相关联的。

    --------------------- 本文来自 黄杉 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/mchdba/article/details/10524599?utm_source=copy

  • 相关阅读:
    网页复制内容追加到剪切板
    windows安装 rabbitmq 快速避坑
    springboot rabbitmq快速入门上手(实用)
    python3 websocket客户端
    mybatis查询结果一对多
    mysql 插入数据,存在即更新
    centos7 安装mysql8.0
    收藏一个【fastjson反序列化漏洞原理及利用】
    .NET 5 with Dapr 初体验
    HttpClient缺陷引起的 无法连接到远程服务器 通常每个套接字地址只允许使用一次
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13317473.html
Copyright © 2011-2022 走看看