开发数据库应用系统的基础_第1页
开发数据库应用系统的基础_第2页
开发数据库应用系统的基础_第3页
开发数据库应用系统的基础_第4页
已阅读5页,还剩4页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、11开第1章 发数据库应用系统的基础开发数据库应用系统的基础把握好以下主题有助于开发出架构良好、高效且具备可扩展性的数据库应用系统:u 数据库系统的组成、全局结构和数据存取结构。u 数据库系统体系结构。简要讨论集中式和客户机-服务器(C/S)结构的数据库系统体系结构,本书专门讨论这两种结构的数据库应用系统实现实例。u 数据库应用系统的简单结构、数据库引擎、开发数据库应用系统所需的技术背景和开发任务以及开发数据库应用系统需要考虑的问题。1.1 数据库系统的组成和全局结构数据库系统(database system,DBS)是采用了数据库技术的计算机系统。DBS是以信息处理为核心的计算机系统,信息的

2、存取是系统工作的枢纽,它是一个可运行的,按照数据库技术存储、维护和向应用系统提供数据支持的系统,是由数据库、硬件、软件和数据库用户组成的有机集合体。1.1.1 数据库系统的组成任何数据库系统都由数据库(DB)、硬件、软件和数据库用户组成。数据库是与企业具体的业务应用有关的全部数据的集合。从数据库的用途来看,数据库可分为以下两类:u 物理数据库 物理数据库是业务应用数据的集合,是业务应用数据库的主体。u 描述数据库 描述数据库又可称为数据字典或元数据库,用来描述和存储各业务应用数据库的数据结构及其定义。硬件包括中央处理器、内存、外存、输入输出(I/O)设备等硬件设备。数据库系统特别关注内存、外存

3、、I/O存取速度、可支持的终端数、性能稳定性、网络的支持能力、存储设备的扩充能力以及数据存取通道的能力等。不同的数据库系统对硬件的要求不同,应根据具体应用选择适当的硬件设备。软件包括数据库管理系统(DBMS)、操作系统(OS)、数据库引擎和应用开发支撑环境等程序。DBMS是DBS的核心,需要在OS的支持下才能工作。数据库引擎是数据库应用程序和数据库交互的中间驱动程序。应用程序是数据库终端用户用来实现业务的操作界面,是提高生产效率必不可少的程序。应用开发支撑环境是数据库应用程序开发者能够以低成本、高效率开发出数据库应用程序的高效、多功能、集成的交互式程序设计系统。目前,典型的数据库应用开发环境有

4、Delphi、C+ Builder、PowerBuilder、Visual Basic、Visual C+、JBuilder、C#Builder以及.NET开发环境等。数据库用户就是与DBS交互的用户,按照与系统交互方式的不同,可分为如下4类:u 数据库管理员(DBA) 负责定义和修改数据库结构,负责DBS的正常运行,承担创建、监控和维护数据库的责任。u 专业用户 数据库设计过程中使用专用的数据库查询语言操作数据的数据库设计专业人士,例如系统分析员。u 应用程序员 使用应用开发环境和数据操作语言开发应用程序的程序员。u 终端用户 使用应用程序完成具体业务应用工作的人员。通常又将这类用户称为“软

5、件最终用户”。“用户”在不同的应用语境和范围中有不同的含义。在DBS中“数据库用户”有上述含义和分类,但在DBMS中则不同。对于DBMS来说,应用程序需要使用登录账号登录DBMS后才能与DBMS通信,有时也将登录账号称为DBMS的“登录用户”。而对于应用程序而言,应用程序的用户是真正使用应用程序的业务工作人员或角色。1.1.2 数据库系统的全局结构从数据库系统的组成来考虑各组成模块之间的关系,数据库系统全局结构如图1-1图1-1 DBS全局结构所示。OS提供最基本的I/O服务,是DBMS和磁盘存储器交互的中介。DBMS的查询处理器和存储管理器完成数据库的定义、数据库的操纵(查询、新增、删除和修

6、改数据)、数据库的安全保护、数据库的维护和存储数据字典等功能。1.1.3 DBMS的工作模式和用户存取数据的过程DBMS是DBS中对数据进行管理的软件系统,是DBS的核心组成部分。在DBS中对数据库的一切操作(数据定义、查询、更新和各种控制)都是通过DBMS进行的。DBMS的工作模式如图1-2所示。图1-2 DBMS的工作模式图1-3是用户存取数据库的示意图。用户对数据库进行操作是由DBMS把操作请求从应用程序带到外模式、模式、内模式,进而通过OS操作磁盘中的数据。同时,DBMS为应用程序的请求在内存中开辟一个数据库的系统缓冲区,用于数据传输和格式转换。图1-3 用户存取数据库的示意图1.2

