数据库系统原理与应用第一章.ppt_第1页
数据库系统原理与应用第一章.ppt_第2页
数据库系统原理与应用第一章.ppt_第3页
数据库系统原理与应用第一章.ppt_第4页
数据库系统原理与应用第一章.ppt_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库系统原理及应用,火箭技术教研室 郭乃林,20.10.11,2,第一章 数据库系统概论,1.1 数据库技术概述 信息的处理技术和信息的利用能力成为衡量一个单位和国家社会经济发展和科学进步水平的重要标志 信息、物质、能源 人类社会的三大资源 作为信息技术主要支柱之一的数据库技术在社会各个领域中得到了广泛的应用。,20.10.11,3,1.1 数据库技术概述,1.1.1数据库系统应用实例 一、航空售票系统 二、银行业务系统 三、超市销售业务系统 四、企业管理信息系统 五、教学管理系统 六、图书馆管理系统,20.10.11,4,1.1 数据库技术概述,1.1.2数据库系统的作用,数据库管理系统,

2、数据库系统,1、管理大量的数据 2、数据库定义功能 3、数据查询功能 4、控制多用户的访问,数据库,20.10.11,5,1.1 数据库技术概述,1.1.3常见的数据库系统 Oracle数据库系统Oracle数据库系统目前的版本是Oracle9i,它在全球和中国的销量都是第一。我国的主要用户是公安系统、金融系统和大型企业。Oracle数据库系统非常复杂,可以按照用户的要求进行组装。它支持Web功能,支持在数据库中存储大对象的数据,如图象和图形、视频和音频数据等等。,20.10.11,6,1.1 数据库技术概述, Sybase公司的主打产品有两种:Sybase Adaptive Server E

3、nterprise和Sybase Adaptive Server Anywhere。它在中国的销量是第二,其主要用户有铁道部、金融系统和大型企业。成功的案例有98世界杯网站系统,全国铁路售票系统(与民航售票系统完全不同)。这些系统主要采用Sybase公司的数据复制技术和主键冲突解决方案。,20.10.11,7,1.1 数据库技术概述,Microsoft公司的数据库产品是SQL Server,它最早是从Sybase公司买的核心技术,目前的版本是7.0。它在全球的销量处于第三位,处于第二位的是IBM的DB2,DB2主要专用于IBM的大型机,用于并行存储与计算。而Microsoft公司的SQL Se

4、rver在我国的主要用户是中小型企业和教育机构。,20.10.11,8,1.1 数据库技术概述,Access 2000是在Windows环境下的非常流行的桌面型数据库管理系统,它无需编写任何代码,只需要通过直观的可视化操作,就可以完成大部分的数据库管理任务。 Visual foxpro,20.10.11,9,1.1 数据库技术概述,1.1.4 数据库应用程序的开发过程 随着信息技术的迅速发展,信息系统应用范围迅速扩大。近年来,实际运行的信息系统越来越多,对社会和经济的影响日益深入。 并不为大多数人所知的另一方面: 真正完成的系统比计划开发的系统少得多;实际运行的系统比开发完成的系统少得多;运行

5、的系统中,许多系统的效益远不如当初的承诺。 后果:使建设单位背上沉重包袱;人们为信息系统建设的效率和成功率担忧。,20.10.11,10,信息系统建设的复杂性,原因: 信息系统的多学科性、综合性 它的发展必定有一个较长的过程,需各学科的成熟,技术人员、管理人员的知识需要拓宽,人们对信息系统建设过程的认识需要在实践中提高。 信息系统建设周期长、投资大、风险大,比一般技术工程有更大的难度和复杂性的系统工程。,20.10.11,11,信息系统建设的复杂性,技术手段复杂 内容复杂,目标多样 投资密度大,效益难以计算 环境复杂多变,20.10.11,12,早期开发方法的不足,技术方面 目标含糊 通信误解

