数据库管理系统的设计与实现


1、DBMS的目标

(1)用户界面友好

(2)功能完备

(3)效率高,包括:计算机系统内部资源的使用效率、DBMS本身的运行效率、用户的生产率

2、DBMS的基本功能

(1)数据库定义

对数据库的结构进行描述,包括外模式、模式、内模式的定义;数据库完整性的定义;安全保密定义;存取路径定义。这些定义存储在数据字典中,是DBMS运行的基本依据。为此,提供数据定义语言DDL。

(2)数据存取

提供用户对数据的操纵功能,实现对数据库数据库的检索、插入、修改和删除。

一个好的DBMS应该能够提供功能强易学易用的数据操作语言(DML),方便的操作方式和较高的数据存取效率。DML有两类:宿主型语言,自含型语言。前者的语句不能独立使用而必须潜入某种主语言,如C语言。而后者可以独立使用,通常以供终端用户交互使用和批处理方式两种形式使用。

(3)数据库运行管理

DBMS运行控制、管理功能,包括多用户环境下的并发控制、安全性检查和存取权限控制、完整性检查和执行、数据加密、运行日志的组织管理、事务的管理和自动恢复,这些功能保证了数据库系统的正常运行。

(4)数据组织、存储和管理

DBMS要分门别类的组织、存储各类数据,包括数据字典、用户数据、存取路径等。要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间利用率,选择合适的存取方式确保较高存取效率。

(5)数据库的建立和维护

包括数据库的初始建立、数据的转换、数据库的转储和恢复、数据库的重组织和重构造以及有性能检测分析等功能。

(6)其它功能

包括DBMS与网络中其它软件系统的通信功能;一个DBMS与另一个DBMS或文件系统的数据转换功能等。

3、DBMS与操作系统

通常DBMS是建立在操作系统环境之上的。根据具体操作系统的特点,DBMS可以用不同的方法利用操作系统的基本功能来实现DBMS。

(1)共享模块法;(2)分离进程法;(3)和操作系统融合

4、DBMS程序模块的组成

DBMS由众多程序模块组成,它们分别实现DBMS复杂而繁多的功能。

(1)数据库定义方面

有DDL翻译处理程序(包括外模式、模式、存储模式处理程序)、保密定义处理程序(如授权定义处理程序)、完整性约束定义处理程序等。这些程序接收相应的定义,进行语法、语义检查,把它们翻译为内部格式存储在数据字典中。DDL翻译程序还根据模式定义负责建立数据库的框架(即形式一个空库),等待装入数据。

(2)数据库操纵方面

有DML处理程序、终端查询语言解释程序、数据存取程序、数据更新程序等。DML处理程序或终端查询语言解释程序对用户数据操纵请求进行语法、语义检查、由数据存取或更新程序完成对数据库的存取操作。

(3)数据库运行管理方面

有系统初启程序,负责初始化DBMS、建立DBMS的系统缓冲区、系统工作区 打开数据字典等等。还有安全性控制、完整性检查、并发控制、事务管理、运行日志管理等程序模块,在数据库运行过程中监视着对数据库的所有操作,控制管理数据库资源,处理多用户的并发操作等。它们一方面保证用户事务的正常运行,一方面保证数据库的安全性和完整性。

(4)数据库组织、存储和管理方面

有文件读写与维护程序、存取路径(如索引)管理程序、缓冲区管理程序(包括缓冲区读、写、淘汰等模块),这些程序负责维护数据库的数据和存取路径,提供有效的存取的方法。数据库建立、维护和其它。有数据库初始数据装入程序、转储程序、恢复程序、数据库重构造程序、数据转换程序、通信程序等。

DBMS的这些组成模块互相联系,互相依赖,共同完成DBMS复杂的功能。这些模块之间的联系有一定的层次关系。

5、DBMS的层次结构

和操作系统一样,可以也应该将DBMS划分成若干层次。许多DBMS实际上就是分层实现的。最上层是应用层,位于DBMS核心之处。它处理的对象包括各种各样的数据库应用,如用宿主语言编写的应用程序、终端用户通过应用接口(如FORMS)发出的事务请求等。该层是DBMS的最终用户和应用程序的界面层。第二层是语言翻译处理层。它处理的对象是数据库语言,如SQL。提供的数据接口是关系、视图,即元组的集合。其功能是对数据库语言的各类语句进行语法分析、视图转换、授权检查、完整性检查、查询优化等。通过对下层基本模块的调用,生成可执行代码。这些代码的运行,即可完成数据库语句的功能要求。第三层是数据存取层。该层处理的对象是单个元组。它把上层的集合操作转化为单记录操作。执行扫描、排序、元组的查找、插入、修改、删除、封锁等基本操作。完成数据记录的存取、存取路径维护、并发控制、事务管理等工作。第四层是数据存储层。该层处理的对象是数据页和系统缓冲区,执行文件的逻辑打开、关闭、读页、写页、缓冲区读和写、页面淘汰等操作,完成缓冲区管理、内外存交换、外存管理等功能。操作系统是DBMS的基础,它处理的对象是数据文件的物理块。执行物理文件的读写操作,保证DBMS对数据逻辑上的读写真实地映射到物理文件上。操作系统提供的存取原语和基本的存取方法通常作为和DBMS存储层的接口。

转自新浪博客IBelieve的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值