Cloud MySQL Performance Benchmark

Posts of Cloud MySQL Performance Benchmark

  • 在不同的云厂商,购买相同规格的MySQL实例(如4vCPU-16GB),获得的性能相同吗?

    本次测试中,极限性能(512并发下的QPS)表现如上图:腾讯云性能最好,达3.6万;其次是阿里云2.7万,相比于上一次测试的4.0万性能下降比较明显;其次是华为、AWS、百度,再次是Azure、Google云和Oracle云。更多详细数据参考如下。

    Sysbench QPS 详细数据

    dataaliyunawsazurebaidugooglehuaweioracletencent
    457892183151720171915247630325868
    8871643352964382234154546504610518
    161437382725489697560718472783916903
    322013215377911111910858214384771723484
    4823026178621143915330964118667774726802
    6424990199471262318316987721269788930054
    96269542246113578205351042322137852935131
    128269242320014057214811068221394823036199
    192265862330914484214271120322040795836259
    256259332339614640218271141322847743835743
    384272092292414638214521155224148769035747
    512276622277814674214051135024079719636052

    Latency (Event) 详细数据

    如下表格分别为:平均延迟 和 95%延迟数据。单位为:毫秒/ms。

    dataaliyunawsazurebaidugooglehuaweioracletencent
    412.4432.9847.4535.7037.6029.0823.7412.27
    816.5233.2248.5837.6842.1631.6728.5413.69
    1620.0434.8152.4641.2947.4333.9936.7417.04
    3228.6137.4563.2148.3667.1140.0474.6324.53
    4837.5248.3775.5256.3589.6146.28111.5232.23
    6446.1057.7591.2562.89116.6154.16146.0038.33
    9664.1176.92127.2584.14165.7678.04202.5649.18
    12885.5799.30163.88107.25215.61107.68279.9063.64
    192129.99148.24238.56161.27308.43156.77434.1295.30
    256177.67196.91314.68211.08403.63201.61619.30128.89
    384254.00301.39472.05322.16598.09286.09898.19193.28
    512333.11404.42627.82430.45811.55382.501279.61255.51
    dataaliyunawsazurebaidugooglehuaweioracletencent
    418.9536.2455.8241.1047.4737.5636.8914.73
    825.7436.2457.8744.9861.0839.6546.6317.01
    1629.1941.1062.1950.1187.5641.8566.8421.89
    3244.1745.7978.6062.19147.6149.21121.0831.94
    4866.8459.9995.8177.19204.1156.84200.4741.85
    6486.0071.83121.0890.78219.3668.05267.4149.21
    96116.80101.13183.21125.52272.27123.28325.9862.19
    128147.61142.39248.83164.45331.91150.29442.7377.19
    192219.36211.60376.49227.40450.77231.53634.66116.80
    256282.25272.27511.33292.60569.67320.171376.60158.63
    384376.49411.96802.05427.07831.46539.712449.36253.35
    512484.44549.521109.09559.501129.24549.523982.86369.77

    MySQL 参数对比表格

    dataaliyunawsazurebaidugooglehuaweioracletencent
    have_sslDISABLEDYESYESDISABLEDYESDISABLEDYESDISABLED
    innodb_buffer_pool_size9.75GB11GB12GB12GB11GB9GB17GB12GB
    innodb_doublewriteONOFFOFFONONONONON
    innodb_flush_log_at_trx_commit11111111
    innodb_flush_methodO_DIRECTO_DIRECTfsyncfsyncO_DIRECTO_DIRECTO_DIRECTO_DIRECT
    innodb_io_capacity200002002002000500012000125020000
    innodb_read_io_threads44NA84424
    innodb_write_io_threads44NA84444
    log_binONOFFONONONONONON
    performance_schemaOFFOFFONOFFONOFFONOFF
    rpl_semi_sync_master_enabledONNANAONNAONNAON
    rpl_semi_sync_master_timeout1000NANA10000NA10000NA10000
    sync_binlog11110001111
    thread_pool_size8NA4NANANA164
    version8.0.368.0.398.0.39-azure8.0.32-2.0.0.28.0.31-google8.0.28-2310038.0.40-u3-cloud8.0.30-txsql
    cpu_capacity100.9106.972.773.449.4163.1101.1118.4

    云数据库的 MySQL 8.4 版本

    目前,主流版本依旧还是8.0。在2024年04月,最新发布了 8.4 版本,该版本将是下一个稳定版(LTS版),所以也有部分云厂商开始这次该版本。目前,发布了 MySQL 8.4的云厂商有Amazon、Google云和Oracle云。这里也对8.4版本的性能做了测试,并对比如下:

    各云厂商详细测试数据

    关于各个云厂商更多的详细测试数据可以参考如下专题页面:

    更多参考

  • This content is password protected. To view it please enter your password below:

  • Oracle Cloud 是所有云平台最先支持 9.0 版本的。这里,我们来看看该版本的“标准性能”表现如何。

    测试实例与环境说明

    这里使用的实例类型是:MySQL.4,单个节点为4 ecpu 32gb,测试区域选择的是“东京”(ap-tokyo-1),多可用区(FAULT DOMAIN)的版本,测试实例存储空间大小为 100 gb。即:

    instance_type=MySQL.4
    vcpu_per_node=4
    memory_size_per_node=32
    region=tokyo
    availability=multi-az
    storage_size=100
    db_version=8.0.39/8.4.2/9.0.1

    性能对比

    本次测试分别测试了 8.0.39/8.4.2/9.0.1 这三个版本。详细的性能对比如下:

    dataMySQL80MySQL84MySQL90
    4355136063360
    8593653785256
    16805481867287
    32831780297817
    48813082047911
    64783879818060
    96850484308172
    128819882868000
    192804380538112
    256790780347536
    384820980558151
    512838680307872

    性能概述

    从该“标准”测试来看,9.0.1的性能较为稳定。从上述数据中来看,似乎略微低于 8.0和8.4 版本,但经过调查,主要原因是由于云平台 CPU 资源多少所导致的,而并不是数据库本身的问题。

    此外,在今年5月份观察到的8.4性能退化问题(参考),目前也已经解决。

  • 在不同的云厂商,购买相同规格的MySQL实例(如4vCPU-16GB),获得的性能相同吗?

    dataaliyun_202409_hangzhou->stdbenchtencent_202409_beijing_exclusive->stdbenchhwcloud_202409_beijing_x86->stdbenchbaiducloud_202409_beijing->stdbenchaws_202409_tokyo_m6i->stdbenchazure_202409_east_asia_4c16g->stdbenchgcp_202409_tokyo_80_enterprise->stdbenchoci_202409_tokyo_8039->mysql_on_4_ecpu
    47102559225572206163920257233551
    897029936467441013313365413415936
    161466016141822972986427654825028054
    3222155223361352012022121571036348578317
    4827905247701784916448165161197367458130
    6432704264952011418187181181276180717838
    9636846290772088321007207821330096758504
    128396972991820128210292244613388106208198
    192389993061020521220912259013478115078043
    256383563105221187216652232312985118727907
    384396793122421729211672190212904121318209
    512403333180522647216272159112930121068386
    have_sslDISABLEDDISABLEDDISABLEDDISABLEDYESYESYESYES
    innodb_buffer_pool_size9.75GB12GB9GB12GB11GB12GB11GB17GB
    innodb_doublewriteONONONONOFFOFFONON
    innodb_flush_log_at_trx_commit11111111
    innodb_flush_methodO_DIRECTO_DIRECTO_DIRECTfsyncO_DIRECTfsyncO_DIRECTO_DIRECT
    innodb_io_capacity200002000012000200020020050001250
    innodb_read_io_threads44484NA42
    innodb_write_io_threads44484NA44
    log_binONONONONOFFONONON
    performance_schemaOFFOFFOFFOFFOFFONONON
    rpl_semi_sync_master_enabledONONONONNANANANA
    rpl_semi_sync_master_timeout1000100001000010000NANANANA
    sync_binlog11110001111
    thread_pool_size84NANANA4NA16
    version8.0.368.0.30-txsql8.0.28-2310038.0.32-2.0.0.28.0.358.0.37-azure8.0.31-google8.0.39-cloud
    cpu_capacity80.493.3163.673.9110.956.349.9114.7

    测试结果概述

    在本次测试中:阿里云RDS MySQL性能表现最好,极限的QPS达到了4万;其次是腾讯云,达到了3.2万;第二梯队是华为云、百度云和AWS,极限的QPS约2.2万;之后是Azure、Google云,极限QPS约1.2万;最后是Oracle云,极限QPS约8500。详细的数据和趋势图,可以参考以上的图、表,这里不再详述。

    (more…)
  • 在不同的云厂商,购买相同规格的MySQL实例(如4vCPU-16GB),获得的性能相同吗?

    为了回答上面的疑问,于是就开启了我的数据库性能测试之旅。这是第二次测试,上一次是在2023年12月(参考:云数据库(RDS MySQL)性能深度测评与对比)。

    性能测试结果与概述

    (more…)
  • 近日,MySQL发布了8.4版本,这是一个新的稳定版。在MySQL版本规划中,在2026年8.0.x生命周期结束后,将成为下一个主流稳定版本。

    目前为止,看到该版本并没有特别大的改进。部分改变包括改进了直方图统计信息更新、并行复制、组复制(GR)等,完整的更新可以参考:Changes in MySQL 8.4.0 (2024-04-30, LTS Release)

    MySQL 8.4@OCI性能测试(vs MySQL 8.0)

    Oracle Cloud上也第一时间支持了该版本,于是也通过性能测试的方式,第一时间“尝鲜”了一下该版本。性能测试的趋势图如下:

    注意到,在该Sysbench测试模式下:

    • 当前MySQL 8.4在性能上相对于8.0版本,要低21%(以16并发为参考)
    • 并在超高并发时(并发高于192),性能出现了严重的退化

    作为一个稳定版本,期待官方尽快解决。

    (more…)