MongoDB和Redis比较及应用场景
2019-03-09 本文已影响11人
皮皮杂谈
一、数据存储
MongoDB的存储格式是文档类型,是一种类似json的格式,可以对某些字段建立索引,可以简单的模仿一下关系型数据库,而且MongoDB确实也有db,table的概念。
Redis的存储格式是Key-Value模式,除了基本的string类型,redis还实现了hash,list,set,zset数据类型。
二、安全验证
Redis有权限验证,不过是全局的。
Mongo的权限验证类似RBAC,给不同的库建立了不同的账号,并分配账号权限。
三、数据有效期
Redis可以给key添加过期时间,这里需要注意的是,这个过期时间是针对顶级key的,意味着你不能给list里面某个单独元素或者hash里面的单独字段设置时间。
MongoDB本身其实可以看作是一个数据仓库了,数据持久化在物理硬盘。
四、数据持久化
Redis本身支持两种持久化,快照和AOF追加方式。
MongoDB本身就是持久化数据库。
五、应用场景
Redis:适用于对读写效率要求都很高,数据处理业务复杂和对安全性要求较高的系统(如新浪微博的计数和微博发布部分系统,对数据安全性、读写要求都很高)。
MongoDB:主要解决海量数据的访问效率问题。