Cloud MySQL Performance Benchmark
Posts of Cloud MySQL Performance Benchmark
-
本文是一个系列文章的一部分,该系列较为完整的对各个云厂商的RDS MySQL进行了测试,包括了阿里云、腾讯云、华为云、百度云、AWS、Azure、GCP、Oracle Cloud等,最新的测试:云数据库RDS MySQL的性能。
Sysbench QPS 详细数据
data aliyun aws azure baidu google huawei oracle tencent 4 6749 1657 1417 1776 1655 2753 2987 6118 8 9483 3304 2820 3260 2895 4989 5004 11196 16 14533 6395 5418 6094 5206 9263 7343 19249 32 22082 12295 9646 10483 7427 15601 7881 30337 48 27974 16295 12511 13599 8482 19787 7583 34849 64 33061 17704 15137 16364 9209 21697 7626 35951 96 35588 20843 18669 19334 9659 22855 8257 34147 128 38226 22311 20964 20061 9704 22303 8046 34271 192 40135 22530 23274 20960 10456 23323 7806 37142 256 40190 22369 24643 21412 10638 23572 7853 38175 384 41914 22097 25153 21104 10506 23785 8009 39298 512 41596 21793 25700 21279 10768 23910 8381 38840 Latency (Event) 详细数据
如下表格分别为:平均延迟 和 95%延迟数据。单位为:毫秒/ms。
data aliyun aws azure baidu google huawei oracle tencent 4 10.67 43.44 50.82 40.54 43.50 26.15 24.10 11.77 8 15.18 43.57 51.06 44.17 49.73 28.86 28.77 12.86 16 19.82 45.03 53.15 47.25 55.32 31.09 39.22 14.96 32 26.08 46.85 59.70 54.94 77.54 36.92 73.08 18.99 48 30.88 53.02 69.05 63.53 101.84 43.66 113.93 24.79 64 34.84 65.06 76.10 70.40 125.07 53.09 151.03 32.04 96 48.55 82.90 92.54 89.37 178.88 75.60 209.25 50.60 128 60.27 103.25 109.87 114.84 237.39 103.29 286.29 67.22 192 86.10 153.37 148.44 164.86 330.38 148.15 442.49 93.04 256 114.65 205.96 186.90 215.17 433.06 195.43 586.49 120.68 384 164.88 312.70 274.71 327.48 657.65 290.43 862.47 175.84 512 221.51 422.68 358.43 432.99 855.41 385.23 1098.68 237.15 data aliyun aws azure baidu google huawei oracle tencent 4 13.46 46.63 58.92 56.84 57.87 31.37 36.24 13.46 8 16.41 46.63 61.08 61.08 75.82 34.95 41.85 15.00 16 20.00 51.02 64.47 66.84 90.78 37.56 69.29 18.28 32 28.16 53.85 77.19 80.03 144.97 44.98 116.80 25.28 48 62.19 64.47 104.84 94.10 189.93 53.85 176.73 33.72 64 108.68 78.60 130.13 102.97 223.34 70.55 262.64 45.79 96 155.80 99.33 167.44 132.49 277.21 121.08 325.98 134.90 128 183.21 132.49 193.38 170.48 350.33 144.97 427.07 150.29 192 227.40 219.36 240.02 240.02 475.79 215.44 623.33 170.48 256 325.98 287.38 297.92 303.33 623.33 308.84 1050.76 196.89 384 411.96 434.83 458.96 442.73 926.33 539.71 2539.17 248.83 512 539.71 569.67 580.02 580.02 1191.92 559.50 2880.27 320.17 MySQL 参数对比表格
data aliyun aws azure baidu google huawei oracle tencent have_ssl DISABLED YES YES DISABLED YES DISABLED YES DISABLED innodb_buffer_pool_size 9.75GB 11GB 24GB 12GB 11GB 9GB 17GB 12GB innodb_doublewrite ON OFF OFF ON ON ON ON ON innodb_flush_log_at_trx_commit 1 1 1 1 1 1 1 1 innodb_flush_method O_DIRECT O_DIRECT fsync fsync O_DIRECT O_DIRECT O_DIRECT O_DIRECT innodb_io_capacity 20000 200 200 2000 5000 12000 1250 20000 innodb_read_io_threads 4 4 NA 8 4 4 2 4 innodb_write_io_threads 4 4 NA 8 4 4 4 4 log_bin ON OFF ON ON ON ON ON ON performance_schema OFF OFF ON OFF ON OFF ON OFF rpl_semi_sync_master_enabled ON NA NA ON NA ON NA ON rpl_semi_sync_master_timeout 1000 NA NA 10000 NA 10000 NA 10000 sync_binlog 1 1 1 1000 1 1 1 1 thread_pool_size 8 NA 8 NA NA NA 16 4 version 8.0.36 8.0.40 8.0.40-azure 8.0.32-2.0.0.2 8.0.37-google 8.0.28-231003 8.0.40-u3-cloud 8.0.30-txsql instance_type mysql.x4.large.2c db.m6i.xlarge GP_Standard_D8ads_v5 4 db-custom-4-16384 rds.mysql.x1.xlarge.4.ha MySQL.4 4c storage_type cloud_essd io1 NA cloud_enha NA CLOUDSSD NA EXCLUSIVE storage_size 100 100 100 100 100 100 100 100 storage_iops NA 3000 3000 NA NA NA NA NA cpu_capacity 172.3 110.9 139.8 73.8 46.4 162.6 86.8 128.5 -
本文是一个系列文章的一部分,该系列较为完整的对各个云厂商的RDS MySQL进行了测试,包括了阿里云、腾讯云、华为云、百度云、AWS、Azure、GCP、Oracle Cloud等,最新的测试:云数据库RDS MySQL的性能。
在不同的云厂商,购买相同规格的MySQL实例(如4vCPU-16GB),获得的性能相同吗?
本次测试中,极限性能(512并发下的QPS)表现如上图:腾讯云性能最好,达3.6万;其次是阿里云2.7万,相比于上一次测试的4.0万性能下降比较明显;其次是华为、AWS、百度,再次是Azure、Google云和Oracle云。更多详细数据参考如下。
Sysbench QPS 详细数据
data aliyun aws azure baidu google huawei oracle tencent 4 5789 2183 1517 2017 1915 2476 3032 5868 8 8716 4335 2964 3822 3415 4546 5046 10518 16 14373 8272 5489 6975 6071 8472 7839 16903 32 20132 15377 9111 11910 8582 14384 7717 23484 48 23026 17862 11439 15330 9641 18667 7747 26802 64 24990 19947 12623 18316 9877 21269 7889 30054 96 26954 22461 13578 20535 10423 22137 8529 35131 128 26924 23200 14057 21481 10682 21394 8230 36199 192 26586 23309 14484 21427 11203 22040 7958 36259 256 25933 23396 14640 21827 11413 22847 7438 35743 384 27209 22924 14638 21452 11552 24148 7690 35747 512 27662 22778 14674 21405 11350 24079 7196 36052 Latency (Event) 详细数据
如下表格分别为:平均延迟 和 95%延迟数据。单位为:毫秒/ms。
data aliyun aws azure baidu google huawei oracle tencent 4 12.44 32.98 47.45 35.70 37.60 29.08 23.74 12.27 8 16.52 33.22 48.58 37.68 42.16 31.67 28.54 13.69 16 20.04 34.81 52.46 41.29 47.43 33.99 36.74 17.04 32 28.61 37.45 63.21 48.36 67.11 40.04 74.63 24.53 48 37.52 48.37 75.52 56.35 89.61 46.28 111.52 32.23 64 46.10 57.75 91.25 62.89 116.61 54.16 146.00 38.33 96 64.11 76.92 127.25 84.14 165.76 78.04 202.56 49.18 128 85.57 99.30 163.88 107.25 215.61 107.68 279.90 63.64 192 129.99 148.24 238.56 161.27 308.43 156.77 434.12 95.30 256 177.67 196.91 314.68 211.08 403.63 201.61 619.30 128.89 384 254.00 301.39 472.05 322.16 598.09 286.09 898.19 193.28 512 333.11 404.42 627.82 430.45 811.55 382.50 1279.61 255.51 data aliyun aws azure baidu google huawei oracle tencent 4 18.95 36.24 55.82 41.10 47.47 37.56 36.89 14.73 8 25.74 36.24 57.87 44.98 61.08 39.65 46.63 17.01 16 29.19 41.10 62.19 50.11 87.56 41.85 66.84 21.89 32 44.17 45.79 78.60 62.19 147.61 49.21 121.08 31.94 48 66.84 59.99 95.81 77.19 204.11 56.84 200.47 41.85 64 86.00 71.83 121.08 90.78 219.36 68.05 267.41 49.21 96 116.80 101.13 183.21 125.52 272.27 123.28 325.98 62.19 128 147.61 142.39 248.83 164.45 331.91 150.29 442.73 77.19 192 219.36 211.60 376.49 227.40 450.77 231.53 634.66 116.80 256 282.25 272.27 511.33 292.60 569.67 320.17 1376.60 158.63 384 376.49 411.96 802.05 427.07 831.46 539.71 2449.36 253.35 512 484.44 549.52 1109.09 559.50 1129.24 549.52 3982.86 369.77 MySQL 参数对比表格
data aliyun aws azure baidu google huawei oracle tencent have_ssl DISABLED YES YES DISABLED YES DISABLED YES DISABLED innodb_buffer_pool_size 9.75GB 11GB 12GB 12GB 11GB 9GB 17GB 12GB innodb_doublewrite ON OFF OFF ON ON ON ON ON innodb_flush_log_at_trx_commit 1 1 1 1 1 1 1 1 innodb_flush_method O_DIRECT O_DIRECT fsync fsync O_DIRECT O_DIRECT O_DIRECT O_DIRECT innodb_io_capacity 20000 200 200 2000 5000 12000 1250 20000 innodb_read_io_threads 4 4 NA 8 4 4 2 4 innodb_write_io_threads 4 4 NA 8 4 4 4 4 log_bin ON OFF ON ON ON ON ON ON performance_schema OFF OFF ON OFF ON OFF ON OFF rpl_semi_sync_master_enabled ON NA NA ON NA ON NA ON rpl_semi_sync_master_timeout 1000 NA NA 10000 NA 10000 NA 10000 sync_binlog 1 1 1 1000 1 1 1 1 thread_pool_size 8 NA 4 NA NA NA 16 4 version 8.0.36 8.0.39 8.0.39-azure 8.0.32-2.0.0.2 8.0.31-google 8.0.28-231003 8.0.40-u3-cloud 8.0.30-txsql instance_type db.m6i.xlarge GP_Standard_D4ads_v5 db-custom-4-16384 m storage_type cloud_essd io1 NA NA m storage_size 100 100 100 m 100 storage_iops 3000 3000 NA m cpu_capacity 100.9 106.9 72.7 73.4 49.4 163.1 101.1 118.4 云数据库的 MySQL 8.4 版本
目前,主流版本依旧还是8.0。在2024年04月,最新发布了 8.4 版本,该版本将是下一个稳定版(LTS版),所以也有部分云厂商开始这次该版本。目前,发布了 MySQL 8.4的云厂商有Amazon、Google云和Oracle云。这里也对8.4版本的性能做了测试,并对比如下:
各云厂商详细测试数据
关于各个云厂商更多的详细测试数据可以参考如下专题页面:
更多参考
-
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 这三个版本。详细的性能对比如下:
data MySQL80 MySQL84 MySQL90 4 3551 3606 3360 8 5936 5378 5256 16 8054 8186 7287 32 8317 8029 7817 48 8130 8204 7911 64 7838 7981 8060 96 8504 8430 8172 128 8198 8286 8000 192 8043 8053 8112 256 7907 8034 7536 384 8209 8055 8151 512 8386 8030 7872 性能概述
从该“标准”测试来看,9.0.1的性能较为稳定。从上述数据中来看,似乎略微低于 8.0和8.4 版本,但经过调查,主要原因是由于云平台 CPU 资源多少所导致的,而并不是数据库本身的问题。
此外,在今年5月份观察到的8.4性能退化问题(参考),目前也已经解决。
-
本文是一个系列文章的一部分,该系列较为完整的对各个云厂商的RDS MySQL进行了测试,包括了阿里云、腾讯云、华为云、百度云、AWS、Azure、GCP、Oracle Cloud等,最新的测试:云数据库RDS MySQL的性能。
在不同的云厂商,购买相同规格的MySQL实例(如4vCPU-16GB),获得的性能相同吗?
data aliyun_202409_hangzhou->stdbench tencent_202409_beijing_exclusive->stdbench hwcloud_202409_beijing_x86->stdbench baiducloud_202409_beijing->stdbench aws_202409_tokyo_m6i->stdbench azure_202409_east_asia_4c16g->stdbench gcp_202409_tokyo_80_enterprise->stdbench oci_202409_tokyo_8039->mysql_on_4_ecpu 4 7102 5592 2557 2206 1639 2025 723 3551 8 9702 9936 4674 4101 3313 3654 1341 5936 16 14660 16141 8229 7298 6427 6548 2502 8054 32 22155 22336 13520 12022 12157 10363 4857 8317 48 27905 24770 17849 16448 16516 11973 6745 8130 64 32704 26495 20114 18187 18118 12761 8071 7838 96 36846 29077 20883 21007 20782 13300 9675 8504 128 39697 29918 20128 21029 22446 13388 10620 8198 192 38999 30610 20521 22091 22590 13478 11507 8043 256 38356 31052 21187 21665 22323 12985 11872 7907 384 39679 31224 21729 21167 21902 12904 12131 8209 512 40333 31805 22647 21627 21591 12930 12106 8386 cpu_capacity 80.4 93.3 163.6 73.9 110.9 56.3 49.9 114.7 测试结果概述
在本次测试中:阿里云RDS MySQL性能表现最好,极限的QPS达到了4万;其次是腾讯云,达到了3.2万;第二梯队是华为云、百度云和AWS,极限的QPS约2.2万;之后是Azure、Google云,极限QPS约1.2万;最后是Oracle云,极限QPS约8500。详细的数据和趋势图,可以参考以上的图、表,这里不再详述。
(more…)