Redis 和 MongoDB 哪個更占內存?
01-26
我一直認為Redis既然是內存型資料庫,那麼占內存應該會比較多,但是在一篇博文里看到MongoDB吃內存比較厲害。關於 redis、memcache、mongoDB 的對比 轉自:http://www.cnblogs.com/94cool/p/3247307.html
搜了很多文章,但是並沒有對兩者的內存佔用做分析的,所以想來問問各位有經驗的朋友,512M內存的VPS上,到底用哪個比較好(資料庫是用來支撐論壇的,兩種都可,但是我想選一種占內存最小的)。
你的鏈接我沒看。不能這麼比。
1、你使用什麼產品,取決於你的目的,業務,內存不是選擇的產品的主要因素;
2、資料庫產品有兩類,一種基於內存,一種基於磁碟,Redis是基於內存,MongoDB是基於磁碟,Redis本來就必須是全內存,何來佔用內存過多一說,你應該看你的數據結構,了解Redis的數據結構,看怎麼更高效利用內存你;3、Redis自身是可以限制內存使用的,有參數配置,MongoDB是利用操作系統緩存,也就是他可能會用到操作系統所有內存,這個不是什麼佔用內存,這個是操作系統的機制,你應該假設vps里的所有內存都是給MongoDB使用的。4、自己學習,用什麼產品都可以,但如作為論壇的解決方案,顯然MySQL是更合適的。mongodb和redis都是內存高耗型存儲引擎,當然使用場景有很大不同。簡單而言,redis是K-V存取模式的數據,mongodb是document類型的數據,存取方式為SQL-LIKE模式(但非SQL標準)。redis支持持久存儲,可用內存的大小直接決定redis的性能,儘可能將數據全部放入內存,我們簡單認為redis是一個支持持久存儲的緩存存儲引擎。mongodb現在應該歸類與大數據存儲平台,內存的大小對讀取性能影響極大,特別是在MMAP引擎下,但是它能存儲的數據量可以遠大於內存空間。
建議修改為同等應用場景和數據量下二者對內存消費比較. 否則會有很多人跑來扯"看業務"這個大道理.
才512的內存要這麼重的工具嘛,直接mysql或者redis吧
推薦閱讀:
※終於等到你——MySQL 5.7與PostgreSQL 9.6的百萬QPS大比拼
※如何實現基於 follow 關係的 timeline?
※如何安裝與連接MySQL?
※基於知乎用戶數據的基礎MySQL使用指南
※時間序列資料庫漫談