6、 技术人员与管理人员沟通困难 开发方法 步骤混乱 管理方面 缺乏管理控制 其它 领导重视不足 业务人员支持不够 部门协调困难,20.10.11,13,信息系统开发方法学,系统开发的任务、特点和方式; 系统开发的认知体系; 系统开发的一般规律和指导原则; 系统开发的策略和资源规划; 系统开发的一般理论; 系统开发的方法、工具和环境; 系统开发的组织; 系统开发的关键因素、必要条件、组织运 行机制等。,20.10.11,14,结构化方法的基本思想,结构化程序设计 基本思想是:不用或尽量少用GOTO语句,一切程序都用图示的三种结构方式来构成。,顺序结构,分支结构,循环结构,20.10.11,15,结

7、构化方法的基本思想,结构化系统设计方法的产生 把模块化思想引入到系统设计中来,将一个系统设计成层次化的程序模块结构。这些模块相对独立,功能单一。 结构化系统分析 在调查、分析系统逻辑功能的基础上,用数据流程图等工具把系统功能描述清楚。,20.10.11,16,结构化生命周期法,20.10.11,17,结构化方法的基本思想,结构化方法的基本原则 面向用户的观点 严格区分工作阶段,每个阶段有明确的任务和应得的成果 按照系统的观点,自顶向下地完成系统的研制工作 充分考虑变化的情况 工作成果文献化、标准化 缺点: 开发周期长 结构化程度低的系统,在开发初期难于锁定功能要求,20.10.11,18,快速

8、原型法,在投入大量的人力、物力之前,在限定的时间内,用最经济的方法开发出一个可实际运行的系统原型,以便尽早澄清不明确的系统需求。在原型系统的运行中用户发现问题,提出修改意见,技术人员完善原型,使它逐步满足用户的要求。,20.10.11,19,快速原型法开发MIS的过程,确定系统基本需求,20.10.11,20,快速原型法的优缺点,优点: 增进了用户与开发人员的沟通; 用户在系统开发中起主导作用; 能够辨认动态的用户需求; 启迪衍生式的用户需求; 缩短开发周期,降低开发风险。 缺点: 不够规范,难于管理; 需要自动化工具的支持; 评价标准不一定合理。 容易偏离原型的目的。,20.10.11,21

9、,面向对象方法的基本概念,以对象为中心和出发点,分解系统的开发方法。 对象:对象是一些属性和专用服务的封装体; 类:所有对象又被分为各种对象类,类是有相似属性和服务的多个对象的集合; 消息:对象之间除了传递消息之外,不再存在其他联系; 继承性:下层可以继承上层对象所具有的属性; 封装性:对象向外界提供的只有属性和操作,而把内部细节隐蔽起来。,20.10.11,22,面向对象方法的开发过程,认识客观世界中的对象及行为,分别独立设计各个对象和实体; 分析各个对象之间的联系和相互之间传递的信息,形成信息系统模型; 由信息系统模型转化为计算机软件模型; 由软件系统模型转化为一个现实的系统。,20.10

10、.11,23,软件开发工具,软件开发工具是指在软件开发过程中,帮助开发者提高工作质量和工作效率的一类新型软件。,20.10.11,24,1.2数据库技术的演变,1.2.1数据库技术的环境 数据库系统是随着信息技术的发展而发展的; 信息技术发展的基础是计算机硬件、软件技术; 数据库技术是也是随着计算机技术的发展而发展的。 硬件环境: 存储器的类型和容量、数据处理器的速度、外围设备(如:输入输出设备、超市专用芯片的使用)、网络环境等。 软件环境: 运行环境、通用工具、编程语言、开发工具; 数据(信息),20.10.11,25,1.2数据库管理系统的产生,数据管理的进展 数据管理随着计算机软硬件的发

11、展而不断发展,40多年来经历了以下三个阶段:1、人工管理阶段2、文件系统阶段3、数据库管理系统阶段,20.10.11,26,1.2.1数据管理的进展,1、人工管理阶段 主要是指50年代中期以前的这段时间,此时的计算机还很简陋,连完整的操作系统都没有。因此,数据只能放在卡片上或其他介质上,由人来手工管理。,20.10.11,27,1.2.1数据管理的进展,2、文件系统阶段 主要是指50年代后期到60年代中期的这段时间,此时的计算机已经有了操作系统。在操作系统基础之上建立的文件系统已经成熟并广泛应用。因此,人们自然想到用文件把大量的数据存储在磁盘这种介质上,以实现对数据的永久保存和自动管理以及维护

