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

请讲解下,redis 和 mongodb 比起来优缺点是什么?
最新回答
梦已隔江南

2024-06-01 18:37:52

一、优点:

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表)压缩存储以降低内存耗用。

扩展资料:

redis使用注意事项:

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

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

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

参考资料来源:

百度百科-Redis

参考资料来源:

百度百科-mongodb

k女神经病

2024-06-01 10:17:24

  MongoDB和Redis都是NoSQL,采用结构型数据存储。二者在使用场景中,存在一定的区别,这也主要由于二者在内存映射的处理过程,持久化的处理方法不同。MongoDB建议集群部署,更多的考虑到集群方案,Redis更偏重于进程顺序写入,虽然支持集群,也仅限于主-从模式。

月亮不是地上霜

2024-06-01 16:16:59

mongodb输就输在skip上,不过可以用其他的方法来弥补