本文介紹云數據庫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
:吞吐量,以每秒操作數(OPS,Operation per second)為單位。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 |
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 |
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 |
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 |
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 |
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 |
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 |
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 |
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 |
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 |
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 |
性能對比圖
實例規格為4核 8 GB:
實例規格為8核 16 GB:
實例規格為8核 32 GB:
實例規格為16核 64 GB:
實例規格為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,按量付費的性價比更高。