1.mongodb
(1)是文档型的非关系型数据库,使用bson结构。其优势在于查询功能比较强大,能存储海量数据,缺点是比较消耗内存。
(2)一般可以用来存放评论等半结构化数据,支持二级索引。 适合存储json类型数据,不经常变化。
(3)举例:
a.网站数据:非常适合实时的插入、更新、查询;
b.缓存:其搭建的持久化缓存层可以避免下层的数据源过载;
c.用于对象及JSON数据的存储:Mongo 的BSON 数据格式非常适合文档化格式的存储及查询;
d.高伸缩性的场景:Mongo 非常适合由数十或数百台服务器组成的数据库;
e.不适合银行或会计系统;
f.常用场景
2.redis
(1)是内存型数据库,数据保存在内存中,通过tcp直接存取,优势是读写性能高。
(2)redis是内存型KV数据库(键值存储数据库,其数据按照键值对的形势进行组织、索引、存储),不支持二级索引,支持list,set等多种
数据格式。适合存储全局变量,适合读多写少的业务场景。很适合做缓存。
(3)举例:(数据统计)
比如微信token每两小时刷新一次,就比较适合用redis存储,读也比较方便;在线游戏排行榜;计时达到一定时间后显示相关广告;按照用户投票和时间排序,更新新闻;统计
在某段特点时间里有多少特定用户访问了某个特定资源,统计哪些特定用户访问了某篇的文章;
(4)Redis能够替代memcached,让你的缓存从只能存储数据变得能够更新数据。
3.memcached是内存型数据库,可以做集群,可以使用多核。Redis能够替代memcached。