12、;,20.10.11,28,1.2.1数据管理的进展,3、数据库管理系统阶段主要是指60年代后期以后,由于数据库管理系统的诞生,通过数据库管理系统管理大量的数据,不仅解决了数据的永久保存,而且真正实现了数据的方便查询和一致性维护问题,并且能严格保证数据的安全。,20.10.11,29,1.2.2文件处理系统,在数据库管理系统出现以前,把需要管理的数据存放在永久性的系统文件中,同时为了能够操作这些文件里的数据,系统里还有针对这些文件编写的应用程序。 在文件处理系统中存储信息的弊端主要表现在七个方面:1、数据冗余和不一致 2、数据访问困难3、数据孤立 4、完整性问题 5、原子性问题 6、并发访问异

13、常 7、安全性问题,20.10.11,30,1.2.2文件处理系统,1、数据冗余和不一致 数据冗余是指相同的信息可能在不同的地方(文件)重复存储。如某个客户的地址和电话号码既可能在由储蓄帐户记录组成的文件里出现,也可能在由支票帐户记录组成的文件中出现;数据冗余还可能导致数据不一致,即同一数据的不同副本不一致。如某个客户地址的更改可能只是在储蓄帐户文件里得到反映而在系统的其他文件中没有得到反映。,20.10.11,31,1.2.2文件处理系统,2、数据孤立,访问困难 由于数据分散在不同的文件中,这些文件又可能具有不同的格式,而且数据和数据之间的联系很难表达。因而要编写新的且检索迅速、灵活数据的应

14、用程序是很困难的。,20.10.11,32,1.2.2文件处理系统,3、完整性问题 文件中所存储数据的值必须满足某种一致性约束。例如银行帐户的余额永远不会低于某个预定的值-10元。开发者通过在不同的应用程序中加入适当的代码来体现系统中的这些约束。但当新的约束加入系统时,很难通过修改程序来体现这些新的约束。尤其是当约束涉及到不同文件中的多个数据项时,问题就变得更加复杂了。因此,如何表达和实现一致性约束就成为迫在眉睫的问题。,20.10.11,33,1.2.2文件处理系统,4、原子性问题 计算机系统也常常会发生故障,一旦故障发生并被检测到,数据就应恢复到故障发生前的状态。例如,假设要从A帐户转50

15、00元到B帐户,可是在程序的执行过程中发生了系统故障,很可能从A帐户减去的5000元钱还没来得及存入B帐户,系统就死机了。这就造成了数据的不一致。显然,为了保证数据状态的一致性,这里的借、贷两个操作要么都发生要么都不发生,也就是说,转帐这个操作必须是原子的-它要么全部发生要么根本不发生(具有不可分割性)。,20.10.11,34,1.2.2文件处理系统,5、并发访问异常 许多系统允许多个用户同时访问数据,在这样的环境中由于并发更新操作相互影响,可能就会导致数据的不一致。假设A帐户中有500元,客户B和客户C几乎同时从A帐户中分别取款50元和100元。假设每个取款操作对应的程序都是读取帐户余额,

16、在其上减去取款的金额,然后将结果写回。如果两次取款的程序并发执行,可能它们读到的余额都是500元,并将分别写回450元和400元,到底是450元还是400元要看哪个程序后写回结果而定,而实际上这两个结果都是错误的。由于数据可能被多个不同的应用程序访问,而这些程序间事先又没有协调管理,因而可能会出现并发访问异常问题。,20.10.11,35,1.2.2文件处理系统,6、安全性问题 并非系统的所有用户都可以访问所有的数据。例如在银行系统中,银行员工的工资发放人员只需要看到数据文件中有关银行员工的那部分信息,他们绝对不需要访问关于客户帐户的信息。由于应用程序总是即兴加入到系统中来,这样的安全性约束在

17、文件处理系统中难以实现。,20.10.11,36,1.2.3数据库管理系统,数据库管理系统的目的就是为了解决上面提到的和未提到的在文件处理系统中存在的问题:数据冗余和不一致、数据访问困难、数据孤立、完整性问题、原子性问题、并发访问异常和安全性问题等等。 也正是由于这些问题,导致了数据库管理系统的产生,并且提出了很多新的概念和算法,加速了数据库管理系统的发展。 那么到底什么是数据库管理系统呢?,20.10.11,37,1.2.3数据库管理系统,数据库管理系统(Database Management System,英文缩写为DBMS)是由一个互相关联的数据的集合和一组用于访问这些数据的程序组成,这

