本文介绍云数据库MongoDB实例的性能测试结果。
测试结果
场景说明
r:w=100:0
:读写比例依次为100%和0。r:w=95:5
:读写比例依次为95%和5%。r:w=50:50
:读写比例依次为50%和50%。r:w=5:95
:读写比例依次为5%和95%。r:w=0:100
:读写比例依次为0和100%。
参数说明
recordcount
:加载至云数据库MongoDB实例的数据总数。operationcount
:执行读写测试的总次数。threads
:客户端的并发线程数。throughput
:吞吐量,即单位时间内成功传送数据的总数。RAL
:读操作平均延迟,单位:微秒(us)。WAL
:写操作平均延迟,单位:微秒(us)。
说明 本文中
RAL
或WAL
取值为0,表示不涉及读操作或写操作。如下为物理机架构实例和云盘架构实例在不同读写比下的测试结果以及性能对比图。
物理机架构实例(MongoDB 4.2)
加载测试数据
CPU:Memory | 实例规格 | recordcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 1核 2 GB(通用型) | 1000000 | 4 | 3589 | 0 | 1110 |
2核 4 GB(通用型) | 2000000 | 8 | 7629 | 0 | 521 | |
4核 8 GB(通用型) | 4000000 | 16 | 24300 | 0 | 654 | |
8核 16 GB(通用型) | 8000000 | 32 | 26745 | 0 | 1191 | |
1:4 | 8核 32 GB(通用型) | 16000000 | 32 | 29090 | 0 | 1095 |
16核 64 GB(通用型) | 32000000 | 128 | 41098 | 0 | 3033 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 6553 | 0 | 1217 |
4核 32 GB(独享型) | 16000000 | 16 | 14526 | 0 | 1097 | |
8核 64 GB(独享型) | 32000000 | 32 | 35437 | 0 | 899 | |
16核 128 GB(独享型) | 64000000 | 160 | 60078 | 0 | 2658 |
r:w=100:0
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 1核 2 GB(通用型) | 1000000 | 4 | 6387 | 623 | 0 |
2核 4 GB(通用型) | 2000000 | 8 | 12893 | 616 | 0 | |
4核 8 GB(通用型) | 4000000 | 16 | 37016 | 427 | 0 | |
8核 16 GB(通用型) | 8000000 | 32 | 48014 | 658 | 0 | |
1:4 | 8核 32 GB(通用型) | 16000000 | 32 | 44251 | 1589 | 0 |
16核 64 GB(通用型) | 32000000 | 128 | 57252 | 2226 | 0 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 12436 | 641 | 0 |
4核 32 GB(独享型) | 16000000 | 16 | 20551 | 773 | 0 | |
8核 64 GB(独享型) | 32000000 | 32 | 50246 | 632 | 0 | |
16核 128 GB(独享型) | 64000000 | 160 | 66876 | 2385 | 0 |
r:w=95:5
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 1核 2 GB(通用型) | 1000000 | 4 | 4556 | 864 | 1079 |
2核 4 GB(通用型) | 2000000 | 8 | 10391 | 757 | 914 | |
4核 8 GB(通用型) | 4000000 | 16 | 34411 | 453 | 561 | |
8核 16 GB(通用型) | 8000000 | 32 | 41095 | 763 | 925 | |
1:4 | 8核 32 GB(通用型) | 16000000 | 32 | 39920 | 785 | 926 |
16核 64 GB(通用型) | 32000000 | 128 | 55148 | 2305 | 2381 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 8869 | 871 | 1394 |
4核 32 GB(独享型) | 16000000 | 16 | 18206 | 856 | 1192 | |
8核 64 GB(独享型) | 32000000 | 32 | 47111 | 664 | 861 | |
16核 128 GB(独享型) | 64000000 | 160 | 68801 | 2312 | 2449 |
r:w=50:50
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 1核 2 GB(通用型) | 1000000 | 4 | 3062 | 1207 | 1399 |
2核 4 GB(通用型) | 2000000 | 8 | 6610 | 1128 | 1318 | |
4核 8 GB(通用型) | 4000000 | 16 | 19743 | 743 | 864 | |
8核 16 GB(通用型) | 8000000 | 32 | 22750 | 987 | 1809 | |
1:4 | 8核 32 GB(通用型) | 16000000 | 32 | 21763 | 1010 | 1907 |
16核 64 GB(通用型) | 32000000 | 128 | 43498 | 2162 | 3696 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 5680 | 1345 | 1930 |
4核 32 GB(独享型) | 16000000 | 16 | 10470 | 1064 | 1971 | |
8核 64 GB(独享型) | 32000000 | 32 | 20427 | 790 | 2329 | |
16核 128 GB(独享型) | 64000000 | 160 | 29445 | 2944 | 7891 |
r:w=5:95
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 1核 2 GB(通用型) | 1000000 | 4 | 2431 | 1511 | 1649 |
2核 4 GB(通用型) | 2000000 | 8 | 5336 | 1406 | 1608 | |
4核 8 GB(通用型) | 4000000 | 16 | 14496 | 858 | 1110 | |
8核 16 GB(通用型) | 8000000 | 32 | 14573 | 958 | 2253 | |
1:4 | 8核 32 GB(通用型) | 16000000 | 32 | 13812 | 995 | 2377 |
16核 64 GB(通用型) | 32000000 | 128 | 20663 | 2831 | 6348 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 4079 | 3201 | 8066 |
4核 32 GB(独享型) | 16000000 | 16 | 7154 | 1080 | 2288 | |
8核 64 GB(独享型) | 32000000 | 32 | 12585 | 783 | 2626 | |
16核 128 GB(独享型) | 64000000 | 160 | 17083 | 4241 | 9615 |
r:w=0:100
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 1核 2 GB(通用型) | 1000000 | 4 | 2429 | 0 | 1642 |
2核 4 GB(通用型) | 2000000 | 8 | 5238 | 0 | 1643 | |
4核 8 GB(通用型) | 4000000 | 16 | 13794 | 0 | 1154 | |
8核 16 GB(通用型) | 8000000 | 32 | 14566 | 0 | 2189 | |
1:4 | 8核 32 GB(通用型) | 16000000 | 32 | 13485 | 0 | 2361 |
16核 64 GB(通用型) | 32000000 | 128 | 19758 | 0 | 6461 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 3939 | 0 | 8097 |
4核 32 GB(独享型) | 16000000 | 16 | 6940 | 0 | 2298 | |
8核 64 GB(独享型) | 32000000 | 32 | 12567 | 0 | 2539 | |
16核 128 GB(独享型) | 64000000 | 160 | 16325 | 0 | 9770 |
云盘架构实例(MongoDB 4.4)
加载测试数据
CPU:Memory | 实例规格 | recordcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 4核 8 GB(独享型) | 4000000 | 16 | 18235 | 0 | 871 |
8核 16 GB(独享型) | 8000000 | 32 | 35643 | 0 | 891 | |
16核 32 GB(独享型) | 16000000 | 64 | 65345 | 0 | 971 | |
1:4 | 2核 8 GB(独享型) | 4000000 | 8 | 6613 | 0 | 1202 |
8核 32 GB(独享型) | 16000000 | 64 | 45952 | 0 | 1385 | |
16核 64 GB(独享型) | 32000000 | 96 | 61973 | 0 | 1539 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 6224 | 0 | 1280 |
4核 32 GB(独享型) | 16000000 | 16 | 18603 | 0 | 857 |
r:w=100:0
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 4核 8 GB(独享型) | 4000000 | 16 | 24945 | 634 | 0 |
8核 16 GB(独享型) | 8000000 | 32 | 33270 | 938 | 0 | |
16核 32 GB(独享型) | 16000000 | 64 | 55703 | 1136 | 0 | |
1:4 | 2核 8 GB(独享型) | 4000000 | 8 | 10989 | 723 | 0 |
8核 32 GB(独享型) | 16000000 | 64 | 36039 | 1740 | 0 | |
16核 64 GB(独享型) | 32000000 | 96 | 59960 | 1585 | 0 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 11298 | 703 | 0 |
4核 32 GB(独享型) | 16000000 | 16 | 24306 | 653 | 0 |
r:w=95:5
CPU:Memory | 实例规格 | operatiocount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 4核 8 GB(独享型) | 4000000 | 16 | 22471 | 797 | 1161 |
8核 16 GB(独享型) | 8000000 | 32 | 29543 | 1064 | 1199 | |
16核 32 GB(独享型) | 16000000 | 64 | 53466 | 1178 | 1300 | |
1:4 | 2核 8 GB(独享型) | 4000000 | 8 | 8986 | 854 | 1480 |
8核 32 GB(独享型) | 16000000 | 64 | 34128 | 1829 | 1970 | |
16核 64 GB(独享型) | 32000000 | 96 | 78363 | 1196 | 1420 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 8806 | 867 | 1619 |
4核 32 GB(独享型) | 16000000 | 16 | 20132 | 770 | 1181 |
r:w=50:50
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 4核 8 GB(独享型) | 4000000 | 16 | 14127 | 1009 | 1238 |
8核 16 GB(独享型) | 8000000 | 32 | 19887 | 1496 | 1670 | |
16核 32 GB(独享型) | 16000000 | 64 | 23120 | 2680 | 2819 | |
1:4 | 2核 8 GB(独享型) | 4000000 | 8 | 5132 | 1370 | 1735 |
8核 32 GB(独享型) | 16000000 | 64 | 18929 | 2930 | 3615 | |
16核 64 GB(独享型) | 32000000 | 96 | 25612 | 3675 | 4363 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 4841 | 1438 | 1855 |
4核 32 GB(独享型) | 16000000 | 16 | 13051 | 1080 | 1356 |
r:w=5:95
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 4核 8 GB(独享型) | 4000000 | 16 | 10266 | 1141 | 1570 |
8核 16 GB(独享型) | 8000000 | 32 | 13556 | 2141 | 2351 | |
16核 32 GB(独享型) | 16000000 | 64 | 14447 | 4295 | 4412 | |
1:4 | 2核 8 GB(独享型) | 4000000 | 8 | 4226 | 1591 | 1902 |
8核 32 GB(独享型) | 16000000 | 64 | 12055 | 5109 | 5210 | |
16核 64 GB(独享型) | 32000000 | 96 | 15216 | 5877 | 8503 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 3874 | 1792 | 2072 |
4核 32 GB(独享型) | 16000000 | 16 | 10083 | 1106 | 1605 |
r:w=0:100
CPU:Memory | 实例规格 | operationcount | threads | throughput | RAL | WAL |
---|---|---|---|---|---|---|
1:2 | 4核 8 GB(独享型) | 4000000 | 16 | 9960 | 0 | 1592 |
8核 16 GB(独享型) | 8000000 | 32 | 13064 | 0 | 2423 | |
16核 32 GB(独享型) | 16000000 | 64 | 13743 | 0 | 4615 | |
1:4 | 2核 8 GB(独享型) | 4000000 | 8 | 4287 | 0 | 1860 |
8核 32 GB(独享型) | 16000000 | 64 | 11611 | 0 | 5441 | |
16核 64 GB(独享型) | 32000000 | 96 | 14391 | 0 | 8746 | |
1:8 | 2核 16 GB(独享型) | 8000000 | 8 | 3854 | 0 | 2067 |
4核 32 GB(独享型) | 16000000 | 16 | 9711 | 0 | 1638 |
性能对比图
CPU:Memory=1:2
- 实例规格为4核 8 GB:
- 实例规格为8核 16 GB:
CPU:Memory=1:4
- 实例规格为8核 32 GB:
- 实例规格为16核 64 GB:
CPU:Memory=1:8
- 实例规格为2核 16 GB:
- 实例规格为4核 32 GB:
测试结果分析
CPU:Memory=1:2
:物理机架构的实例性能优于云盘架构的实例性能。不同的读写比测试环境下,性能差异大约在7%~50%之间,其中4核 8 GB规格最为明显。CPU:Memory=1:4
:物理机架构和云盘架构的实例性能差异缩小到了10%左右。其中,物理机架构实例更适用于写场景,云盘架构实例更适用于读场景。CPU:Memory=1:8
:- 物理机架构和云盘架构的实例性能基本无差异。
- 随着内存的增高,云盘架构的实例性能明显优于物理机架构,其中4核 32 GB规格最为明显。
说明 云盘架构具有如下优势:
- 所有资源都是独享的,不存在物理机架构下资源抢占的情况。
- 计算和存储可以分别进行弹性伸缩,无需数据迁移。
- 具有不同的性能等级,包括ESSD PL1、ESSD PL2和ESSD PL3,按量付费的性价比更高。