国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

mongodb,redis,mysql 簡要對比

2019-11-08 20:36:18
字體:
來源:轉載
供稿:網友

mongodb,redis,MySQL 簡要對比

本篇內容大部分不是原創,

redis:

它就是一個不折不扣的內存數據庫了。

持久化方式:

redis所有數據都是放在內存中的,持久化是使用RDB方式或者aof方式。

解密redis持久化:http://blog.nosqlfan.com/html/3813.html

mysql:

無論數據還是索引都存放在硬盤中。到要使用的時候才交換到內存中。能夠處理遠超過內存總量的數據。

數據量和性能:當物理內存夠用的時候,redis>mongodb>mysql當物理內存不夠用的時候,redis和mongodb都會使用虛擬內存。實際上如果redis要開始虛擬內存,那很明顯要么加內存條,要么你換個數據庫了。但是,mongodb不一樣,只要,業務上能保證,冷熱數據的讀寫比,使得熱數據在物理內存中,mmap的交換較少。mongodb還是能夠保證性能。有人使用mongodb存儲了上T的數據。mysql,mysql根本就不需要擔心數據量跟內存下的關系。不過,內存的量跟熱數據的關系會極大地影響性能表現。當物理內存和虛擬內存都不夠用的時候,估計除了mysql你沒什么好選擇了。其實,從數據存儲原理來看,我更傾向于將mongodb歸類為硬盤數據庫,但是使用了mmap作為加速的手段而已。簡說mmap:mmap系統調用并不是完全為了用于共享內存而設計的。它本身提供了不同于一般對普通文件的訪問方式,進程可以像讀寫內存一樣對普通文件進行操作。mmap 系統調用使得進程之間通過映射同一個普通文件實現共享內存。普通文件被映射到進程地址空間后,進程可以像訪問普通內存一樣對文件進行訪問,不必再調用。 read(),write()等操作。mmap并不分配空間, 只是將文件映射到調用進程的地址空間里, 然后你就可以用memcpy等操作寫文件, 而不用write()了.寫完后用msync()同步一下, 你所寫的內容就保存到文件里了. 不過這種方式沒辦法增加文件的長度, 因為要映射的長度在調用mmap()的時候就決定了。下面是redis和mongodb的對比圖:
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 梁平县| 军事| 留坝县| 彰化市| 西城区| 云浮市| 深州市| 洛隆县| 大宁县| 库尔勒市| 肃宁县| 林芝县| 河源市| 六盘水市| 仪陇县| 无锡市| 奎屯市| 普宁市| 堆龙德庆县| 平定县| 大同市| 青冈县| 佛山市| 福泉市| 沅江市| 柞水县| 玛多县| 正宁县| 龙井市| 珠海市| 西华县| 龙南县| 永嘉县| 石泉县| 英吉沙县| 潍坊市| 屏东县| 镇雄县| 循化| 清镇市| 永仁县|