mongodb與mysql區別


 

MySQL 是關系型數據庫。
優勢:
在不同的引擎上有不同 的存儲方式。
查詢語句是使用傳統的 sql 語句,擁有較為成熟的體系,成熟度很高。
開源數據庫的份額在不斷增加,mysql 的份額頁在持續增長。
缺點:
在海量數據處理的時候效率會顯著變慢。
Mongodb 是非關系型數據庫(nosql ),屬於文檔型數據庫。文檔是 mongoDB 中數據的基本
單元,類似關系數據庫的行,多個鍵值對有序地放置在一起便是文檔,語法有點類似
javascript 面向對象的查詢語言,它是一個面向集合的,模式自由的文檔型數據庫。
存儲方式:虛擬內存+持久化。
查詢語句:是獨特的 Mongodb 的查詢方式。
適合場景:事件的記錄,內容管理或者博客平台等等。
架構特點:可以通過副本集,以及分片來實現高可用。
數據處理:數據是存儲在硬盤上的,只不過需要經常讀取的數據會被加載到內存中,將
數據存儲在物理內存中,從而達到高速讀寫。
成熟度與廣泛度:新興數據庫,成熟度較低,Nosql 數據庫中最為接近關系型數據庫,
比較完善的 DB 之一,適用人群不斷在增長。
優點:
快速!在適量級的內存的 Mongodb 的性能是非常迅速的,它將熱數據存儲在物理內存中,
使得熱數據的讀寫變得十分快。高擴展性,存儲的數據格式是 json 格式!
缺點:
不支持事務,而且開發文檔不是很完全,完善。

Mysql 和 Mongodb 主要應用場景(簡單了解敘述下即可)
1.如果需要將 mongodb 作為后端 db 來代替 mysql 使用,即這里 mysql 與 mongodb 屬於
平行級別,那么,這樣的使用可能有以下幾種情況的考量: (1)mongodb 所負責部分以
文檔形式存儲,能夠有較好的代碼親和性,json 格式的直接寫入方便。(如日志之類) (2)
從 data models 設計階段就將原子性考慮於其中,無需事務之類的輔助。開發用如 nodejs
之類的語言來進行開發,對開發比較方便。 (3)mongodb 本身的 failover 機制,無需使
用如 MHA 之類的方式實現。
2.將 mongodb 作為類似 redis ,memcache 來做緩存 db,為 mysql 提供服務,或是后端
日志收集分析。 考慮到 mongodb 屬於 nosql 型數據庫,sql 語句與數據結構不如 mysql
那么親和 ,也會有很多時候將 mongodb 做為輔助 mysql 而使用的類 redis memcache 之
類的緩存 db 來使用。 亦或是僅作日志收集分析


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM