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

  • Post author:
  • Post category:其他


关系型数据库:

关系型数据库是指采用

关系模型

来组织数据信息的数据库。

其实就是二维表,它是多个二维数组的集合,我们将数据存储在表格中,通过建立表格与表格之间的关系来维护数据间的关系。

优点:

1.容易理解:相对于其他模型(网状、层次)更容易理解,因为二维数组的逻辑更符合逻辑世界的概念。

2.使用方便:统一通过SQL语言,操作数据库方便。

3.易于维护:都是表结构,格式统一。

缺点:

1.为了维护一致性,读写性能差,主要体现在高并发和海量数据的读写。

2.扩展性差,表结构固定。

常见关系型数据库:Mysql、

Oracle、PostgreSQL、SQL Server、Access、Sybase

非关系型数据库:

非关系型数据库是指采用键值对的模型来存储数据。

严格上来说,非关系型数据库不是一种数据库,它只完成数据的记录,不会记录数据与数据之间的关系。NoSQL(Not only SQL)数据库来指代非关系型数据库。

优点:

1.格式灵活:存储格式可以是key-value、文档等格式。

2.性能优越:非关系型数据库可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘。

3.成本低:基本都是开源,部署成本快。

缺点:

1.不支持sql,学习和运用成本较高。

2.无事务处理机制,无法回滚。

3.数据结构导致复杂查询不易实现。

常见非关系型数据库:


适用于高并发:Redis、MemcacheDB


适用于海里数据访问:MongoDB、CouchDB

总结:

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

1.数据存储方式:非关系型数据库的存储方式是KEY-VALUE的形式、文档等形式,而关系型数据库只支持单一的存储方式。

2.查询效率:关系型数据库存储于磁盘,非关系型数据库存储于缓存,效率比关系型数据库更高。

3.事务:关系型数据库支持事务处理,可进行事务回滚。

4.成本:非关系型数据库基本是开源的,不需要像oracle花费大量的成本购买

仅个人观点,欢迎评论区交流



版权声明:本文为Logical_storm原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。