|
|
|
|
移动端

3.6 DBMS的组件

《数据库系统:设计、实现与原理(基础篇)(原书第6版)》第3章数据库的结构与Web,本章我们首先考察一些目前已投入使用的不同系统的结构,然后讨论有关Web服务和面向服务的结构(SOA)的进展。本节为大家介绍DBMS的组件。

作者:宁洪/贾丽丽/张元昭 译来源:机械工业出版社|2017-09-28 14:38

3.6 DBMS的组件

要提供2.4节给出的所有功能,DBMS必定是个高度复杂的软件。几乎不可能给出DBMS的通用组成结构,因为不同的系统之间存在很大的差异。然而,通过查看数据库系统的各组件和它们之间的关系来理解数据库系统仍然是有用的。本节给出了一种可能的DBMS结构。下节将讨论Oracle DBMS的结构。

一个DBMS可以被分成若干软件组件(或者模块),每个组件都被分配了特定的功能。如前所述,DBMS的一些功能是由基本的操作系统支持的。然而,操作系统一般只提供基本服务,DBMS建立在其上。因此,DBMS的设计必须要考虑DBMS与操作系统之间的接口问题。

在图3-20中描述了DBMS环境中主要的软件组件。这个图显示了DBMS如何解决与其他软件组件(如用户查询和访问方法(即存储和检索数据记录的文件管理技术))的接口问题。在附录F中将对文件组织和访问方法进行总体描述。感兴趣的读者若想更加全面地了解,可以参考Teorey and Fry(1982)、Weiderhold(1983)、Smith and Barnes(1987)和Ullman(1988)。

图3-20给出了下列的组件:

查询处理器。这是DBMS的一个主要组件,它将所有的查询转换成一系列指导数据库管理器运行的低层指令。第23章将讨论查询处理过程。

数据库管理器(DM)。DM与用户提交的应用程序和查询处理器接口。DM接受查询并且检查外部模式和概念模式,确定需要哪些概念记录才能满足查询请求。然后DM会通知文件管理器来执行请求。图3-21显示了DM的组件。

文件管理器。文件管理器操纵基本存储文件,并管理磁盘存储空间的分配。它建立和维护内部模式中定义的结构和索引的列表。如果要使用散列文件,它就会调用散列函数,产生记录地址。文件管理器不直接管理数据的物理输入和输出,而是将请求传递给适当的操作系统访问方法,由它从系统缓冲区(或高速缓存)中读出或写入数据。

DML预处理器。这个模块将嵌入应用程序中的DML语句转换成宿主语言中标准的函数调用。DML预处理器必须与查询处理器相互作用并产生适当的代码。

DDL编译器。DDL编译器将DDL语句转换成一组包含元数据的表格。这些表格将存储在系统目录中,控制信息将存储在数据文件头上。

目录管理器。目录管理器控制着对系统目录的访问,并且维护系统目录。系统目录可以被大多数的DBMS组件访问。

数据库管理器的主要软件组件如下:

授权控制。这个模块检查用户是否具有必要的操作权限。

命令处理器。一旦系统检查确认用户具有进行操作的权限,控制权将交给命令管理器。

完整性检查器。对于每个修改数据库的操作,完整性检查器检查请求的操作是否满足所有必要的完整性约束(例如关键字约束)。

查询优化器。这个模块确定执行查询的最佳策略。第23章将讨论查询优化问题。

事务管理器。这个模块执行从事务接收到的操作序列。

调度程序。这个模块的任务是确保当前在数据库中并发运行的操作不相互冲突。它控制着事务中操作执行的相对顺序。

恢复管理器。这个模块确保当发生失效时,数据库能够保持在一致的状态。它还负责事务提交和终止。

缓冲区管理器。这个模块负责主存和辅存之间的数据传输,辅存包括磁盘和磁带等。恢复管理器和缓冲区管理器有时候被统称为数据管理器。缓冲区管理器有时候也被称为高速缓存管理器。

最后四个模块将在第22章讨论。除了上述模块外,还有其他一些数据结构也要求作为物理级实现的一部分。这些结构包括数据和索引文件及系统目录。有关部门已经在DBMS标准化上做了一些努力,并且数据库体系结构框架任务组(Database Architecture Framework Task Group,DAFTG,1986)已经提出了一个参考模型。这个参考模型的目的是定义一个概念框架,旨在将标准化的工作划分成许多便于管理的子部分,并且在宏观上说明这些部分是如何相互关联的。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

标准C++开发入门与编程实践

本书着重介绍标准C++语言,即1998年由ISO正式推出的关于C++的国际性标准版本。 本书从最基础的编程语言概念讲起,共分6篇24章。前4篇完整...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