7、数据库系统体系结构根据计算机的系统结构,DBS可分为集中式、客户机-服务器式、并行式和分布式4种。本章重点讨论集中式和客户机-服务器式数据库应用系统的开发技术。1.2.1 集中式DBS集中式DBS运行在单个计算机系统中,与其他计算机系统没有联系。通常也将集中式DBS称为单机DBS。集中式DBS中的数据库、DBMS和应用程序等组成部分都运行在一个计算机系统中,不同机器之间不能共享数据。计算机系统有单用户系统和多用户系统两种,因此,可将集中式DBS分为单用户和主从式两种类型。微型计算机和工作站都属于单用户系统,单用户集中式DBS的结构如图1-4所示。通常说的桌面DBS是单用户DBS的典型应用模式。

8、单用户DBS由一个用户独占使用,无数据共享能力。图1-4 单用户集中式DBS主从式结构是指一个主机带多个终端的多用户结构。在这种结构的DBS中,应用程序、DBMS、数据库等都集中存放在主机上,所有任务都由主机来完成,各个用户通过主机的终端并发地存取数据库,共享数据资源。主从集中式DBS的结构如图1-5所示。主从式结构的优点是简单,数据易于管理和维护。缺点是能够支持的终端数目有限,由于所有任务都由主机完成,主机的性能是DBS的瓶颈。图1-5 主从集中式DBS应用较为广泛的集中式数据库管理系统有Paradox、dBASE、Access、Visual FoxPro等。集中式DBS的应用目前主要是在小

9、型数据管理和信息处理业务中。本书将讨论基于Paradox的数据库应用系统项目的开发实例。1.2.2 客户机-服务器结构DBS客户机-服务器结构DBS通常简写为C/S结构DBS。C/S结构DBS是随着计算机网络技术的发展和应用产生的。C/S结构的关键在于功能的分布,DBS的一些功能在客户端(前端)执行,另一些功能在服务器端(后端)执行。C/S结构DBS的体系结构如 图1-6所示。在C/S结构DBS中,服务器专门用来执行DBMS功能、管理数据库以及完成分配在后端的功能。应用程序和应用开发工具等则安装在客户机上,支持用户的应用。服务器和客户机之间通过网络连接,并通过数据库引擎接口实现相互之间的通信。

10、在C/S结构中,客户端的用户请求被传送到数据库服务器,数据库服务器进行处理后只将结果返回给用户,从而减少了网络上的数据传输量,提高了系统性能、吞吐量和负载能力。同时,C/S结构的DBS具有更多的开放性、可扩展性和可移植性,能够跨平台运行。通常将C/S结构的DBS称为两层结构的C/S系统。如果在客户端和数据库服务器之间增加应用服务器(或其他中间服务程序),则两层C/S结构演化成多层的C/S结构,例如B/S结构的DBS就是典型的三层C/S结构。图1-6 C/S结构DBSC/S结构DBS是目前应用比较广泛的DBS类型之一。应用较为广泛的C/S结构数据库管理系统有Oracle、DB2、Sybase、M

11、S SQL Server等,这些数据库管理系统都能够支持大型的数据应用业务。本书将讨论基于MS SQL Server的两层C/S结构数据库应用系统项目的开发实例。1.3 开发数据库应用系统以数据库为基础的信息系统通常称为数据库应用系统,它一般具有信息采集、加工、抽取和传播等功能,是实现业务应用的数据库系统。开发数据库应用系统需要对其基本结构、所需的技术背景、开发任务和需要考虑的问题有所了解。1.3.1 数据库应用系统的简单结构如果抛开DBS中的硬件和操作系统组成部件,就可以采用如图1-7所示的简单结构描述数据库应用系统。从图1-7中可以看出,数据库应用系统由应用程序端、中间件和数据库端三部分组

12、成。图1-7 数据库应用系统的简单结构中间件通常由数据库管理系统或应用程序开发环境提供商提供给开发用户使用。中间件是应用程序和数据库之间进行交流的必需通道。设计数据库应用系统时,不需要自己编写,但必须要了解中间驱动的运作原理和使用方法。数据库应用系统中采用的数据库类型和开发环境不同,可使用的中间驱动也可能不同。如果数据库应用系统使用服务器类型的数据库,应用程序必须要通过数据库服务器(数据库管理系统)才能存取数据库。如果使用的是文件类型的数据库,应用程序可直接存取数据库。数据库服务器由专门的数据库管理系统提供商提供,设计数据库系统时,不需要自己编写,但必须要了解数据库管理系统的运作原理及其提供的

