Redis和MongoDB优缺点对比分析

今天就跟大家聊聊有关RedisMongoDB优缺点对比分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

  一、Redis优点:


  1、读写性能优异支持数据持久化,


  支持AOF和RDB两种持久化方式支持主从复制,


  主机会自动将数据同步到从机,


  可以进行读写分离。


  数据结构丰富:


  支持string、hash、set、sortedset、list等数据结构。


  二、Redis缺点:


  Redis不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。主机宕机,宕机前有部分数据未能及时同步到从机,切换IP后还会引入数据不一致的问题,降低了系统的可用性。


  Redis的主从复制采用全量复制,复制过程中主机会fork出一个子进程对内存做一份快照,并将子进程的内存快照保存为文件发送给从机,这一过程需要确保主机有足够多的空余内存。


  若快照文件较大,对集群的服务能力会产生较大的影响,而且复制过程是在从机新加入集群或者从机和主机网络断开重连时都会进行,也就是网络波动都会造成主机和从机间的一次全量的数据复制,这对实际的系统运营造成了不小的麻烦。


  Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。为避免这一问题,运维人员在系统上线时必须确保有足够的空间,这对资源造成了很大的浪费。


  三、MongoDB优点:


  a)弱一致性(最终一致),更能保证用户的访问速度


  b)文档结构的存储方式,能够更便捷的获取数


  c)内置GridFS,高效存储二进制大对象(比如照片和视频


  d)支持复制集、主备、互为主备、自动分片等特性


  e)动态查询


  f)全索引支持


  g)扩展到内部对象和内嵌数组


  四、Redis缺点:


  a)不支持事务


  b)MongoDB占用空间过大


  c)维护工具不够成熟

看完上述内容,你们对Redis和MongoDB优缺点对比分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。