




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库系统原理及应用火箭技术教研室郭乃林1/9/202511第一章数据库系统概论1.1数据库技术概述信息的处理技术和信息的利用能力成为衡量一个单位和国家社会经济发展和科学进步水平的重要标志信息、物质、能源
人类社会的三大资源作为信息技术主要支柱之一的数据库技术在社会各个领域中得到了广泛的应用。1/9/2025221.1数据库技术概述1.1.1数据库系统应用实例一、航空售票系统二、银行业务系统三、超市销售业务系统四、企业管理信息系统五、教学管理系统六、图书馆管理系统1/9/2025331.1数据库技术概述1.1.2数据库系统的作用数据库管理系统数据库系统1、管理大量的数据2、数据库定义功能3、数据查询功能4、控制多用户的访问数据库1/9/2025441.1数据库技术概述1.1.3常见的数据库系统Oracle数据库系统Oracle数据库系统目前的版本是Oracle9i,它在全球和中国的销量都是第一。我国的主要用户是公安系统、金融系统和大型企业。Oracle数据库系统非常复杂,可以按照用户的要求进行组装。它支持Web功能,支持在数据库中存储大对象的数据,如图象和图形、视频和音频数据等等。1/9/2025551.1数据库技术概述Sybase公司的主打产品有两种:SybaseAdaptiveServerEnterprise和SybaseAdaptiveServerAnywhere。它在中国的销量是第二,其主要用户有铁道部、金融系统和大型企业。成功的案例有"98世界杯网站系统","全国铁路售票系统"(与民航售票系统完全不同)。这些系统主要采用Sybase公司的数据复制技术和主键冲突解决方案。1/9/2025661.1数据库技术概述Microsoft公司的数据库产品是SQLServer,它最早是从Sybase公司买的核心技术,目前的版本是7.0。它在全球的销量处于第三位,处于第二位的是IBM的DB2,DB2主要专用于IBM的大型机,用于并行存储与计算。而Microsoft公司的SQLServer在我国的主要用户是中小型企业和教育机构。1/9/2025771.1数据库技术概述Access2000是在Windows环境下的非常流行的桌面型数据库管理系统,它无需编写任何代码,只需要通过直观的可视化操作,就可以完成大部分的数据库管理任务。Visualfoxpro1/9/2025881.1数据库技术概述1.1.4数据库应用程序的开发过程随着信息技术的迅速发展,信息系统应用范围迅速扩大。近年来,实际运行的信息系统越来越多,对社会和经济的影响日益深入。并不为大多数人所知的另一方面:真正完成的系统比计划开发的系统少得多;实际运行的系统比开发完成的系统少得多;运行的系统中,许多系统的效益远不如当初的承诺。
后果:使建设单位背上沉重包袱;人们为信息系统建设的效率和成功率担忧。1/9/202599信息系统建设的复杂性
原因:
信息系统的多学科性、综合性它的发展必定有一个较长的过程,需各学科的成熟,技术人员、管理人员的知识需要拓宽,人们对信息系统建设过程的认识需要在实践中提高。
信息系统建设周期长、投资大、风险大,比一般技术工程有更大的难度和复杂性的系统工程。1/9/20251010信息系统建设的复杂性技术手段复杂内容复杂,目标多样投资密度大,效益难以计算环境复杂多变1/9/20251111早期开发方法的不足技术方面目标含糊通信误解技术人员与管理人员沟通困难开发方法
步骤混乱管理方面
缺乏管理控制其它
领导重视不足
业务人员支持不够
部门协调困难1/9/20251212信息系统开发方法学系统开发的任务、特点和方式;系统开发的认知体系;系统开发的一般规律和指导原则;系统开发的策略和资源规划;系统开发的一般理论;系统开发的方法、工具和环境;系统开发的组织;系统开发的关键因素、必要条件、组织运行机制等。1/9/20251313结构化方法的基本思想结构化程序设计基本思想是:不用或尽量少用GOTO语句,一切程序都用图示的三种结构方式来构成。动作A动作B条件动作A动作B是否条件动作A是否条件动作A是否顺序结构分支结构循环结构1/9/20251414结构化方法的基本思想结构化系统设计方法的产生把模块化思想引入到系统设计中来,将一个系统设计成层次化的程序模块结构。这些模块相对独立,功能单一。结构化系统分析在调查、分析系统逻辑功能的基础上,用数据流程图等工具把系统功能描述清楚。1/9/20251515结构化生命周期法1/9/20251616结构化方法的基本思想结构化方法的基本原则面向用户的观点严格区分工作阶段,每个阶段有明确的任务和应得的成果按照系统的观点,自顶向下地完成系统的研制工作充分考虑变化的情况工作成果文献化、标准化缺点:开发周期长结构化程度低的系统,在开发初期难于锁定功能要求1/9/20251717快速原型法在投入大量的人力、物力之前,在限定的时间内,用最经济的方法开发出一个可实际运行的系统原型,以便尽早澄清不明确的系统需求。在原型系统的运行中用户发现问题,提出修改意见,技术人员完善原型,使它逐步满足用户的要求。1/9/20251818快速原型法开发MIS的过程确定系统基本需求构造初始原型原型使用、评价满意否?可用的原型是修改原型否很不满意是否继续?是停止开发否1/9/20251919快速原型法的优缺点优点:增进了用户与开发人员的沟通;用户在系统开发中起主导作用;能够辨认动态的用户需求;启迪衍生式的用户需求;缩短开发周期,降低开发风险。缺点:不够规范,难于管理;需要自动化工具的支持;评价标准不一定合理。容易偏离原型的目的。1/9/20252020面向对象方法的基本概念以对象为中心和出发点,分解系统的开发方法。对象:对象是一些属性和专用服务的封装体;类:所有对象又被分为各种对象类,类是有相似属性和服务的多个对象的集合;消息:对象之间除了传递消息之外,不再存在其他联系;继承性:下层可以继承上层对象所具有的属性;封装性:对象向外界提供的只有属性和操作,而把内部细节隐蔽起来。1/9/20252121面向对象方法的开发过程认识客观世界中的对象及行为,分别独立设计各个对象和实体;分析各个对象之间的联系和相互之间传递的信息,形成信息系统模型;由信息系统模型转化为计算机软件模型;由软件系统模型转化为一个现实的系统。1/9/20252222软件开发工具软件开发工具是指在软件开发过程中,帮助开发者提高工作质量和工作效率的一类新型软件。人需求设计结构算法文档第三代语言机器指令硬件1/9/202523231.2数据库技术的演变1.2.1数据库技术的环境
数据库系统是随着信息技术的发展而发展的;信息技术发展的基础是计算机硬件、软件技术;数据库技术是也是随着计算机技术的发展而发展的。硬件环境:存储器的类型和容量、数据处理器的速度、外围设备(如:输入输出设备、超市专用芯片的使用)、网络环境等。软件环境:运行环境、通用工具、编程语言、开发工具;数据(信息)1/9/202524241.2数据库管理系统的产生数据管理的进展数据管理随着计算机软硬件的发展而不断发展,40多年来经历了以下三个阶段:
1、人工管理阶段
2、文件系统阶段
3、数据库管理系统阶段1/9/202525251.2.1数据管理的进展1、人工管理阶段主要是指50年代中期以前的这段时间,此时的计算机还很简陋,连完整的操作系统都没有。因此,数据只能放在卡片上或其他介质上,由人来手工管理。1/9/202526261.2.1数据管理的进展2、文件系统阶段
主要是指50年代后期到60年代中期的这段时间,此时的计算机已经有了操作系统。在操作系统基础之上建立的文件系统已经成熟并广泛应用。因此,人们自然想到用文件把大量的数据存储在磁盘这种介质上,以实现对数据的永久保存和自动管理以及维护;1/9/202527271.2.1数据管理的进展3、数据库管理系统阶段
主要是指60年代后期以后,由于数据库管理系统的诞生,通过数据库管理系统管理大量的数据,不仅解决了数据的永久保存,而且真正实现了数据的方便查询和一致性维护问题,并且能严格保证数据的安全。1/9/202528281.2.2文件处理系统在数据库管理系统出现以前,把需要管理的数据存放在永久性的系统文件中,同时为了能够操作这些文件里的数据,系统里还有针对这些文件编写的应用程序。在文件处理系统中存储信息的弊端主要表现在七个方面:
1、数据冗余和不一致2、数据访问困难
3、数据孤立4、完整性问题5、原子性问题6、并发访问异常7、安全性问题1/9/202529291.2.2文件处理系统1、数据冗余和不一致
数据冗余是指相同的信息可能在不同的地方(文件)重复存储。如某个客户的地址和电话号码既可能在由储蓄帐户记录组成的文件里出现,也可能在由支票帐户记录组成的文件中出现;数据冗余还可能导致数据不一致,即同一数据的不同副本不一致。如某个客户地址的更改可能只是在储蓄帐户文件里得到反映而在系统的其他文件中没有得到反映。1/9/202530301.2.2文件处理系统2、数据孤立,访问困难由于数据分散在不同的文件中,这些文件又可能具有不同的格式,而且数据和数据之间的联系很难表达。因而要编写新的且检索迅速、灵活数据的应用程序是很困难的。1/9/202531311.2.2文件处理系统3、完整性问题文件中所存储数据的值必须满足某种一致性约束。例如银行帐户的余额永远不会低于某个预定的值--10元。开发者通过在不同的应用程序中加入适当的代码来体现系统中的这些约束。但当新的约束加入系统时,很难通过修改程序来体现这些新的约束。尤其是当约束涉及到不同文件中的多个数据项时,问题就变得更加复杂了。因此,如何表达和实现一致性约束就成为迫在眉睫的问题。1/9/202532321.2.2文件处理系统4、原子性问题计算机系统也常常会发生故障,一旦故障发生并被检测到,数据就应恢复到故障发生前的状态。例如,假设要从A帐户转5000元到B帐户,可是在程序的执行过程中发生了系统故障,很可能从A帐户减去的5000元钱还没来得及存入B帐户,系统就死机了。这就造成了数据的不一致。显然,为了保证数据状态的一致性,这里的借、贷两个操作要么都发生要么都不发生,也就是说,转帐这个操作必须是原子的--它要么全部发生要么根本不发生(具有不可分割性)。1/9/202533331.2.2文件处理系统5、并发访问异常许多系统允许多个用户同时访问数据,在这样的环境中由于并发更新操作相互影响,可能就会导致数据的不一致。假设A帐户中有500元,客户B和客户C几乎同时从A帐户中分别取款50元和100元。假设每个取款操作对应的程序都是读取帐户余额,在其上减去取款的金额,然后将结果写回。如果两次取款的程序并发执行,可能它们读到的余额都是500元,并将分别写回450元和400元,到底是450元还是400元要看哪个程序后写回结果而定,而实际上这两个结果都是错误的。由于数据可能被多个不同的应用程序访问,而这些程序间事先又没有协调管理,因而可能会出现并发访问异常问题。1/9/202534341.2.2文件处理系统6、安全性问题并非系统的所有用户都可以访问所有的数据。例如在银行系统中,银行员工的工资发放人员只需要看到数据文件中有关银行员工的那部分信息,他们绝对不需要访问关于客户帐户的信息。由于应用程序总是即兴加入到系统中来,这样的安全性约束在文件处理系统中难以实现。1/9/202535351.2.3数据库管理系统数据库管理系统的目的就是为了解决上面提到的和未提到的在文件处理系统中存在的问题:数据冗余和不一致、数据访问困难、数据孤立、完整性问题、原子性问题、并发访问异常和安全性问题等等。也正是由于这些问题,导致了数据库管理系统的产生,并且提出了很多新的概念和算法,加速了数据库管理系统的发展。那么到底什么是数据库管理系统呢?1/9/202536361.2.3数据库管理系统数据库管理系统(DatabaseManagementSystem,英文缩写为DBMS)是由一个互相关联的数据的集合和一组用于访问这些数据的程序组成,这个数据集合通常称作数据库(Database,简称为DB)。数据库管理系统有时也通俗地称为数据库系统,因此我们通常所说的数据库系统主要是指DBMS,而不是指存放数据的具体数据库。1/9/202537371.2.4数据视图数据抽象
数据库管理系统的一个主要作用就是隐藏关于数据存储和维护的某些细节,而为用户提供数据在不同层次上的抽象视图,这就是数据抽象,即不同的使用者从不同的角度去观察数据库中的数据所得到的结果。对用户来说,了解数据库中用来表示数据的复杂的数据结构没有太大的必要。数据库管理系统通过如下三个层次的抽象来向用户屏蔽复杂性,简化系统的用户界面。
1、物理层抽象
2、逻辑层抽象
3、视图层(概念层)抽象1/9/202538381.3数据库系统的架构
架构—规范、形式数据库系统的架构包括:数据存储架构数据视图架构数据库应用架构1/9/20253939DBMS物理数据和逻辑数据之间的映射关系1.3数据库系统的架构1.3.1数据存储架构指的是数据库中物理数据和逻辑数据的表示形式、物理数据和逻辑数据之间关系的映射方式。01张三陕西02李四北京03王五上海04f1/9/202540401.3数据库系统的架构1.3.1数据存储架构1、物理数据描述物理数据是指实际存放在存储设备上的数据,其结构指的就是存储方式。位(bit)0~1字节(byte)8位=1字节字(word)8位、16位、24位、32位块(block)存储器上的最小单位(256\512\1024等)卷(volume)设备的标识1/9/202541411.3数据库系统的架构1.3.1数据存储架构2、逻辑数据描述
逻辑数据是指用户或程序员用来操作的数据形式,它是一种抽象概念,是对客观现实世界的反映和记录。其结构指的是组织形式和结构。实体书籍实体属性实体集标识符元组数据项关系键码逻辑数据位字节字块物理数据卷1/9/202542421.3数据库系统的架构1.3.2数据视图架构数据库中的数据,为了满足各种用户的要求,设计了复杂的数据结构。为了给用户提供简单明了的数据界面,系统必须隐藏数据在数据库内部的结构和存储细节。为此,系统提供三个层次屏蔽系统的复杂性,如图所示。
外部层(视图层)概念层内部层(物理视图)1/9/202543431.3数据库系统的架构1.3.3数据库应用架构数据库应用架构就是指数据库应用系统中数据存储、业务处理、界面表示以及网络通信之间的布局和分布。根据目前的应用和发展情况可分为五类:一、单用户数据库应用架构1/9/202544441.3数据库系统的架构1.3.3数据库应用架构二、集中式数据库应用架构主机数据库业务处理终端终端1/9/202545451.3数据库系统的架构1.3.3数据库应用架构三、客户机/服务器应用架构数据库服务器客户机1/9/202546461.3数据库系统的架构1.3.3数据库应用架构四、多层数据库应用架构数据库服务器客户机数据库服务器应用服务器1/9/202547471.3数据库系统的架构1.3.3数据库应用架构四、基于internet应用架构浏览器数据库服务器Web服务器请求HTTPinternet1/9/202548481.4数据库管理系统的组成关系型数据库管理系统组件结构示意图模式修改查询修改查询处理器预编译器编译器解释器存储管理器缓冲区管理器文件管理器数据元数据事务管理器1/9/202549491.4数据库管理系统的组成1.4.3查询处理器部件
查询处理器部件主要由四部分组成,它们分别是:
1、DML编译器
2、嵌入式DML预编译器
3、DDL解释器
4、查询计算引擎1/9/202550501.4数据库管理系统的组成1.4.4存储管理器存储管理器是为存储在数据库中的低层数据与应用程序及向系统提交的查询之间提供接口的程序模块。存储管理器负责与DBMS的文件管理器交互。原始数据通过文件系统存储在磁盘上,文件系统通常由操作系统提供
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025合作协议:会议业务合作服务协议合同书
- 北京科技大学2024研究生招生计划
- 小儿甲状腺癌的健康宣教
- 2025年塔吊租赁合同详细条款
- 2025年廊坊年货运从业资格证考试题库
- 2025年海南从业资格证货运考试试题答案
- 2025民间借款质押合同格式
- 业务知识管理及培训
- 宫颈湿疣的健康宣教
- 2025版无限期劳动合同协议书范本
- YBJ-PS03-2004埋地无压预制混凝土排水圆形管管基及接口
- 碘对比剂的安全管理-PPT
- 完整版老旧小区改造工程施工组织设计方案
- 北京邮电大学2016年自主招生申请报告-(完整)
- 盟史简介12.10.18课件
- 一夜长大【主持人尼格买提个人随笔集】
- 全过程造价咨询服务实施方案
- 2022年安徽省淮北市电焊工电焊工模拟考试(含答案)
- 有限空间作业安全培训
- 神经内科住院医师规范化培训结业实践技能考核指导标准
- GB/T 26081-2022排水工程用球墨铸铁管、管件和附件
评论
0/150
提交评论