Welcome to Doris′s Blog

NoSQL简介

1.1 什么是NoSQL?
  NoSQL = Not Only SQL(不仅仅是SQL),也解释为非关系型数据库
  RDBMS(relationship database management ayatem)==>关系型数据库管理系统
   *互联网应用              传统应用
  1.用户量大,访问量大          用户少,访问量少,要求低
  2.高并发
  3.高可用(持续稳定运行->一部分异常后马上可以替换执行)
  4.海量数据
·不同应用的特征-->需要处理的问题-->对应解决办法对应的技术

1.2 为什么使用NoSQL?
  关系型数据库的瓶颈
    1)无法处理大量集中的高并发操作
      RDBMS是IO密集型应用,硬盘IO与CPU之间冲突成为了性能瓶颈
      且其中有为保证数据准确性而有的锁机制限制
    2)表的存储记录数量有限
      横向处理能力有限
      纵向数据可承受能力有限,而且读写性能会随之下降
      解决性能问题==>每张表数据量进行限制=>分表-->又需要进行数据的位置判定(复杂)
    3)无法简单地通过增加硬件、服务节点来提高性能
    4)软硬件成本高
      DBMS大多会收费,对硬件要求较高
  所以-->解决互联网应用(RDBMS)存在的问题-->NoSQL出现

 

1.3 NoSQL的优势
  1)大数据量,高并发
  2)灵活的数据模型
    没有表列字段的限制,且没有关系
  3)高可用
    可方便实现高可用的架构
   4)低成本
    开源免费,无特定硬件要求

1.4NoSQL的劣势
  1)无关系,数据之间是无联系的
    所以-->数据冗余,修改操作多
  2)不支持标准的SQL,没有公认的NoSQL标准
    各厂家开发的库操作不同,学习难度加大
  3)没有数据的约束,大多数也也没有索引
  4)没有事务,需要依靠RDB实现事务
    没有事务-->没有锁,也就性能提高
  5)没有丰富的数据类型,只有文本类型

处理了问题-->将不重要的影响性能的去掉-->成为了劣势,但性能提高了

所以,两者进行搭配使用

posted on 2020-02-07 16:58  Doris董  阅读(170)  评论(0)    收藏  举报

导航