MongoDB和MySQL比較

zzy020128發表於2014-01-04


MongoDB本身它還算比較年輕的一個產品,所以它的問題,就是成熟度肯定沒有傳統MySQL那麼成熟穩定。所以在使用的時候,

第一,儘量使用穩定版,不要線上上使用開發版,這是一個大原則;

另外一點,備份很重要,MongoDB如果出現一些異常情況,備份一定是要能跟上。除了通過傳統的複製的方式來做備份,離線備份也還是要有,不管你是用什麼方式,都要有一個完整的離線備份。往往最後出現了特殊情況,它能幫助到你;

另外,MongoDB效能的一個關鍵點就是索引,索引是不是能有比較好的使用效率,索引是不是能夠放在記憶體中,這樣能夠提升隨機讀寫的效能。如果你的索引不能完全放在記憶體中,一旦出現隨機讀寫比較高的時候,它就會頻繁地進行磁碟交換,這個時候,MongoDB的效能就會急劇下降,會出現波動。

另外,MongoDB還有一個最大的缺點,就是它佔用的空間很大,因為它屬於典型空間換時間原則的型別。那麼它的磁碟空間比普通資料庫會浪費一些,而且到目前為止它還沒有實現線上壓縮功能,在MongoDB中頻繁的進行資料增刪改時,如果記錄變了,例如資料大小發生了變化,這時候容易產生一些資料碎片,出現碎片引發的結果,一個是索引會出現效能問題,

另外一個就是在一定的時間後,所佔空間會莫明其妙地增大,所以要定期把資料庫做修復,定期重新做索引,這樣會提升MongoDB的穩定性和效率。在最新的版本里,它已經在實現線上壓縮,估計應該在2.0版左右,應該能夠實現線上壓縮,可以在後臺執行現在repair DataBase的一些操作。如果那樣,就解決了目前困擾我們的大問題。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/642366/viewspace-1067038/,如需轉載,請註明出處,否則將追究法律責任。

相關文章