亚洲色蝴蝶中文娱乐网,在线亚洲欧美一区二区中文字幕,无人视频在线观看视频高清视频,99午夜国产精品一区二区,人人妻人人爽人人狠狠

MongoDB和Redis的區(qū)別是什么

時間:2021-03-10 11:05:40 類型:數(shù)據(jù)庫
字號:    

  MongoDB 更類似 MySQL,支持字段索引、游標操作,其優(yōu)勢在于查詢功能比較強大,擅長查詢 JSON 數(shù)據(jù),能存儲海量數(shù)據(jù),但是不支持事務。

  Redis 是一個開源(BSD許可)的,內存中的數(shù)據(jù)結構存儲系統(tǒng),支持多種類型的數(shù)據(jù)結構,可用作數(shù)據(jù)庫,高速緩存和消息隊列代理。

  MongoDB和Redis的區(qū)別是什么

  1、內存管理機制

  Redis 數(shù)據(jù)全部存在內存,定期寫入磁盤,當內存不夠時,可以選擇指定的 LRU 算法刪除數(shù)據(jù)。

  MongoDB 數(shù)據(jù)存在內存,由 linux系統(tǒng) mmap 實現(xiàn),當內存不夠時,只將熱點數(shù)據(jù)放入內存,其他數(shù)據(jù)存在磁盤。

  2、支持的數(shù)據(jù)結構

  Redis 支持的數(shù)據(jù)結構豐富,包括hash、set、list等。

  MongoDB 數(shù)據(jù)結構比較單一,但是支持豐富的數(shù)據(jù)表達,索引,最類似關系型數(shù)據(jù)庫,支持的查詢語言非常豐富。

  3、數(shù)據(jù)量和性能:

  當物理內存夠用的時候,redis>mongodb>mysql

  當物理內存不夠用的時候,redis和mongodb都會使用虛擬內存。

  實際上如果redis要開始虛擬內存,那很明顯要么加內存條,要么你換個數(shù)據(jù)庫了。

  但是,mongodb不一樣,只要,業(yè)務上能保證,冷熱數(shù)據(jù)的讀寫比,使得熱數(shù)據(jù)在物理內存中,mmap的交換較少。

  mongodb還是能夠保證性能。

  4、性能

  mongodb依賴內存,TPS較高;Redis依賴內存,TPS非常高。性能上Redis優(yōu)于MongoDB。

  5、可靠性

  mongodb從1.8版本后,采用binlog方式(MySQL同樣采用該方式)支持持久化,增加可靠性;

  Redis依賴快照進行持久化;AOF增強可靠性;增強可靠性的同時,影響訪問性能。

  可靠性上MongoDB優(yōu)于Redis。

  6、數(shù)據(jù)分析

  mongodb內置數(shù)據(jù)分析功能(mapreduce);而Redis不支持。

  7、事務支持情況

  Redis 事務支持比較弱,只能保證事務中的每個操作連續(xù)執(zhí)行;mongodb不支持事務。

  8、集群

  MongoDB 集群技術比較成熟,Redis從3.0開始支持集群。


<