18、个数据集合通常称作数据库(Database,简称为DB)。数据库管理系统有时也通俗地称为数据库系统,因此我们通常所说的数据库系统主要是指DBMS,而不是指存放数据的具体数据库。,20.10.11,38,1.2.4数据视图,数据抽象 数据库管理系统的一个主要作用就是隐藏关于数据存储和维护的某些细节,而为用户提供数据在不同层次上的抽象视图,这就是数据抽象,即不同的使用者从不同的角度去观察数据库中的数据所得到的结果。对用户来说,了解数据库中用来表示数据的复杂的数据结构没有太大的必要。数据库管理系统通过如下三个层次的抽象来向用户屏蔽复杂性,简化系统的用户界面。1、物理层抽象2、逻辑层抽象3、视图层(概

19、念层)抽象,20.10.11,39,1.3数据库系统的架构,架构规范、形式 数据库系统的架构包括: 数据存储架构 数据视图架构 数据库应用架构,20.10.11,40,1.3数据库系统的架构,1.3.1数据存储架构 指的是数据库中物理数据和逻辑数据的表示形式、物理数据和逻辑数据之间关系的映射方式。,20.10.11,41,1.3数据库系统的架构,1.3.1数据存储架构 1、物理数据描述 物理数据是指实际存放在存储设备上的数据,其结构指的就是存储方式。 位(bit) 01 字节(byte) 8位=1字节 字(word) 8位、16位、24位、32位 块(block) 存储器上的最小单位(2565

20、121024等) 卷(volume) 设备的标识,20.10.11,42,1.3数据库系统的架构,1.3.1数据存储架构 2、逻辑数据描述 逻辑数据是指用户或程序员用来操作的数据形式,它是一种抽象概念,是对客观现实世界的反映和记录。其结构指的是组织形式和结构。,20.10.11,43,1.3数据库系统的架构,1.3.2 数据视图架构 数据库中的数据,为了满足各种用户的要求,设计了复杂的数据结构。为了给用户提供简单明了的数据界面,系统必须隐藏数据在数据库内部的结构和存储细节。为此,系统提供三个层次屏蔽系统的复杂性,如图所示。,外部层(视图层),概念层,内部层(物理视图),20.10.11,44,

21、1.3数据库系统的架构,1.3.3 数据库应用架构 数据库应用架构就是指数据库应用系统中数据存储、业务处理、界面表示以及网络通信之间的布局和分布。根据目前的应用和发展情况可分为五类: 一、单用户数据库应用架构,20.10.11,45,1.3数据库系统的架构,1.3.3 数据库应用架构 二、集中式数据库应用架构,20.10.11,46,1.3数据库系统的架构,1.3.3 数据库应用架构 三、客户机/服务器应用架构,20.10.11,47,1.3数据库系统的架构,1.3.3 数据库应用架构 四、多层数据库应用架构,20.10.11,48,1.3数据库系统的架构,1.3.3 数据库应用架构 四、基于

22、internet应用架构,浏览器,数据库 服务器,Web 服务器,请求HTTP,internet,20.10.11,49,1.4数据库管理系统的组成,关系型数据库管理系统组件结构示意图,20.10.11,50,1.4数据库管理系统的组成,1.4.3查询处理器部件 查询处理器部件主要由四部分组成,它们分别是:1、DML编译器2、嵌入式DML预编译器3、DDL解释器4、查询计算引擎,20.10.11,51,1.4数据库管理系统的组成,1.4.4 存储管理器 存储管理器是为存储在数据库中的低层数据与应用程序及向系统提交的查询之间提供接口的程序模块。存储管理器负责与DBMS的文件管理器交互。原始数据通过文件系统存储在磁盘上,文件系统通常由操作系统提供。存储管理器将经过查询处理器编译的不同的DML语句的代码再次翻译成低层的文件系统命令。,20.10.11,52,1.4数据库管理系统的组

温馨提示

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

评论

0/150

提交评论