zoukankan      html  css  js  c++  java
  • 中间件(3)NoSQL

      NoSQL最常见的解释是non-relational,或者not only SQL,从字段意思上就可以看出,它是指非关系型数据库的统称。

    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)。

  • 相关阅读:
    性格-汉语-词语:坚忍
    汉语-词语:坚强
    品质-汉语-成语:坚持不懈
    was系统错误日志大量出现标识符缺失
    【iOS】UIWebView的HTML5扩展之canvas篇
    OA权限树搭建 代码
    linux下的环境文件设置说明
    怎样把多个Android Project打包成一个APK
    nyoj43 24 Point game(DFS)
    【西祠日志】【07】努力努力,找资料,思考,怎么做asp图片上传
  • 原文地址:https://www.cnblogs.com/mcgrady/p/7239453.html
Copyright © 2011-2022 走看看