中间件(3)NoSQL
2017-07-26 15:13
218 查看
NoSQL最常见的解释是non-relational,或者not only SQL,从字段意思上就可以看出,它是指非关系型数据库的统称。
1,对数据库高并发读写
随着分布式架构和微服务的流行,数据库的负载非常高,如果是1w+/s的查询需求还勉强顶得住,但是对于1w+/s的写操作,关系型数据库的性能就非常低。
2,海量数据的存储和查询
当每天产生上亿条的数据,对于关系型数据库来说,在一张上亿条记录的数据表里查询,性能是非常低的。
3,高扩展性和高可用性
对于关系型数据库来说,升级和扩展非常困难。
NoSQL的出现,正是解决上面这几个问题的。
key/value数据库代表:Memcached和Redis。
文档型数据库代表:MongoDb。
1,处理海量数据。
2,易扩展,由于它的非关系性。
3,高可用,比如redis可以组成集群,提供7*24小时服务。
那么,NoSQL是不是就没有缺点了呢?不是的,比如它没有关系型数据的事务。
2,对于大数据的处理,可以研究更好的框架ES(ElasticSearch)。
NoSQL诞生的背景
随着大型网站分布式架构的发展,使用传统关系型数据库在以下几个方面显得力不从心:1,对数据库高并发读写
随着分布式架构和微服务的流行,数据库的负载非常高,如果是1w+/s的查询需求还勉强顶得住,但是对于1w+/s的写操作,关系型数据库的性能就非常低。
2,海量数据的存储和查询
当每天产生上亿条的数据,对于关系型数据库来说,在一张上亿条记录的数据表里查询,性能是非常低的。
3,高扩展性和高可用性
对于关系型数据库来说,升级和扩展非常困难。
NoSQL的出现,正是解决上面这几个问题的。
NoSQL的分类
NoSQL共有四类:key/value数据库,文档型数据库,列存储数据库和图数据库。在项目中最常用的还是以Memcached和redis为代表的key/value数据库,和MongoDb为代表的文档型数据库。key/value数据库代表:Memcached和Redis。
文档型数据库代表:MongoDb。
NoSQL的优势
既然NoSQL是弥补关系型数据库的不足的,所以它的的优势就非常明显:1,处理海量数据。
2,易扩展,由于它的非关系性。
3,高可用,比如redis可以组成集群,提供7*24小时服务。
那么,NoSQL是不是就没有缺点了呢?不是的,比如它没有关系型数据的事务。
总结
1,NoSQL并不能代替关系型数据库,只能说用来弥补关系型数据库的不足,核心的业务还是得使用关系型数据库,由于它的ACID特性。2,对于大数据的处理,可以研究更好的框架ES(ElasticSearch)。
相关文章推荐
- Nosql相关产品和分布式相关中间件
- Hbase(nosql)体系结构有基本操作 笔记八
- 用 XML-RPC 开发 Web 服务:XML-RPC 中间件
- NoSQL - Redis应用场景
- [转贴]透视"XML中间件"
- Re:李捷_NoSQL数据库之Redis数据库管理五(Redis的常用命令及高级应用)
- 电子政务风生水起,金蝶中间件保驾护航
- mysql分布式中间件cobar
- JBoss 5迎来中间件彻底的可配置时代(转载)
- redis学习进程--nosql和sql区别
- 中间件技术概述
- Mysql代理中间件 Atlas 安装和配置
- 使用ORM中间件提升软件开发效率及质量
- 深入理解express的中间件
- Oracle 加强融合中间件的功能
- ASP.NET 5基础之中间件
- (转)剖析Borland中间件技术
- ICE中间件说明文档
- J2EE中间件集成企业应用
- 关于noSQL和WEB数据库发展的一篇文章,写的比较清楚