导航:首页 > 数据分析 > 什么数据库比mongo好

什么数据库比mongo好

发布时间:2024-07-16 15:54:20

1. mongodb redis memcache 哪个最好

从以下几个维度,对redis、memcache、mongoDB 做了对比,
1、性能
都比较高,性能对我们来说应该都不是瓶颈
总体来讲,TPS方面redis和memcache差不多,要大于mongodb
2、操作的便利性
memcache数据结构单一
redis丰富一些,数据操作方面,redis更好一些,较少的网络IO次数
mongodb支持丰富的数据表达,索引,最类似关系型数据库,支持的查询语言非常丰富
3、内存空间的大小和数据量的大小
redis在2.0版本后增加了自己的VM特性,突破物理内存的限制;可以对key value设置过期时间(类似memcache)
memcache可以修改最大可用内存,采用LRU算法
mongoDB适合大数据量的存储,依赖操作系统VM做内存管理,吃内存也比较厉害,服务不要和别的服务在一起
4、可用性(单点问题)
对于单点问题,
redis,依赖客户端来实现分布式读写;主从复制时,每次从节点重新连接主节点都要依赖整个快照,无增量复制,因性能和效率问题,
所以单点问题比较复杂;不支持自动sharding,需要依赖程序设定一致hash 机制。
一种替代方案是,不用redis本身的复制机制,采用自己做主动复制(多份存储),或者改成增量复制的方式(需要自己实现),一致性问题和性能的权衡
Memcache本身没有数据冗余机制,也没必要;对于故障预防,采用依赖成熟的hash或者环状的算法,解决单点故障引起的抖动问题。
mongoDB支持master-slave,replicaset(内部采用paxos选举算法,自动故障恢复),auto sharding机制,对客户端屏蔽了故障转移和切分机制。
5、可靠性(持久化)
对于数据持久化和数据恢复,
redis支持(快照、AOF):依赖快照进行持久化,aof增强了可靠性的同时,对性能有所影响
memcache不支持,通常用在做缓存,提升性能;
MongoDB从1.8版本开始采用binlog方式支持持久化的可靠性
6、数据一致性(事务支持)
Memcache 在并发场景下,用cas保证一致性
redis事务支持比较弱,只能保证事务中的每个操作连续执行
mongoDB不支持事务
7、数据分析
mongoDB内置了数据分析的功能(maprece),其他不支持
8、应用场景
redis:数据量较小的更性能操作和运算上
memcache:用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能(适合读多写少,对于数据量比较大,可以采用sharding)
MongoDB:主要解决海量数据的访问效率问题

2. redis 和 mongodb 比起来优缺点是什么

一、优点:

1、支持多种数据结构,如 string(字符串)、 list(双向链表)、dict(hash表)、set(集合)、zset(排序set)、hyperloglog(基数估算)

2、支持持久化操作,可以进行aof及rdb数据持久化到磁盘,从而进行数据备份或数据恢复等操作,较好的防止数据丢失的手段。

3、支持通过Replication进行数据复制,通过master-slave机制,可以实时进行数据的同步复制,支持多级复制和增量复制,master-slave机制是Redis进行HA的重要手段。

二、缺点:

1、Redis只能使用单线程,性能受限于CPU性能,故单实例CPU最高才可能达到5-6wQPS每秒(取决于数据结构,数据大小以及服务器硬件性能,日常环境中QPS高峰大约在1-2w左右)。

2、支持简单的事务需求,但业界使用场景很少,并不成熟,既是优点也是缺点。

3、Redis在string类型上会消耗较多内存,可以使用dict(hash表)压缩存储以降低内存耗用。

(2)什么数据库比mongo好扩展阅读:

redis使用注意事项:

1、注意垃圾回收:Redis是一个提供持久化功能的内存数据库,如果不指定上面值的过期时间,并且也不进行定期的清理工作,那么Redis内存占用会越来越大,当有一天超过了系统可用内存,那么swap上场,离性能陡降的时间就不远了。

2、使用key值前缀来作命名空间:虽然说Redis支持多个数据库(默认32个,可以配置更多),但是除了默认的0号库以外,其它的都需要通过一个额外请求才能使用。所以用前缀作为命名空间可能会更明智一点。

3、Redis并不支持Sharding,但是当数据量超过单机内存时,不得不考虑Sharding的事(注意Slave不是用来做Sharding操作的,只是数据的一个备份和读写分离而已)。

阅读全文

与什么数据库比mongo好相关的资料

热点内容
自如app如何看户型图 浏览:511
一般程序编程对机子配置要求如何 浏览:43
拉伸实验数据出现水平是什么原因 浏览:615
完美世界怎么很多app不能看了 浏览:688
隐藏网络为什么别人可以连我不行 浏览:355
超级终端发送文件超时 浏览:24
文件多少m有什么意思 浏览:63
microsoftword2010 浏览:773
国务院通信大数据行程卡在哪里 浏览:581
打印机和电脑数据线连好怎么操作 浏览:877
iphone打开html文件 浏览:63
java操作excel之poi 浏览:700
java集合同步 浏览:861
软工大数据软考考什么 浏览:190
受控体系文件的封面有什么内容 浏览:778
梦幻锦衣是哪个文件夹 浏览:811
raid模式不能黑苹果 浏览:859
如何优化网站推广方案 浏览:40
编程怎么入门去极客时间 浏览:504
查看oracle数据库字符集编码 浏览:658

友情链接