標籤:
測試是由同事完成的,這裡只做收藏。測試說明:1、資料量為3kw記錄,每條記錄11個欄位,一個為主鍵,主鍵為字元類型,類似:user****,後續為數值其他10欄位為字元類型,100字元,記錄長度大約為1KB2、使用ycsb進行壓力測試。具體各類型參考以前文檔3、三千萬資料,對目前資料庫都能緩衝到DB中(後續測試緩衝80%,50%,30%等情況下效能情況)4、測試項包括:資料裝載,就是insert資料 ycsb的標準負載a、負載b、負載c、負載d、負載e、負載f測試 都採用64線程進行壓測,通過分析是最優的 mysql測試環境為innodb_buffer_pool_size=20G mysql_100g為innodb_buffer_pool_size=100G mongodb為cacheSizeGB=20G mongodb_100g為cacheSizeGB=100G負載a:read=0.5,update=0.5,insert=0,scan=0(無範圍查詢)負載b:read=0.95,update=0.05,insert=0,scan=0(無範圍查詢)負載c:read=100 ---純讀應用,scan=0(無範圍查詢)負載d:read=0.95,insert=0.05,scan=0(無範圍查詢)負載e:scan=0.95,insert=0.05,範圍查詢,範圍為100負載f:read=0.5,readmodifywriteproportion=0.5(讀出記錄,然後修改記錄,然後寫回記錄)各項指標測試結果:
| 資料庫類型 |
| 測試類型 |
mysql |
mongodb |
tokuMX |
couchbase |
| insert |
13196.1154 |
77248.81715 |
36650.51286 |
92041.69321 |
| a |
17414.53382 |
120763.7097 |
56441.69009 |
171759.3308 |
| b |
68047.57887 |
99998.66668 |
98474.30477 |
159533.7361 |
| c |
65496.17721 |
96096.55782 |
96174.49901 |
97495.02775 |
| f |
16601.97431 |
83504.51759 |
58816.14856 |
112853.6551 |
| d |
66899.9244 |
100008.6674 |
97753.62177 |
101810.8761 |
| e |
2345.999594 |
2114.057191 |
2116.884482 |
|
| |
資料庫類型 |
| 測試類型 |
mysql |
mongodb |
tokuMX |
couchbase |
| insert |
9683.304403 |
1658.783526 |
3490.779132 |
1337.107262 |
| d |
2238.196522 |
687.4064251 |
751.8563847 |
1246.501145 |
| e |
19863.49348 |
13568.54149 |
12914.24357 |
|
| 資料庫類型 |
| 測試類型 |
mysql |
mongodb |
tokuMX |
couchbase |
| a |
6840.743134 |
649.0976047 |
1670.448293 |
685.4414804 |
| b |
2260.907568 |
774.5944686 |
721.1753008 |
773.1773418 |
| f |
6583.488954 |
572.8773741 |
1198.842941 |
722.6498385 |
讀-修改-寫延遲
| |
資料庫類型 |
|
|
|
| 測試類型 |
mysql |
mongodb |
tokuMX |
couchbase |
| d |
7133.568479 |
1050.091246 |
1677.069403 |
1442.553442 |
| 資料庫類型 |
| 測試類型 |
mysql |
mongodb |
tokuMX |
| e |
24474.38263 |
31060.48241 |
31075.847 |
| 資料庫類型 |
| |
mysql |
mongodb |
tokuMX |
couchbase |
| 1千萬 |
19 |
4.2 |
8.5 |
11.2 |
結論:
1、所有NoSQL資料庫的插入OPS讀比MySQL強,其中couchbase最強,然後是mongoDB和tokuMX
2、所有NoSQL資料庫的插入延遲讀比MySQL小,其中couchbase最強,然後是mongoDB和tokuMX
3、讀延遲最多的是couchbase,不如MySQL
4、update延遲,NoSQL都比MySQL強
5、範圍掃描,MySQL比所有NoSQL強,由於couchbase測試問題未拿到資料(後續補充)
6、資料容量NoSQL資料庫比MySQL占空間小,依次為MySQL、couchbase、tokuMX、mongoDB
YCSB測試Mysql,MongoDB,TokuMX,Couchbase效能