mongodb 、nosql、 redis、 memcached 是什么?

mongodb 是一个基于文档的数据库,所有数据是从磁盘上进行读写的。MongoDB善长的是对无模式JSON数据的查询。

而Redis是一个基于内存的键值数据库,它由C语言实现的,与Nginx/ NodeJS工作原理近似,同样以单线程异步的方式工作,先读写内存再异步同步到磁盘,读写速度上比MongoDB有巨大的提升。因此目前很多超高并发的网站/应用都使用Redis做缓存层,普遍认为其性能明显好于MemoryCache。当并发达到一定程度时,即可考虑使用Redis来缓存数据和持久化Session。     memcached:单一键值对内存缓存的,做对象缓存无可替代的分布式缓存; redis:是算法和数据结构的集合,快速的数据结构操作是他最大的特点,支持数据持久化; mongodb是bson结构、介于rdb和nosql之间的,更松散更灵活的,但是不支持事务,只用作非重要数据存储。 nosql not only sql 指泛非关系型数据库     redis 和 memcache 都是好的缓存方案,各有各的优缺点

redis最强的地方是有比较丰富的数据结构,可以在缓存层玩出很多花样,比如:通过列表做消息队列,通过mget,mset可以读多个值进行操作等等,sina,instagram都是比较好的利用了它的这些优点,单点问题没有太好的解决方案,有待提高

memcache的强项是分布式比较成熟,对多核cpu的应用,yutube,大多数电子商务网站都是它的用户,比较成熟,稳定。

mongodb 为代表的nosql应该是传统数据库的有益的补充,目前看来还无法取代他们地位,当今NoSQL领域中有很多有力的竞争者通过多种方式来处理海量数据问题。其中重要的解决方案之一就是MongoDB。MongoDB是面向文档的弱结构化存储方案,使用JSON格式来展现、查询和修改数据。

    原文作者:noSql
    原文地址: https://www.cnblogs.com/geekdc/p/5230317.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