数据库系统世界课件

上传人:F****n 文档编号:88156411 上传时间:2019-04-20 格式:PPT 页数:40 大小:182KB
返回 下载 相关 举报
数据库系统世界课件_第1页
第1页 / 共40页
数据库系统世界课件_第2页
第2页 / 共40页
数据库系统世界课件_第3页
第3页 / 共40页
数据库系统世界课件_第4页
第4页 / 共40页
数据库系统世界课件_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《数据库系统世界课件》由会员分享,可在线阅读,更多相关《数据库系统世界课件(40页珍藏版)》请在金锄头文库上搜索。

1、第1章 数据库系统世界,主讲人:骆炎民 Email:,2,基本概念,数据 (Data) 能输入计算机并被计算机程序识别处理的信息集合 数据处理 对各种数据进行收集、存储、加工和传播的一系列活动的总和。 数据管理 对数据进行分类、组织、编码、存储。检索和维护 它是数据处理的中心问题,3,基本概念(续),数据库 (Database) 本质上是信息的集合 一般而言,数据库是指在数据库管理系统管理和控制之下,存放在存储介质上的数据集合。 数据库管理系统(DataBase Management System-DBMS) 数据库系统中对数据进行统一管理控制的软件系统,4,DBMS的功能,(1) 数据库定义

2、功能 提供数据定义语言(DDL); 定义数据库中的数据对象 (2) 数据库操纵功能 提供数据操纵语言(DML); 操纵数据实现对数据库的基本操作(查询、插入、删除和修改)。 (3) 数据库的运行管理 保证数据的安全性、完整性;多用户对数据的并发使用;发生故障后的系统恢复,5,DBMS的功能(续),(4) 数据库的建立和维护功能(实用程序) 数据库数据批量装载 数据库转储 介质故障恢复 数据库的重组织 性能监视等,6,数据管理技术的发展历程,在应用需求的推动下,在计算机硬件、软件发展的基础上,数据管理技术经历了三个阶段:,(1) 人工管理阶段 (2) 文件系统阶段 (3) 数据库系统阶段,7,(

3、1) 人工管理阶段,时间:20世纪50年代中期以前 应用背景:科学计算 硬件背景:无直接存取存储设备 软件背景:无操作系统 处理方式:批处理,8,人工管理特点,(1)数据的管理者:用户(程序员) (2)数据面向的对象:某个应用程序 (3)数据共享程度:数据不共享,冗余度极大 (4)数据的独立性:不独立,完全依赖于程序 (5)数据的结构化:无结构 (6)数据控制能力:应用程序控制, 数据不保存,数据是面向应用的,一组数据只能对应一个程序。 当多个应用程序涉及某些相同的数据时,由于必须各自定义,无法互相利用、互相参照,因此程序与程序之间有大量的冗余数据。,数据的逻辑结构或物理结构发生变化后,必须对

4、应用程序做相应的修改,这就进一步加重了程序员的负担。,应用程序中不仅要规定数据的逻辑结构,而且要设计物理结构,包括存储结构、存取方法、输入方式等。 数据只在计算某一课题时输入,用完就撤走,不保存,9,(2) 文件系统阶段,时间:20世纪50年代中期 应用背景:科学计算、数据管理 硬件背景:磁盘、磁鼓 软件背景:文件系统 处理方式:联机实时处理、批处理,10,文件系统的缺陷,(1)数据的管理者:文件系统 (2)数据面向的对象:基本还是面向应用程序 (3)数据共享程度:共享性差,冗余度大 (4)数据的独立性:有一定独立性, 但独立性差 (5)数据的结构化:记录内有结构, 整体无结构 (6)数据控制

5、能力:应用程序控制 数据可长期保存,由专门的软件即文件系统进行数据管理,文件系统把数据组织成相互独立的数据文件,利用“按文件名访问,按记录进行存取”的管理技术,可以对文件进行修改、插入和删除的操作。,在文件系统中,一个文件基本上对应于一个应用程序,即文件仍然是面向应用的。当不同的应用程序具有部分相同的数据时,也必须建立各自的文件,而不能共享相同的数据,因此数据的冗余度大,浪费存储空间。同时由于相同数据的重复存储、各自管理,容易造成数据的不一致性,给数据的修改和维护带来了困难,程序和数据间由文件系统提供存取方法进行转换,使应用程序与数据间有了一定的独立性,程序员可不必过多考虑物理细节,将精力集中

