DBMS内核简介 夏英 (xiayingacqupt. edu. cn) 重庆邮电大学计算机学院
1 DBMS 内核简介 夏英 (xiaying@cqupt.edu.cn) 重庆邮电大学计算机学院
主要内容 DBMS的基本功能 DBMS的系统结构 DBMs与操作系统 DBMS的实现技术及实例
主要内容 DBMS的基本功能 DBMS的系统结构 DBMS与操作系统 DBMS的实现技术及实例
DBMS DBMS包含一个企业的以下特定信息 一组相关联的数据 一套能够访问数据的软件 个可以方便、高效使用的环境
DBMS DBMS 包含一个企业的以下特定信息 一组相关联的数据 一套能够访问数据的软件 一个可以方便、高效使用的环境
1.DBMS的基本功能 数据库定义 定义外模式、模式、内模式、数据库完整性、安全保密、存取路径等 数据存取 ■提供数据的操纵语言以便对数据进行查找和增删改 数据库运行管理 ■事务管理、自动恢复、并发控制、死锁检测或防止、安全性检查、存 取控制、完整性检查、日志记录等 数据组织、存储和管理 ■数据字典、用户数据、存取路径的组织存储和管理,以便提高存储空 间利用率,并方便存取 数据库的建立和维护 数据转换、数据库初建、转储、恢复、重组、重构以及性能检测等 网络通信、数据转换等
1. DBMS的基本功能 数据库定义 定义外模式、模式、内模式、数据库完整性、安全保密、存取路径等 数据存取 提供数据的操纵语言以便对数据进行查找和增删改 数据库运行管理 事务管理、自动恢复、并发控制、死锁检测或防止、安全性检查、存 取控制、完整性检查、日志记录等 数据组织、存储和管理 数据字典、用户数据、存取路径的组织存储和管理,以便提高存储空 间利用率,并方便存取 数据库的建立和维护 数据转换、数据库初建、转储、恢复、重组、重构以及性能检测等 网络通信、数据转换等
2.DBMS的系统结构 nave user application sophisticated (tellers, agents, web users) programmers (analysts) administrators write administration interface rograms tools compiler and DML queries DDL interpreter Pplication object code and organizer query evaluation ngin query processor buffer manager file manager authorization transaction and integrity manage anager storage disk storage indices data dictionary statistical data
2. DBMS的系统结构
存储管理 数据库需要长期存储(如磁盘) 需要存储的内容包括业务数据、元数据、索引、日志 存储管理器( Storage manager n是DBMS的一个子系统,提供应用程序(用户查询) 与底层数据存储之间的接口 存储管理器的两个任务 与文件管理器交互 高效的数据存储、检索和更新 关键技术: ■存储访问(缓冲区等)、文件组织、索引与哈希
存储管理 数据库需要长期存储(如磁盘) 需要存储的内容包括业务数据、元数据、索引、日志 存储管理器(Storage Manager) 是DBMS的一个子系统,提供应用程序(用户查询) 与底层数据存储之间的接口 存储管理器的两个任务: 与文件管理器交互 高效的数据存储、检索和更新 关键技术: 存储访问(缓冲区等)、文件组织、索引与哈希
查询处理 一个查询可能有不同的实现方式,其代价差别可能很大 查询处理器( Query processor)对查询语句进行解析和翻 译,选择查询计划并优化,以便高效执行查询计划 基础:对查询执行的描述方法一关系代数 了解:关系连接等关键操作的高效算法 ■分析:查询编译器和优化器的结构和工作原理 首先进行查询分析和语义检查 然后将SQL查询转换为关系代数,选择逻辑查询计划。 逻辑查询计划是一个代数表达式,表示要在数据上执 行的若干个具体运算以及有关运算顺序。 最后,选择物理查询计划,在物理查询计划中指明运 算的具体顺序和用于实现每一个运算的算法
查询处理 一个查询可能有不同的实现方式,其代价差别可能很大 查询处理器(Query Processor)对查询语句进行解析和翻 译,选择查询计划并优化,以便高效执行查询计划。 基础:对查询执行的描述方法--关系代数 了解:关系连接等关键操作的高效算法 分析:查询编译器和优化器的结构和工作原理 首先进行查询分析和语义检查 然后将SQL查询转换为关系代数,选择逻辑查询计划。 逻辑查询计划是一个代数表达式,表示要在数据上执 行的若干个具体运算以及有关运算顺序。 最后,选择物理查询计划,在物理查询计划中指明运 算的具体顺序和用于实现每一个运算的算法
1解析与翻译( Parsing and translation) 2.优化( Optimization) 3.评估( Evaluation) parser and relational-algebra query translator expression optimizer 4 execution plan output evaluation engine data about data 查询处理过程
查询处理过程 1. 解析与翻译(Parsing and translation) 2. 优化(Optimization) 3. 评估(Evaluation)
事务处理 事务是完成一个业务逻辑所涉及的一组数据库操作,具有 ACID特性 基于事务的DBMS需要考虑故障、并发的情形。 事务管理器( Transaction manager)负责对数据库的改变 记录日志,以支持系统崩溃后的恢复。 数据库恢复,保证事务的持久性 在数据备份的基础上,对于数据库所有更新都登记日志 ■并发控制器保障事务的并发执行,以支持多用户访问。 ■并发控制,保证事务的原子性和隔离性 把亭务看作对数据库元素进行读或写的操作序列,对冲 突操作进行延迟处理
事务处理 事务是完成一个业务逻辑所涉及的一组数据库操作,具有 ACID特性 基于事务的DBMS需要考虑故障、并发的情形。 事务管理器(Transaction Manager)负责对数据库的改变 记录日志,以支持系统崩溃后的恢复。 数据库恢复,保证事务的持久性 在数据备份的基础上,对于数据库所有更新都登记日志 并发控制器保障事务的并发执行,以支持多用户访问。 并发控制,保证事务的原子性和隔离性 把事务看作对数据库元素进行读或写的操作序列,对冲 突操作进行延迟处理
3.DBMs与操作系统 ■DBMS建立在操作系统之上,跨度大,功能多 底层的外存管理、缓冲区管理、数据存取操作、语言翻 译处理等 外层的用户接口、数据表示、开发环境等 还涉及编译、网络通信等技术 ■操作系统负责进程管理、作业管理、存储管理、 设备管理和文件管理 DBMS对数据的组织管理和存取访问需要操作系 统的支持
3. DBMS与操作系统 DBMS建立在操作系统之上,跨度大,功能多 底层的外存管理、缓冲区管理、数据存取操作、语言翻 译处理等 外层的用户接口、数据表示、开发环境等 还涉及编译、网络通信等技术 操作系统负责进程管理、作业管理、存储管理、 设备管理和文件管理 DBMS对数据的组织管理和存取访问需要操作系 统的支持