深入理解RDBMS| 青训营笔记

75 阅读2分钟

这是我参与「第五届青训营」伴学笔记创作活动的第9天。今天看的是RDBMS(关系型数据库)相关知识。
关系型数据库都支持事务。事务(Transaction)是由一组SQL语句组成的一个程序执行单元(Unit),它需要满足ACID特性。ACID是原子性,一致性,隔离性和持久性的缩写。原子性(Atomicity)是指事务是一个不可再分割的工作单元,事务中的操作要么都发生,要么都不发生。一致性(Consistency)是指数据库事务不能破坏关系数据的完整性以及业务逻辑上的一致性。隔离性(lsolation)是指多个事务并发访问时,事务之间是隔离的,一个事务不应该影响其它事务运行效果。持久性(Durability)是指在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。
数据库管理系统(DBMS)是按照某种数据模型来组织、存储和管理数据的仓库。通常按照数据模型的特点将传统数据库系统分成网状数据库、层次数据库和关系数据库三类。网状数据库所基于的网状数据模型建立的数据之间的联系,能反映现实世界中信息的关联,是许多空间对象的自然表达形式。网状数据模型是以记录类型为结点的网络结构,即一个结点可以有一个或多个下级结点,也可以有一个或多个上级结点,两个结点之间甚至可以有多种联系。层次数据模型,即使用树形结构来描述实体及其之间关系的数据模型。每棵树都有且仅有一个根节点,其余的节点都是非根节点。每个节点表示一个记录类型对应与实体的概念,记录类型的各个字段对应实体的各个属性。各个记录类型及其字段必须记录。关系数据模型是使用表格表示实体和实体之间关系的数据模型。关系数据模型中,无论是是实体、还是实体之间的联系都是被映射成统一的关系—一张二维表,在关系模型中,操作的对象和结果都是一张二维表,它由行和列组成;关系型数据库可用于表示实体之间的多对多的关系,只是此时要借助第三个关系—表,来实现多对多的关系。
SQL引擎包括查询解析,查询优化和查询执行三部分。RDBMS中除了SQL引擎,还有事务引擎和存储引擎。