1 2 3 4

非关系型数据库与关系型数据库对比分析

关系型数据库

关系型数据库

优 点

容易理解,它的逻辑类似常见的表格
使用方便,都使用sql语句,sql语句非常的成熟
数据一致性高,冗余低,数据完整性好,便于操作
技术成熟,功能强大,支持很多复杂操作

缺 点

读写性能比较差,尤其是海量数据的高效率读写
固定的表结构,灵活度稍欠;
高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。

非 关 系 型 数 据 库

非关系型数据库

优 点

高并发,读写能力强
弱化数据结构一致性,使用更加灵活
有良好的可扩展性

缺 点

通用性差,没有sql语句那样通用的语句
复杂查询方面稍欠
无事务处理;

区别

存储技术(Storage Technology)

  • 存储方式
    关系型数据库采用表格式, 数据以行和列进行存储,要读取和查询都十分方便。
    非关系型数据库通常以数据集的方式,大量的数据集中存储在一起。
  • 存储结构
    关系型数据库按照结构化的方法存储数据,数据的形式和内容在存入数据之前就已经定义好了,可靠性和稳定性都比较高。一旦存入数据后,如果需要修改数据表的结构就会十分困难。
    NoSQL数据库采用的是动态结构,对于数据类型和结构的改变非常的适应,可以根据数据存储的需要灵活的改变数据库的结构。
  • 存储规范
    关系型数据库数据按照最小关系表的形式进行存储,数据很清晰、一目了然,随着数据表数量的增加,数据管理会越来越复杂。
    NoSQL数据库的数据存储方式是用平面数据集的方式集中存放,基本上单个数据库都是采用单独存放的形式,对于数据的读写提供了极大的方便。

拓展方式

关系型数据库的瓶颈出现在多张数据表的操作,提高处理能力只能选择速度更快性能更高的计算机,拓展空间有限。

NoSQL数据库的存储方式是分布式的,可以添加更多数据库服务器到资源池,然后由这些增加的服务器来负担数据量增加的开销。

查询方式

关系型数据库采用结构化查询语言(即SQL)来对数据库进行查询,已获得了各个数据库厂商的支持,成为数据库行业的标准,能够支持数据库的CRUD(增加,查询,更新,删除)操作,同时也可以采用索引的方法来加快查询操作。

NoSQL数据库使用的是非结构化查询语言(UnQL),它以数据集(像文档)为单位来管理和操作数据,没有一个统一的标准,每个数据库厂商提供产品标准是不一样的。

规范化(Standardization)

关系型数据库中,一个数据实体通常被分割成很多部分,需要对每个分割的部分进行规范化。可以利用ORM层(也就是对象关系映射)来将数据库中对象模型映射到基于SQL的关系型数据库中去以及进行不同类型系统间数据的转换。以采用索引的方法来加快查询操作。

NoSQL数据库则没有这方面的问题,它不需要规范化数据,它通常是在一个单独的存储单元中存入一个复杂的数据实体。

事 务 性

关系型数据库强调ACID规则(原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)),强调数据的强一致性,对于事务的操作有很好的支持。

NoSQL数据库强调BASE原则(基本可用(Basically Available)、软状态(Soft-state)、最终一致性(Eventual Consistency)),对于事务的操作不能很好的支持。

读 写 性 能

关系型数据库遇到高并发读写的时候性能就会下降的非常厉害

NoSQL数据库是按key-value类型进行存储的,以数据集的方式存储的,对于大数据管理、检索、读写、分析以及可视化方面有优势
分享码

posted @ 2021-04-03 10:36  As-before-如初  阅读(331)  评论(0编辑  收藏  举报