关系型数据库和非关系型数据库的区别详解数据库
数据库 详解 区别 关系
2023-06-13 09:20:09 时间
1.关系型数据库通过外键关联来建立表与表之间的关系,
2.非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定
比如 有一个学生的数据:
姓名:张三,性别:男,学号:12345,班级:二年级一班
还有一个班级的数据:
班级:二年级一班,班主任:李四
关系型数据库中,我们创建学生表和班级表来存这两条数据,并且学生表中的班级存储的是班级表中的主键。
非关系型数据库中,我们创建两个对象,一个是学生对象,一个是班级对象,用java来表示就是:
非关系型数据库中,我们查询一条数据,结果出来一个数组,关系型数据库中,查询一条数据结果是一个对象。
关系型数据库
SQLite、Oracle、mysql 1、关系型数据库,是指采用了关系模型来组织
数据的数据库;
2、关系型数据库的最大特点就是事务的一致性;
3、简单来说,关系模型指的就是二维表格模型,
而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 1、容易理解:二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状、层次等其他模型来说更容易理解;
2、使用方便:通用的SQL语言使得操作关系型数据库非常方便;
3、易于维护:丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大减低了数据冗余和数据不一致的概率;
4、支持SQL,可用于复杂的查询。 1、为了维护一致性所付出的巨大代价就是其读写性能比较差;
2、固定的表结构;
3、高并发读写需求;
4、海量数据的高效率读写;
非关系型数据库
MongoDb、redis、HBase 1、使用键值对存储数据;
2、分布式;
3、一般不支持ACID特性;
4、非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。 1、无需经过sql层的解析,读写性能很高;
2、基于键值对,数据没有耦合性,容易扩展;
3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。 1、不提供sql支持,学习和使用成本较高;
2、无事务处理,附加功能bi和报表等支持也不好;
注1:数据库事务必须具备ACID特性,ACID是Atomic原子性,Consistency一致性,Isolation隔离性,Durability持久性。
注2:数据的持久存储,尤其是海量数据的持久存储,还是需要一种关系数据库
1.关系型数据库通过外键关联来建立表与表之间的关系,
2.非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定
比如 有一个学生的数据:
姓名:张三,性别:男,学号:12345,班级:二年级一班
还有一个班级的数据:
班级:二年级一班,班主任:李四
关系型数据库中,我们创建学生表和班级表来存这两条数据,并且学生表中的班级存储的是班级表中的主键。
非关系型数据库中,我们创建两个对象,一个是学生对象,一个是班级对象,用java来表示就是:
非关系型数据库中,我们查询一条数据,结果出来一个数组,关系型数据库中,查询一条数据结果是一个对象。
关系型数据库
SQLite、Oracle、mysql 1、关系型数据库,是指采用了关系模型来组织
数据的数据库;
2、关系型数据库的最大特点就是事务的一致性;
3、简单来说,关系模型指的就是二维表格模型,
而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 1、容易理解:二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状、层次等其他模型来说更容易理解;
2、使用方便:通用的SQL语言使得操作关系型数据库非常方便;
3、易于维护:丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大减低了数据冗余和数据不一致的概率;
4、支持SQL,可用于复杂的查询。 1、为了维护一致性所付出的巨大代价就是其读写性能比较差;
2、固定的表结构;
3、高并发读写需求;
4、海量数据的高效率读写;
非关系型数据库
MongoDb、redis、HBase 1、使用键值对存储数据;
2、分布式;
3、一般不支持ACID特性;
4、非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。 1、无需经过sql层的解析,读写性能很高;
2、基于键值对,数据没有耦合性,容易扩展;
3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。 1、不提供sql支持,学习和使用成本较高;
2、无事务处理,附加功能bi和报表等支持也不好;
注1:数据库事务必须具备ACID特性,ACID是Atomic原子性,Consistency一致性,Isolation隔离性,Durability持久性。
注2:数据的持久存储,尤其是海量数据的持久存储,还是需要一种关系数据库
相关文章
- mysql utf8_general_ci 与 utf8_unicode_ci的区别详解数据库
- MongoDB主从复制+集群详解数据库
- Mysql数据库int(1)和tinyint(1)的区别&&扩展阅读详解数据库
- 预防SQL注入详解数据库
- mysql_fetch_row() 和mysql_fetch_array的区别详解数据库
- oracle 子查询详解数据库
- PreparedStatement与Statement区别详解数据库
- MongoDB 数据类型详解数据库
- MySQL索引原理详解数据库
- java protected 与默认权限的区别详解数据库
- mybatis常用jdbcType数据类型详解数据库
- mysql中的where和having子句的区别详解数据库
- 深层面解释mysql和oracle的区别详解数据库
- Oracle数据库使用总结详解数据库
- MySQL学习(五) UNION与UNION ALL详解数据库
- Linux下,postgreSQL的查看与重启详解数据库
- Redis介绍以及安装(Linux)详解数据库
- Oracle 获取表的主键、外键以及唯一约束条件详解数据库
- Sybase:delete与truncate、drop区别详解数据库
- mysql 日期格式化详解数据库
- oracle VARCHAR2和NVARCHAR2的区别详解数据库
- char、varchar、text和nchar、nvarchar、ntext的区别详解数据库
- 优势MySQL: 强大的数据库管理系统之优势.(mysql的使用)
- Oracle数据库中的会话和连接,有什么区别?详解!(oracle会话与连接)