MySql系列一:关系型数据库和非关系型数据库比较

目录

非关系型数据库

关系型数据库


非关系型数据库

概念

NoSQL,也就是 Not Only SQL,不仅仅是 SQL。非关系型数据库主要是基于“非关系模型”的数据库(由于关系型太大,所以一般用“非关系型”来表示其他类型的数据库)。

非关系型数据库不需要写一些复杂的 SQL 语句,其内部存储方式是以 非关系型模型的形式存在。

非关系型模型比如有:

  • 列模型:存储的数据是一列列的。关系型数据库以一行作为一个记录,列模型数据库以一列为一个记录。(这种模型,数据即索引,IO很快,主要是一些分布式数据库)
  • 键值对模型:存储的数据是一个个“键值对”,比如name:liming,那么name这个键里面存的值就是liming
  • 文档类模型:以一个个文档来存储数据,有点类似“键值对”。

常见的非关系型数据库主要有 Hbase(列模型)、Redis(键值对模型)、MongoDB(键值对模型、文档类模型) 等。

非关系型数据库不需要经过 SQL 的重重解析,所以性能很高;非关系型数据库的可扩展性比较强,数据之间没有耦合性,遇见需要新加字段的需求,就直接增加一个 key-value 键值对即可。

非关系型数据库的特点:

效率高(因为存储在内存中)

但不安全(断电丢失数据,但其中redis可以同步数据到磁盘中),现在很多非关系型数据库都开始支持转存到磁盘中。

关系型数据库

概念

关系型数据库是依据关系模型来创建的数据库,以表格的形式存在,以行和列的形式存取数据,关系型数据库这一系列的行和列被称为表,无数张表组成了数据库。

关系型数据可以很好地存储一些关系模型的数据。

常见的关系型数据库有 Oracle、DB2、PostgreSQL、Microsoft SQL Server、Microsoft Access、MySQL等。

关系型数据库能够支持复杂的 SQL 查询,能够体现出数据之间、表之间的关联关系;关系型数据库也支持事务,便于提交或者回滚。

关系型数据库的特点:

安全(因为存储在磁盘中,不会说突然断电数据就没有了)、

容易理解(建立在关系模型上)、

但不节省空间(因为建立在关系模型上,就要遵循某些规则,好比数据中某字段值即使为空仍要分配空间)

参考:

https://blog.csdn.net/qq_36894974/article/details/105594307

https://www.cnblogs.com/ranyonsue/p/10333203.html

你可能感兴趣的:(mysql)