首先是內存映射機制,數據不是持久化到存儲設備中的,而是暫時存儲在內存中,這就提高了在IO上效率以及操作系統對存儲介質之間的性能損耗。(畢竟內存讀取最快)
其次,NoSQL並不是不使用sql,只是不使用關系。沒有關系的存在,就表示每個數據都好比是擁有一個單獨的存儲空間,然后一個聚集索引來指向。搜索性能一定會提高的。
第三,語言。使用javascript語法進行操作更加高效、直接。
這些是MongoDB針對關系型數據庫的效率要高的原因。但是不能僅僅看重效率,這種數據庫的設計帶來的弊端也是有的。例如數據關系的維護會帶來很多冗余數據、客戶端代碼需要大量針對數據庫進行的IO操作、數據挖掘難以實現等等。
所以,應當針對應用系統來選擇合適的數據存儲介質才是優先需要考慮的。