MongoDB適用場景
MongoDB 的主要目標是在鍵/值存儲方式(提供了高性能和高度伸縮性)和傳統的RDBMS 系統(具有豐富的功能)之間架起
Mongo 適用於以下場景:
● 網站數據:Mongo 非常適合實時的插入,更新與查詢,並具備網站實時數據存儲所需的複製及高度伸縮性。
● 緩存:由於性能很高,Mongo 也適合作爲信息基礎設施的緩存層。在系統重啓之後,由Mongo 搭建的持久化緩存層可以避免下層的數據源過載。
● 大尺寸、低價值的數據:使用傳統的關係型數據庫存儲一些數據時可能會比較昂貴,在此之前,很多時候程序員往往會選擇傳統的文件進行存儲。
● 高伸縮性的場景:Mongo 非常適合由數十或數百臺服務器組成的數據庫,Mongo 的路線圖中已經包含對MapReduce 引擎的內置支持。
● 用於對象及JSON 數據的存儲:Mongo 的BSON 數據格式非常適合文檔化格式的存儲及查詢。
MongoDB 的使用也會有一些限制,例如,它不適合於以下幾個地方。
● 高度事務性的系統:例如,銀行或會計系統。傳統的關係型數據庫目前還是更適用於需要大量原子性複雜事務的應用程序。
● 傳統的商業智能應用:針對特定問題的BI 數據庫會產生高度優化的查詢方式。對於此類應用,數據倉庫可能是更合適的選擇。
● 需要SQL 的問題。
Mongo不適用的場景如下:
- 要求高度事務性的系統。
- 傳統的商業智能應用。
- 複雜的跨文檔(表)級聯查詢。