RDBMS
事务:是由一组SQL语句组成的一个程序执行单元,它需要满足ACID的特性
ACID:
A:原子性,事务时一个不可再分的工作单元,事务中的操作要么都发生,要么都不发生
C:一致性,数据库事务不能破坏关系数据的完整性以及业务逻辑上的一致性
I:隔离性,多个事务并发访问时,事务之间时隔离的,一个事务不应该影响其他事务运行结果
D:持久性,在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,不会丢失
DBMS的三种数据模型:
1、网状模型: 网状数据库所基于的网状数据模型建立的数据之间的联系,能反映现实世界中信息的关联,是许多空间对象的自然表达形式.网状数据库所基于的网状数据模型建立的数据之间的联系,能反映现实世界中信息的关联,是许多空间对象的自然表达形式. 1964年,世界上第一个数据库系统——集成数据存储(Integrated Data Storage,lDS )诞生于通用电气公司。IDS是世界上第一个网状数据库,奠定了数据库发展的基础,在当时得到了广泛的应用。在1970s网状数据库系统十分流行,在数据库系统产品中占据主导地位。
优点: 能直接描述现实世界、存取效率较高
缺点: 结构复杂、用户不易使用、访问程序设计复杂
2、层次模型: 1968年,世界上第一个层次数据库——信息管理系统(Information Management System , IMS)诞生于IBM公司,这也是世界上第一个大型商用的数据库系统。层次数据模型,即使用树形结构来描述实体及其之间关系的数据模型。
优点:结构简单、查询效率高、可以提供较好的完整性支持
缺点:无法表示M:N的关系、插入、删除限制多、遍历子节点必须经过父节点·访问程序设计复杂
3、关系模型:1970年,IBM的研究员E.FCodd博士发表了一篇名为"ARelational Model of Data for Large Shared Data Banks'的论文,提出了关系模型的概念,奠定了关系模型的理论基础。1979年Oracle首次将关系型数据库商业化,后续DB2, SAP Sysbase ASE, and Informix等知名数据库产品也纷纷面世。
优点:实体及实体间的的联系都通过二维表结构表示、可以方便的表示M:N关系、数据访问路径对用户透明
缺点:关联查询效率不够高、关系必须规范化
SQL:
SQL语言:语法风格接近自然语言,高度非过程化,面向集合的操作方式,语言简洁,易学易用
SQL过程:客户端对Router发送请求,Router对RDBMS发送SQL请求,RDBMS发送SQL到Parser,Parser发送AST到Optimizer,Optimizer发送Plan到Executor,然后再对数据进行一系列处理,最终返回结果给客户端
Parser(解析器):解析器(Parser)一般分为词法分析(Lexical analysis )、语法分析( Syntax analysis )、语义分析(Semantic analyzer )等步骤。
Optimizer(优化器):可分为基于代价的优化和基于规则的优化
Executor(执行器):有火山模型、向量化、编译执行等情况