1.3 数据库系统的组成和类型

1.3.1 数据库系统的组成

在前面介绍过,数据库系统(DBS)是具有数据库功能特点的应用系统。一个典型的数据库系统组成包括数据库、数据库管理系统(DBMS)、应用系统和用户4个部分,如图1-15所示。其中,用户(User)主要是指开发、管理和使用数据库的人员,包括数据库管理员(Database Ad-ministrator,DBA)、系统分析员、数据库设计人员、应用程序员和终端用户等。在不至于混淆的情况下,通常将数据库系统简称为数据库。

978-7-111-66147-4-Chapter01-79.jpg

图1-15 数据库系统组成

978-7-111-66147-4-Chapter01-80.jpg说明:少数文献将“广义的”数据库系统组成分为数据库、DBMS、软件、硬件和用户5个主要部分。

数据库管理系统(DBMS)是数据库系统的核心。DBMS提供数据定义(建立)、组织存储、管理、控制、数据操作和数据维护等功能,同时为业务数据处理应用系统开发人员和最终用户提供相应的技术支持,具体请见1.5节中的介绍。

数据库技术实现了数据的独立和共享,使应用系统可以更便捷地处理数据与操作,主要通过操作系统和数据库管理系统统一管理控制相关文件及存取调用、应用程序与数据之间的操作,应用程序不再直接调用数据文件,数据库阶段应用程序与数据之间关系如图1-16所示。

978-7-111-66147-4-Chapter01-81.jpg

图1-16 数据库阶段应用程序与数据之间的关系

1.3.2 数据库系统的类型

数据库系统的类型可以从不同的角度进行划分。根据数据库系统的部署位置不同可分为集中式、客户机/服务器式、分布式和并行式4种;根据用户数量分类,可分为单用户和多用户;根据用途和使用范围分类可分为数据仓库或决策支持等类型。下面重点介绍第一种分类方式。

1.集中式数据库系统

集中式数据库系统(Centralized Database Systems)是指数据库中的数据和数据处理集中在一台计算机(称为主机)上完成,其他用户可使用终端设备访问数据库,其中终端不具有数据处理与管理功能,而且终端本身并不能完成任何操作,所有数据操作都由主机完成。其拓扑结构图如图1-17所示。

在集中式数据库系统中,DBMS、DB和应用程序都集中部署在一台主机上。用户通过终端并发地(同时)访问主机上的数据,共享其中的数据,所有处理数据的工作都由主机完成。用户若在一个终端上提出要求,主机可根据用户的要求访问数据库,并对数据进行处理,再将结果发回该终端输出。集中式结构的优点是功能简单、容易实现、数据安全性高。其缺点是主机出现故障时,系统内所有终端均无法访问数据库,而且系统容错性低;终端到主机的通信压力很大;当终端并发过多时,主机处理传输效率较慢。

2.客户机/服务器数据库系统

客户机/服务器(Client/Server,C/S)结构的关键是采用“功能分解”的原则,将功能或任务进行分解,一些功能由客户机完成,另一些功能由服务器执行。客户端完成本地个性化处理,并向服务器发送请求,同时显示服务器返回的数据结果;服务器端负责处理公共任务的部分。C/S数据库系统的网络拓扑结构如图1-18所示。978-7-111-66147-4-Chapter01-82.jpg

978-7-111-66147-4-Chapter01-83.jpg知识拓展

C/S结构与其优缺点

978-7-111-66147-4-Chapter01-84.jpg

图1-17 集中式数据库系统结构

978-7-111-66147-4-Chapter01-85.jpg

图1-18 C/S数据库系统的结构

在C/S结构中,网络传输中的数据传输量明显减少,提高了网络效率;客户端参与处理提高了硬件的利用,可以使系统效率有所提高。此外,由于客户端功能相对简单,可以开发适用于不同系统平台的软件,提高这种C/S结构的平台兼容性。

在大量的实际业务数据处理应用中,兼顾系统安全性、处理速度、稳定性和健壮性,通常将数据库、应用服务器和客户端分为三层进行部署,称为C/S三层结构。C/S三层结构包括表示层、应用层和数据层。三层结构与比二层结构增加一个应用服务器层,如图1-19所示。在三层结构中,数据库服务器负责处理应用服务器发送的请求,并将操作的结果传送给应用服务器;客户机通常只安装具有用户界面和简单的数据处理功能的应用程序,为用户提供人机界面并与应用服务器进行交互;应用服务器上部署专门的应用程序,主要处理各种复杂的业务逻辑。客户端的数据请求由应用服务器上的应用程序负责,不再直接访问数据库,从而也提高了数据的安全性。

三层C/S结构的优点为:扩展性强,各层分工明确,其中任何一层的变动不会影响其他层;客户机功能更简洁,开发和管理工作集中在应用服务器端。需要指出的是,这种方式增加了业务分层和开发工作量,不适合小的应用系统建设。978-7-111-66147-4-Chapter01-86.jpg

978-7-111-66147-4-Chapter01-87.jpg知识拓展

三层C/S结构的主要优点

978-7-111-66147-4-Chapter01-88.jpg

图1-19 三层C/S体系结构图

3.分布式数据库系统

分布式数据库系统(Distributed Database Systems)的主要特点在1.1.3节中已经介绍过,其数据最显著特点是“逻辑整体性和物理存储分布性”。即通过计算机网络和专门的分布式管理软件,将在物理上分布在各个场地的数据库形成一个逻辑上的整体数据库,用户在使用该数据库时感觉不到数据场地的分散性,如同使用一个统一的本地数据库一样。在实际应用中,分布式数据库通常应用在大型跨国或跨地区的企事业机构。

4.并行式数据库系统

随着各种网络技术的快速发展和普及,各种应用业务需要处理的数据剧增。对于大部分企业,数据规模已达到TB级,传统数据库系统存在固有的I/O和CPU瓶颈问题,导致一般的服务器无法满足数据存取的需求,特别是一些事物型数据库的数据读取要每秒处理数千万个以上的请求。集中式DBS和C/S式DBS都无法应付这种情况,只有并行技术与数据库结合才可以解决这类问题。978-7-111-66147-4-Chapter01-89.jpg

978-7-111-66147-4-Chapter01-90.jpg知识拓展

数据容量及单位换算

并行式数据库系统(Parallel Database Systems)是新一代高性能的数据库系统,是在并行处理机(MPP)和集群并行计算环境的基础上建立的数据库系统。是并行处理技术与数据库技术结合的产物。并行数据库的特点:①高性能。通过将数据库在多个磁盘上分布存储,利用多个处理机对磁盘数据进行并行处理,解决磁盘I/O传输拥塞问题,更好地提高处理效率;②高可用性。通过数据复制增强数据库的可用性,当一个磁盘损坏时,该数据在其他磁盘上的副本仍可供使用;③可扩充性。当数据库遇到性能和容量瓶颈问题时,可以通过增加处理器和存储设备等方式扩展性能。