NoSQL非关系型数据库概述

NOSQL概念

  NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库Redis就是NOSQL 非关系型数据库的典型代表


关系型数据库和非关系型数据库的区别:

  1. 关系型数据库特点(Mysql Oracle SqlServer为代表的数据库)
  1. 数据是由一张张的表组成,而且这些表与表之间有关系(一对一,一对多,多对多)
  2. 数据是存在硬盘上,每次访问时,都需要将数据从硬盘读取到内存
  1. 非关系型数据库(NOSQL)特点 (Redis )
  1. 数据是一个个的键值对: 键 - 值 key-value的形式(可以理解为相当于一个大的Map)
  2. 数据是存在内存中,在满足需要的时候,也可以将数据存在硬盘上(Redis的持久化)(满足需求 - 内存快不够了,关闭了,就会将一些数据存储到硬盘上)

NoSQL非常重要的原因

  相比于关系型数据库的三高问题:

  1. 高并发(每秒的访问量很高的时候,关系型数据库的性能会遇到瓶颈,这个时候的数据库操作会变得更加的费时)
  2. 高效率(读写速度慢 - 从硬盘中读取数据比较慢)
  3. 高扩展(不能够随意的修改表,给数据增加一个字段时,需要更改大量的表结构)

  NoSQL的出现时为了解决关系型数据库的问,NoSQL数据库(Redis)可以全部解决三高问题 (支持高并发、高效率(从内存直接读取)、高扩展(键值对形式,数据简单,数据之间无关系,所以可以随时增加或删除字段))
NoSQL有着高扩展性、分布式计算、低成本、架构的灵活性、半结构化数据等特点

NoSQL的应用场景

  1. 数据模型比较简单
  2. 需要灵活性更强的IT系统
  3. 对数据库性能要求较高
  4. 不需要高度的数据一致性
  5. 对于给定key,比较容易映射复杂值的环境

    总之就是 :并发小业务量小,关系型非关系型都可以用,业务有复杂的数据关联,就关系型数据库,只是简单的key-value数据,用NoSQL更好。

猜你喜欢

转载自blog.csdn.net/qq_40542534/article/details/108707784
今日推荐