6、于算法。且数据在存储上的改变不一定反映在程序上,节省了维护程序的工作量。,文件为某一特定应用服务,其逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不易扩充。一旦数据逻辑结构改变,必须修改应用程序,修改文件结构的定义。应用程序的改变,也将引起文件的数据结构的改变。因此数据与程序之间仍缺乏独立性。,11,(3) 数据库系统阶段,时间:20世纪60年代末70年代初以来 应用背景:大规模管理 硬件背景:大容量磁盘 软件背景:数据库管理系统 处理方式:联机实时处理, 分布式处理, 批处理,12,数据库系统的特点,(1)数据的管理者:数据库管理系统 (2)数据面向的

7、对象:整个组织、系统(多个应用) (3)数据共享程度:共享性高,冗余度低,易扩充 (4)数据的独立性:高度的物理独立性 一定的逻辑独立性 (5)数据的结构化:整体结构化,用数据模型描述 (6)数据控制能力:由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力,在数据库系统中不仅要考虑某个应用的数据结构,还要考虑整个组织的数据结构。 例如:一个学校的信息管理系统中不仅要考虑学生的人事管理,还要考虑学籍管理、选课管理,同时还要考虑教员的人事管理、科研管理等应用,数据库系统从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,因此数据可以被多个用户、多个应用共享使用。数据共享可以大大

8、减少数据冗余,节约存储空间;还能够避免数据之间的不相容性与不一致性。,而且由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充,可以适应各种用户的要求。可以取整体数据的各种子集用于不同的应用系统,当应用需求改变或增加时,只要重新选取不同的子集或加上一部分数据便可以满足新的需求。,物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。也就是说,数据在磁盘上的数据库中怎样存储是由DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。,逻辑独立性是指用

9、户应用程序与数据库逻辑结构是相互独立的,即数据逻辑结构改变了,用户程序可以不变。 -数据独立性是由DBMS的二级映象功能来保证的,将在下面讨论。,数据库系统实现整体数据的结构化,是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 在文件系统中,尽管其记录内部己有了某些结构,但记录之间没有联系。而数据库系统在描述数据时不仅要描述数据本身,还要描述数据之间的联系。而且存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项、一个记录或一组记录。而在文件系统中,数据的最小存单位是记录粒度不能细到数据项。,13,数据库系统体系结构,三级模式/二级映像,14,三级模式,外模式 (子模

10、式/用户模式) 局部逻辑结构 为特定的应用设计、面向应用的局部视图 模式(概念模式/逻辑模式) 全局逻辑结构 综合考虑各项应用组织成的整体数据结构,面向整个系统;供多项应用共享。 内模式(存储模式) 存储结构 全体数据库数据的内部表示或者低层描述,用来定义数据的存储方式和物理结构。,15,二级映像与数据独立性,外模式/模式映像(逻辑独立性) 定义某个外模式和模式之间的对应关系。 当模式改变时,外模式/模式映像要作相应的改变,以保持外模式不变。(除非模式结构的变化使得子模式中的某些数据无法再从数据库中导出) 模式/内模式映像(物理独立性) 定义数据的逻辑结构和存储结构之间的对应关系 当数据库的存

