摘要:Java & MongoDB & MySQL MyISAM比較
我這次使用一到一百萬的測試量,
先做drop,再做insert,再做update,再做select ,然後去看他各個值的差異(連續動作)
然後發現以下數據
MySQL | |||
數量 | Insert | Update | Select |
1 | 2 | 2 | 3 |
10 | 8 | 4 | 3 |
100 | 31 | 30 | 3 |
1000 | 307 | 309 | 3 |
10000 | 7357 | 4066 | 9 |
100000 | 41355 | 49461 | 3 |
1000000 | 242294 | 207446 |
3 |
MongoDB | |||
筆數 | Insert | Update | Select |
1 | 6 | 3 | 13 |
10 | 8 | 5 | 5 |
100 | 23 | 15 | 5 |
1000 | 112 | 85 | 5 |
10000 | 690 | 585 | 17 |
100000 | 4008 | 5618 | 16 |
1000000 | 51323 | 77634 | 17 |
然後發現,Insert、Update, MongoDB相當的強,就差在,為什麼他的select這麼慢,
然後我針對MongoDB做select,然後,select 不同的key值然後發現
MongoDB | |
第幾次 | ms |
1 | 158 |
2 | 1 |
3 | 1 |
4 | 28 |
5 | 1 |
6 | 1 |
7 | 48 |
8 | 2 |
9 | 1 |
10 | 50 |
11 | 4 |
12 |
6 |
應該是他第一次的時候,會需要建立連線,所以有100ms的需求時間,
然後之後就變快很多,
猜想的是,如果剛insert,然後再讀取的狀況,可能會有10毫秒的差異,如果重新取的話,只需要10毫秒以內。
如果Mysql我也用一樣的方式的話大概是
MySQL | |
第幾次 | ms |
1 | 204 |
2 | 2 |