mongodb和Redis數據庫的區別有:1、Redis比mongodb快;2、mongodb能夠的數據量比Redis多;3、Redis具有鍵值存儲,而mongodb具有文檔類型存儲;4、Redis編碼比較復雜,而mongodb操作相對更加容易;5、可靠性上mongodb優于Redis。
具體內容如下:
1、內存管理
Redis 數據全部存在內存,定期寫入磁盤,當內存不夠時,可以選擇指定的 LRU 算法刪除數據。
MongoDB數據會優先存于內存,當內存不夠時,只將熱點數據放入內存,其他數據存在磁盤。
需要注意的是Redis 和mongoDB特別消耗內存,一般不建議將它們和別的服務部署在同一臺服務器上。
2、數據結構
Redis 支持的數據結構豐富,包括hash、set、list等。
MongoDB 數據結構比較單一,但是支持豐富的數據表達,索引,最類似關系型數據庫,支持的查詢語言非常豐富。
3、數據量和性能
當物理內存夠用的時候,性能,redis>mongodb>mysql
數據量,mysql>mongodb>redis
注意mongodb可以存儲文件,適合存放大量的小文件,內置了GirdFS 的分布式文件系統。
4、可靠性
mongodb從1.8版本后,采用binlog方式(MySQL同樣采用該方式)支持持久化,增加可靠性;
Redis依賴快照進行持久化;AOF增強可靠性;增強可靠性的同時,影響訪問性能。
可靠性上MongoDB優于Redis。