2022年数据库系统实现技术 .pdf
《2022年数据库系统实现技术 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库系统实现技术 .pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库系统实现技术1.1 数据库管理系统概述数据库管理系统(Data Base Mangement System DBMS)是在操作系统支持下的一个复杂的和功能强大的系统软件,它对数据库进行统一管理和控制。1.11 数据库管理系统的基本功能数据定义功能:允许用户使用专门的数据定义语言来对数据库的结构进行描述,包括外模式,模式,内模式的定义,数据库完整性的定义,安全保密的定义,索引的定义,视图的定义等。这些定义存储在数据字典中,是DBMS 运行的基本依据。数据操作功能:支持用户使用表达能力强且易学易用的数据操作语言或查询语言来表达对数据库中数据所要进行的检索,插入,更新,删除操作,高效的执行用户
2、所表达的对数据库中数据的操作请求。数据存储和管理功能:支持对大量的,各种类型的数据进行组织,存储和管理工作,包括用户数据,索引,数据字典等的存储管理。事务管理功能:提供对事物概念的支持和事务管理能力。支持对数据的并发存取,即多个不同事务同时对数据进行存取,避免同时的访问可能造成的不良后果,并保证数据库具有从多种类型的故障中恢复的能力。其他功能:包括与网络中其他软件系统的通信功能,一个DBMS 与另一个DBMS 或文件系统的数据转换功能,异构数据库之间的互访和互操作功能,对新的高级应用提供支持的能力等。1.12 数据库管理系统的主要部分和各部分的功能数据库系统包括以下三部分:(1)存储管理器:高
3、效的利用辅助存储器来存放数据,并使得数据能够被快速存取。具体负责外存储器中的数据存储管理和访问,索引的建立和管理,内存中的缓冲区管理等。(2)查询处理器:高效的执行像SQL 这样非常高级的语言表达的数据查询和修改。具体负责 DDL 编译,数据安全性定义和安全性控制,数据完整型定义和完整性控制,查询编译,查询优化,查询执行等。(3)事务管理器:对并发执行的事务进行有效地管理,使之具有 ACID 特性。具体负责事务管理,并发控制,日志管理和故障恢复等。数据库系统的层次结构是:应用层,语言翻译处理层,数据存取层,数据存储层。1.2 存储管理1.21 物理存储介质简介物理存储器层次从上到下依次为:高速
4、缓冲存储器(数据库系统中不需要考虑),主存储器,第二级存储器(磁盘存储器)和第三级存储器(磁带存储器,自动光盘机)。在这个层次结构中,一种存储介质的层次越高,它的成本越贵,但是速度就越快。最快的存储介质称为基本存储。第二级存储器称为辅助存储器或联机存储器。层次结构中最底层的介质称为三级存储器,或脱机存储器。1.22 数据存储组织一个数据库被映射为多个不同的文件,在任意一个文件中只储存一个固定长度的记录(定长记录,更容易实现);或者是使一个文件能容纳多种长度的记录(变长记录,更大的灵活性)。名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 6 页 -每个磁盘块的开始处有一个块头,包含
5、了:块中记录的数目块中空闲空间的末尾处一个由包含记录位置和大小的条目组成的数组实际记录从块尾处开始写入,所有空闲空间存在于块头数组的最后一个条目和第一条记录之间。123 缓冲区管理数据库系统中提高访问效率的一个重要手段是减少磁盘和内存之间传输的块的数目。减少磁盘访问次数的一种方法是在内存中保留尽可能多的磁盘块,尽可能使得要访问的磁盘块已经在内存中。内存中的这种区域,我们称为缓冲区。负责缓冲区空间分配的子系统称为缓冲区管理器。当数据库系统中的程序需要磁盘上的块时,它向缓冲区管理器发出请求。如果一个块已经在缓冲区中,缓冲区管理器将这个块在主存储器中的地址传给请求者。如果这个块不在缓冲区中,缓冲区管
6、理器首先在缓冲区中为这个块分配空间,如果需要的话,会把其它块移出主存储器,为这个新块腾出空间。被移出的块如果被修改过,则需要将它写回磁盘。然后缓冲区管理器把新块从磁盘读入缓冲区,并将这个块在主存储器中的地址告诉请求者。1.24 数据字典在数据库系统中,除了存储关系外,还需要维护关于数据库的描述信息,这里信息称为数据词典,或系统目录。系统必须存储的目录信息主要包括:关系的基本信息:关系的名字,每个关系中各个属性的名字,属性的域的长度,在数据库上定义的视图的名字和这些视图的定义,完整性约束,关系所使用的存储方法。用户信息:授权用户的名字,用于认证用户的密码或其他信息,用户的授权索引的描述:索引的名
7、字,被索引的关系的名字,构造的索引的类型统计信息:关系中每个元祖的字节数,每个关系中元祖的总数等。1.25 索引结构支持对于所需要的数据进行快速定位的附加的数据结构称为索引。一个文件上可以建立多个索引,每个索引都是基于文件中的一个属性或属性组来建立的,这个属性或属性组称作查找码(搜索码)。当查找条件是基于这样的属性提出时,系统可以利用索引快速的在文件中查找记录索引有两种类型:顺序索引:顺序索引按顺序存储搜索码的值,并将搜索码与包含该搜索码的记录关联起来。最常用的顺序索引是B+树索引。若包含记录的文件中记录之间的物理顺序按照某属性或属性组的值排列,则基于该属性或属性组所建立的顺序索引称为聚集索引
8、。可减少磁盘块I/O 次数。散列索引:散列索引将索引码值平均分布到散列桶中,每个值所属的散列桶是由一个函数决定的,该函数称为散列函数。顺序索引能有效的支持点查询和范围查询;散列索引能有效的支持点查询,但不支持范围查询。1.3 查询处理查询处理包括:将查询语句翻译为能在文件系统的物理层上使用的表达式,为优化查询进行各种转换,实际的查询执行。查询处理器的主要模块有:查询编译器和查询执行引擎。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 6 页 -1.31 查询处理概述首先 语法分析器 检查用户查询的语法,构造该查询语句的语法分析树 表示,然后将其翻译成关系代数表达式。如果查询是用视
9、图形式表示的,翻译阶段还要用定义该视图的关系代数表达式来替换所有对该视图的引用。然后系统进行查询重写,将语法分析树转化为初始查询计划,这种查询计划通常表示为逻辑查询计划或扩展的关系代数表达式。然后初始查询计划被转换为一个预期所需执行时间较少的等价的计划。这个过程称为逻辑查询的计划选择。选择逻辑查询计划和选择物理查询计划的步骤通称为查询优化。可以简单的用磁盘块I/O 次数来度量磁盘上存取数据的代价。1.32 查询的执行查询的执行最基本的动作是关系代数运算的执行。而每一个基本的关系代数运算都有多种不同的实现算法。不同的实现算法适用于不同的情况。如:查询条件的类型不同,可利用的存取路径不同等;不同的
10、实现算法其执行代价也不同。扫描运算包括了全表扫描和索引扫描。1.33 查询优化查询优化包括逻辑查询计划选择和物理查询计划选择两个重要步骤:(1)逻辑查询计划选择不仅要考虑初始的由语法分析树转换成的关系代数表达式,还需要考虑其他可选的等价表达式。表达式转换的等价规则是将一个关系代数表达式转换为与之等价的另一个关系代数表达式的规则。查询优化器利用等价规则将一个表达式转换成逻辑上等价的但执行效率更高的另一个表达式。表达式转换时使用的启发式规则:A尽可能深的将选择推入表达式树中B 尽可能深的将投影推进树中,可以加入新的投影C 重复消除有时可以消去,或移到树中更方便的位置D某些选择可以与其下面得笛卡儿积
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据库系统实现技术 2022 数据库 系统 实现 技术
限制150内