<thead id="rrjt3"></thead>
      <progress id="rrjt3"><dfn id="rrjt3"></dfn></progress>

      <em id="rrjt3"></em>

        <address id="rrjt3"><ins id="rrjt3"><dfn id="rrjt3"></dfn></ins></address>
          <i id="rrjt3"></i>

        MongoDB和Redis的區別是什么

        時間:2021-03-10 11:05:40 類型:數據庫
        字號:    

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

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

          MongoDB和Redis的區別是什么

          1、內存管理機制

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

          MongoDB 數據存在內存,由 linux系統 mmap 實現,當內存不夠時,只將熱點數據放入內存,其他數據存在磁盤。

          2、支持的數據結構

          Redis 支持的數據結構豐富,包括hash、set、list等。

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

          3、數據量和性能:

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

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

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

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

          mongodb還是能夠保證性能。

          4、性能

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

          5、可靠性

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

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

          可靠性上MongoDB優于Redis。

          6、數據分析

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

          7、事務支持情況

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

          8、集群

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


        黄网站免费 <