11、储结构改变时,可相应修改模式/内模式映像,从而使模式保持不变。,由此提供数据的逻辑独立性 局部逻辑结构独立于全局逻辑结构,由此提供数据的物理独立性 逻辑结构独立于物理结构,16,主要内容,1.1 数据库系统的发展 1.2 数据库管理系统概述 1.3 本书概述,17,数据库管理系统的组成,18,数据库管理系统的组成,数据定义语言命令-修改模式/元数据(红色轨迹) 查询处理过程(绿色轨迹) 事务处理(黄色轨迹):ACID(Atomic、 Consistent、 Isolated、Durable)。记日志、并发控制与消除死锁。,19,1. 数据与元数据,数据:数据库本身的内容 元数据(metadat

12、a) 描述有关数据结构、数据模式以及语义限制等的信息,如表结构信息。 另一种说法:关于数据的数据,数据与元数据外:统计数据 索引 日志记录,20,数据库管理系统的组成,21,2. DBMS的输入,由应用程序或管理工具输入 查询:查询要求 更新:增、删、改的要求 模式更新:如修改表结构 要求有一定权限,22,数据库管理系统的组成,23,3. 查询处理器-1,(1)查询编译器(query compiler) 把查询转换为查询计划。查询计划是在数据上的操作序列;通常用关系代数运算表达。 由以下3个模块组成: 查询分析器: 从查询的文本结构中构造一个查询树 查询预处理器: 对查询做语义检查,并将查询语

13、法树转换成表示初始查询计划的关系代数操作符树。 查询优化器:将查询初始计划转换成在实际数据上最高效地执行的操作序列。,24,3. 查询处理器-2,(2) 执行引擎 (execution engine) 负责执行选定的查询计划的每一步 与DBMS其他组件直接或经缓冲区进行交互 为了操作数据,执行引擎必须: 从数据库中将数据取到缓冲区; 与调度器交互避免存取已加锁的数据; 与日志管理器交互以确保对数据库的更新记入日志,25,数据库管理系统的组成,26,4.存储器与缓冲区管理程序,存储器管理器(storage manager) 负责控制数据在磁盘上的定位,以及数据在磁盘与主存间的移动。 跟踪磁盘上的

14、文件位置,根据请求从缓冲区管理器中获取该文件的一个(多个)磁盘块(400016000B) 为提高效率,DBMS 通常直接控制磁盘管理器,27,4.存储器与缓冲区管理程序(续),缓冲区管理器 负责把可用主存分割成缓冲区(buffer) 缓冲区是包含若干个页面的区域,可传输磁盘块。 所有需要从磁盘获取信息的DBMS组件,可直接地或通过执行引擎间接地同缓冲区以及缓冲区管理器进行交互。,28,数据库管理系统的组成,29,5.事务管理器,事务的概念 事务是一个或多个必须被原子地执行的数据库操作的集合。 例:银行转帐 事务管理器(Transaction Processor): (1)日志和恢复管理器:负责

15、事务的持久性 (2)并发控制管理器:保证事务的原子性、独立性,30,事务的ACID性质,A:原子性 事务中的操作或者都执行或者都不执行。 C:一致性 事务执行前后数据库满足所有约定的一致性条件。 I :独立性 两个事务同时执行不相互干扰。 D:持久性 事务完成后即使系统故障,事务的结果长期保存。,例如:账户余额不能是负数,31,(1) 日志与恢复管理器,数据库的每一个变化记录在日志中,无论何时,系统出现故障或“崩溃”,恢复管理器都可以通过检查日志中的修改记录,把数据库恢复到某一个一致状态。 日志管理器先把日志写入缓冲区,然后与缓冲区管理器协商以确保缓冲区中的数据在适当的时候写入磁盘,32,(2

16、) 并发控制管理器,也称为调度器(scheduler)可以令并行执行的多个事务中的操作,执行效果等同于事务串行执行的某个次序,以此保证一致性。 通过封锁机制实现并发控制,对数据库中的某些数据片断加锁,避免冲突操作带来的不利影响; 锁通常保存在主存的锁表中。调度器阻止执行引擎存取加锁数据。,33,消除死锁,死锁 当事务通过调度器授权锁竞争资源时,它们可能会陷入一种状态:由于每个事务需要的资源都被另一个事务占有,没有一个事务能够继续执行。 消除死锁 事务管理器的任务之一 删除(“回滚”或“终止”)一个或多个事务,以便其他事务可以继续执行,34,未来数据库系统,面向对象DBMS: 面向对象编程是更好的程序结构工具 提供丰富的数据类型 面向对象的一些新特性 约束和触发程序数据库中的主动元素 多媒体数据无论是检索方法还是存储管理方法都必须做改进 数据集成数据仓库和数据挖掘技术,35,数据库系统的发展(续2),数据库技术的最新发展:数据库三大国际会议: VLDB(International Co

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号