数据库系统的组成

数据库系统的组成

数据库系统一般由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员构成。

1.硬件平台及数据库

由于数据库系统的数据量都很大,加之数据库管理系统丰富的功能使得其自身的规模也很大,因此整个数据库系统对硬件资源提出了较高的要求,这些要求是:
(1)、要有足够大的内存,存放操作系统、数据库管理系统的核心模块、数据缓冲区和应用程序。
(2)、有足够大的磁盘或磁盘阵列等设备存放数据库,有足够大的磁带(或光盘)作数据备份。
(3)、要求系统有较高的通道能力,以提高数据传送率。

2.软件

数据库系统的软件主要包括:
(1)数据库管理系统。数据库管理系统是为数据库的建立、使用和维护配置的系统软件。
(2)支持数据库管理系统运行的操作系统。
(3)具有与数据库接口的高级语言及其编译系统,便于开发应用程序。
(4)以数据库管理系统为核心的应用开发工具。应用开发工具是系统为应用开发人员和最终用户提供的高效率、多功能的应用生成器、第四代语言等各种软件工具。它们为数据库系统的开发和应用提供了良好的环境。
(5)为特定应用环境开发的数据库应用系统。

3.人员

开发、管理和使用数据库系统的人员主要包括数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。不同的人员涉及不同的数据抽象级别,具有不同的数据视图,如图1.17所示。这些人员分别包括如下职责。

数据库系统的组成_第1张图片
(1)数据库管理员(DBA)
在数据库系统环境下有两类共享资源,一类是数据库,另一类是数据库管理系统软件。因此需要有专门的管理机构来监督和管理数据库系统。数据库管理员则是这个机构的一个(组)人员,负责全面管理和控制数据库系统。具体包括如下职责。

①决定数据库中的信息内容和结构。数据库中要存放哪些信息,数据库管理员要参与决策。因此,数据库管理员必须参加数据库设计的全过程,并与用户、应用程序员、系统分析员密切合作、共同协商,做好数据库设计。

②决定数据库的存储结构和存取策略。数据库管理员要综合各用户的应用要求,和数据库设计人员共同决定数据的存储结构和存取策略,以求获得较高的存取效率和存储空间利用率。

③定义数据的安全性要求和完整性约束条件。数据库管理员的重要职责是保证数据库的安全性和完整性。因此,数据库管理员负责确定各个用户对数据库的存取权限、数据的保密级别和完整性约束条件。

④监控数据库的使用和运行。数据库管理员还有一个重要职责就是监视数据库系统的运行情况,及时处理运行过程中出现的问题。比如系统发生各种故障时,数据库会因此遭到不同程度的破坏,数据库管理员必须在最短时间内将数据库恢复到正确状态,并尽可能不影响或少影响计算机系统其他部分的正常运行。为此,数据库管理员要定义和实施适当的后备和恢复策略,如周期性的转储数据、维护日志文件等。

⑤数据库的改进和重组、重构。数据库管理员还负责在系统运行期间监视系统的空间利用率、处理效率等性能指标,对运行情况进行记录、统计分析,依靠工作实践并根据实际应用环境不断改进数据库设计。不少数据库产品都提供了对数据库运行状况进行监视和分析的工具,数据库管理员可以使用这些软件完成这项工作。
另外,在数据运行过程中,大量数据不断插入、删除、修改,时间一长,数据的组织结构会受到严重影响,从而降低系统性能。因此,数据库管理员要定期对数据库进行重组织,以改善系统性能。当用户的需求增加和改变时,数据库管理员还要对数据库进行较大的改造,包括修改部分设计,即数据库的重构。

(2)系统分析员和数据库设计人员

系统分析员负责应用系统的需求分析和规范说明,要和用户及数据库管理员相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。
数据库设计人员负责数据库中数据的确定及数据库各级模式的设计。数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。在很多情况下,数据库设计人员就由数据库管理员担任。

(3)应用程序员

应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装。

(4)用户

这里用户是指最终用户(end user)。最终用户通过应用系统的用户接口使用数据库。
常用的接口方式有浏览器、菜单驱动、表格操作、图形显示、报表书写等。
最终用户可以分为如下三类。

①偶然用户。这类用户不经常访问数据库,但每次访问数据库时往往需要不同的数据库信息,这类用户一般是企业或组织机构的高中级管理人员。

②简单用户。数据库的多数最终用户都是简单用户,其主要工作是查询和更新数据库,一般都是通过应用程序员精心设计并具有友好界面的应用程序存取数据库。银行的职员、航空公司的机票预订工作人员、宾馆总台服务员等都属于这类用户。

③复杂用户。复杂用户包括工程师、科学家、经济学家、科学技术工作者等具有较高科学技术背景的人员。这类用户一般都比较熟悉数据库管理系统的各种功能,能够直接使用数据库语言访问数据库,甚至能够基于数据库管理系统的应用程序接口编制自己的应用程序。

你可能感兴趣的:(数据库系统概论,数据库,mysql)