13、数据库开发能力。数据库的设计和实现是开发数据库应用系统的核心工作。不同的数据库应用系统由于其业务要求和运行环境不同,用于存取和管理数据库中存储的信息的应用程序也不同,这是终端用户使用数据库应用系统必不可少的操作界面。如果数据库应用系统离开了应用程序,终端用户无法直接操作数据库,完成信息管理 工作。1.3.2 数据库引擎数据库引擎是数据库应用程序与数据库(或数据库服务器)进行交互的接口,负责提交、处理数据库访问请求并返回处理结果。通常,数据库应用程序开发环境都会提供相应的数据库引擎及其开发组件,也可以这样说,在客户端,数据库引擎是由一系列用于进行数据库访问的数据结构和基于这些数据结构的方法(或函

14、数库)组成。从服务器端响应和处理数据库请求的方式来看数据库引擎有两种基本的体系结构,分别是多进程数据库引擎(见图1-8)和单进程多线程数据库引擎(见图1-9)。图1-8 多进程数据库引擎运行结构图u 多进程数据库引擎。这种数据库引擎的优点是:一个数据库可以同时支持多个用户,在网络上提供数据集中化管理。可通过在物理机器上增加更多的CPU来扩展数据库规模。缺点是:占用资源较多,成本高,在比较低的配置下运行效率低下。多进程数据库引擎的代表是Oracle。图1-9 单进程多线程数据库引擎运行结构图u 单进程多线程数据库引擎。这种数据库引擎的优点是:占用资源比较少,成本低,在比较低的配置下也能发挥较好的

15、性能。其特征是:在一个处理进程内创建多个线程来响应多个数据库访问请求。具备比较好的可移植性,但低配置不能支持太多用户数。单进程多线程数据库引擎的代表是SQL Server 2000。1.3.3 开发数据库应用系统的技术背景和任务从DBS的组成、体系结构和数据库应用系统简单结构的讨论可知,开发数据库应用系统需要有如下一些技术背景:u 应掌握数据库设计的基本理论知识,了解数据库系统的体系结构、数据库的分析建模技术、数据库的体系结构、完整性约束和数据库规范理论等。u 应掌握一种桌面数据库和服务器数据库管理系统的应用技术,了解数据库管理系统提供的数据库管理和设计支持能力。u 熟悉一种能够支持数据库应用

16、程序开发的开发环境,包括相应的程序设计语言、数据结构、算法分析和应用程序架构技术等知识。u 了解开发环境提供的数据库存取技术和所提供的数据库引擎。u 了解软件设计和开发过程的一些基本知识,如个体软件过程、团队软件过程和软件工程等。u 了解应用程序的分发技术和分发工具,即如何制作应用程序的安装程序以及如何在用户环境中实施数据库应用系统。开发数据库应用系统的任务是:充分利用上述基础知识和技能,设计实现业务要求的数据库,设计终端用户操作数据库数据的应用程序,在用户环境中实施数据库应用系统以供用户完成业务工作,提高用户的生产率。1.3.4 开发数据库应用系统需要考虑的问题开发数据库应用系统和开发其他应

17、用系统一样,需要根据用户的业务需求确定数据库应用系统的运行环境和开发环境等。从技术角度看,通常,开发数据库应用系统需要考虑以下问题。1确定数据库应用系统的运行环境,选择合适的DBS体系结构开发数据库应用系统的首要问题是根据业务要求确定数据库应用系统的运行环境,选择合适的DBS体系结构。如果用户只需要在单机上工作,且需要管理的数据量很小,则应选择单用户结构的数据库应用系统;如果用户的业务需要在局域网环境中同时由不同工作人员完成,则应选择C/S结构的数据库应用系统;如果业务需要在远程机器上完成,则可能需要选择B/S结构的数据库应用系统。选择不同的体系结构将决定后续的数据库应用系统开发问题,如确定系

18、统开发环境等。同时,开发不同体系结构的应用系统,其开发技术复杂度也不一样,实现的技术也有所不同。2基于数据库应用系统的运行环境和体系结构确定数据库所有数据库都提供了存储和检索信息的能力,但不同数据库提供的附加功能则有所不同,主要表现在以下方面:u 不同数据库提供的数据安全保证机制不同。u 有的数据库基于文件锁定机制保证多用户并发操作,有的数据库则采用事务并发控制机制,后者比前者效率高很多,占用的资源也相对较大。u 不同的数据库描述数据字典(或元数据)的技术不同,提供的数据字典获取和管理技术也不同。u 不同数据库对数据完整性的保证措施和程度不同。有的数据库只能保证基本的实体完整性约束(主码)和参照完整性约束,而有的数据库则能够提供较全面的完整性保证技术。根据不同DBS体系结构中应用程序存取数据库的方式,数据库可分为本地数据库和远程数据库两种类型。集中式数据库应用系统使用本地数据库,而C/S结构的数据库应用系统则需要使用远程数据库服务器。本地数据库的典型代表是Paradox、dBASE、Visual FoxPro和Access等。远程数据库服务器的典型代表是Oracle、DB2、Sybase、MS SQL Server等。选择数据库时需要考虑数据库

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论