四章据库管理系统引论

上传人:汽*** 文档编号:567690133 上传时间:2024-07-22 格式:PPT 页数:29 大小:124.51KB
返回 下载 相关 举报
四章据库管理系统引论_第1页
第1页 / 共29页
四章据库管理系统引论_第2页
第2页 / 共29页
四章据库管理系统引论_第3页
第3页 / 共29页
四章据库管理系统引论_第4页
第4页 / 共29页
四章据库管理系统引论_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《四章据库管理系统引论》由会员分享,可在线阅读,更多相关《四章据库管理系统引论(29页珍藏版)》请在金锄头文库上搜索。

1、第四章第四章 数据库管理系统引论数据库管理系统引论 4 4.1 DBMS.1 DBMS结构简介结构简介 数据库管理系统(数据库管理系统(数据库管理系统(数据库管理系统(DBMSDBMSDBMSDBMS)是数据库系统的核心,是数据库系统的核心,是数据库系统的核心,是数据库系统的核心,它对数据库系统的功能和性能有决定性影响。它对数据库系统的功能和性能有决定性影响。它对数据库系统的功能和性能有决定性影响。它对数据库系统的功能和性能有决定性影响。 DBMS DBMS DBMS DBMS最基本的功能最基本的功能最基本的功能最基本的功能是正确、安全、可靠地执行是正确、安全、可靠地执行是正确、安全、可靠地执

2、行是正确、安全、可靠地执行数据库语言语句。图数据库语言语句。图数据库语言语句。图数据库语言语句。图4-14-14-14-1表示一个解释执行的关系表示一个解释执行的关系表示一个解释执行的关系表示一个解释执行的关系DBMSDBMSDBMSDBMS的结构,可以从中了解的结构,可以从中了解的结构,可以从中了解的结构,可以从中了解DBMSDBMSDBMSDBMS的一般工作原理的一般工作原理的一般工作原理的一般工作原理和主要组成部分。和主要组成部分。和主要组成部分。和主要组成部分。 与高级程序设计语言一样,与高级程序设计语言一样,与高级程序设计语言一样,与高级程序设计语言一样,DBMSDBMSDBMSDB

3、MS有两种实现方有两种实现方有两种实现方有两种实现方法法法法编译和解释。编译和解释。编译和解释。编译和解释。 图图图图41 41 41 41 DBMSDBMSDBMSDBMS结构结构结构结构 4 4.2 .2 事务(事务(transactiontransaction)n事务是事务是DBMSDBMS的执行单位,由有限的数据的执行单位,由有限的数据库操作序列组成库操作序列组成, ,一般要求事务具备下列一般要求事务具备下列性质:性质:1.1.执行的原子性(执行的原子性(A Atomictomic) 事务执行时应遵守事务执行时应遵守“要么不做,要么全做要么不做,要么全做” ” (nothing or

4、allnothing or all)的原则。)的原则。2.2.功能上的一致性功能上的一致性(Consistency) 事务的作用应使数据库由一个事务的作用应使数据库由一个一致状态一致状态转转变到另一个一致状态。变到另一个一致状态。3.3.彼此的隔离性彼此的隔离性(Isolation) 如果多个事务并发执行,应像各个事务独如果多个事务并发执行,应像各个事务独立执行一样。立执行一样。由由“并发控制并发控制”保证。保证。4.4.作用的持久性作用的持久性(Durability) 一个成功执行的事务对一个成功执行的事务对DB的影响应是持的影响应是持久的,即使久的,即使DB因故障受到破坏,也应能恢复。因故

5、障受到破坏,也应能恢复。这四个性质称为这四个性质称为事务的事务的ACID准则准则。 下面是一个事务的例子,它将款项由下面是一个事务的例子,它将款项由A账账户拨给户拨给B账户。账户。示例示例BEGIN TRAN read A AAS if A 0 then /* A款不足*/ begin display “A款不足” ROLLBACK /*出口1*/ end else begin BB+S display “拨款完成” COMMIT /*出口2*/ end ROLLBACK ROLLBACK 撤销事务的影响,撤销事务的影响,相当于相当于“do nothingdo nothing”COMMIT C

6、OMMIT 提交,相当于提交,相当于“do alldo all”。只有在只有在COMMITCOMMIT之后,事务对数据库之后,事务对数据库产生的变化才对其它事务开放。产生的变化才对其它事务开放。(为什么?)(为什么?) n事务的出口:事务的出口:commit commit 或或rollbackrollbackn只有在执行只有在执行commitcommit之后,事务对数据库所产生之后,事务对数据库所产生的变化才对其他事务开放。的变化才对其他事务开放。n执行执行commitcommit命令时,要封闭中断,以防处理中命令时,要封闭中断,以防处理中断时发生故障断时发生故障COMMIT中断处理中断发生故

7、障4 4.3 DBMS.3 DBMS的进程结构的进程结构nDBMSDBMS进程结构的划分主要着眼于结构合理和性进程结构的划分主要着眼于结构合理和性能提高。能提高。n应用进程,系统进程(可重入)应用进程,系统进程(可重入)应用1系统应用2系统不同重复不划分: 目前,多数目前,多数目前,多数目前,多数DBMSDBMSDBMSDBMS把主要功能组成一个把主要功能组成一个把主要功能组成一个把主要功能组成一个DBMSDBMSDBMSDBMS核心进程核心进程核心进程核心进程,也有些,也有些,也有些,也有些DBMSDBMSDBMSDBMS除了核心进程外,还把除了核心进程外,还把除了核心进程外,还把除了核心进

8、程外,还把一些可以一些可以一些可以一些可以“缓办缓办缓办缓办”的公共操作组成几个后台服的公共操作组成几个后台服的公共操作组成几个后台服的公共操作组成几个后台服务进程。务进程。务进程。务进程。 例如预读取可能用到的物理块,延迟写入例如预读取可能用到的物理块,延迟写入例如预读取可能用到的物理块,延迟写入例如预读取可能用到的物理块,延迟写入缓存中的内容,网络服务管理,撤销事务,清缓存中的内容,网络服务管理,撤销事务,清缓存中的内容,网络服务管理,撤销事务,清缓存中的内容,网络服务管理,撤销事务,清除异常结束的除异常结束的除异常结束的除异常结束的DBMSDBMSDBMSDBMS进程等。这些进程在进程等

9、。这些进程在进程等。这些进程在进程等。这些进程在DBMSDBMSDBMSDBMS启启启启动时就建立,为各个事务服务。动时就建立,为各个事务服务。动时就建立,为各个事务服务。动时就建立,为各个事务服务。1.1.1.1.一个应用进程对应一个一个应用进程对应一个一个应用进程对应一个一个应用进程对应一个DBMSDBMSDBMSDBMS核心进程核心进程核心进程核心进程 下面主要考虑下面主要考虑DBMSDBMS核心进程的结构方案:核心进程的结构方案:缺点:缺点:缺点:缺点:(1).(1).(1).(1).进程的创建、撤销、通信和切换的开销大。进程的创建、撤销、通信和切换的开销大。进程的创建、撤销、通信和切

10、换的开销大。进程的创建、撤销、通信和切换的开销大。(2).(2).(2).(2).并发事务的增加,进程数激增,内存空间并发事务的增加,进程数激增,内存空间并发事务的增加,进程数激增,内存空间并发事务的增加,进程数激增,内存空间有限,性能下降。有限,性能下降。有限,性能下降。有限,性能下降。(3).(3).(3).(3).不利于事务共享内存空间。不利于事务共享内存空间。不利于事务共享内存空间。不利于事务共享内存空间。优点:实现容易优点:实现容易优点:实现容易优点:实现容易2.2.2.2.单进程多线程单进程多线程单进程多线程单进程多线程DBMSDBMSDBMSDBMS进程结构进程结构进程结构进程结

11、构 线程线程是现代是现代OSOS引入的概念。引入的概念。p 以线程为程序并发执行的单位;以线程为程序并发执行的单位;p 一个进程中可创建多个可以相互切换的线程;一个进程中可创建多个可以相互切换的线程;p 这些线程中至少有一个处于就绪状态,进程才处这些线程中至少有一个处于就绪状态,进程才处于就绪状态;于就绪状态;p 进程运行时,其中必有一个线程运行;进程运行时,其中必有一个线程运行;p 同一进程所属的线程共享进程占用的资源,属于同一进程所属的线程共享进程占用的资源,属于线程本身的专用资源很少,描述线程的状态也比进线程本身的专用资源很少,描述线程的状态也比进程要少,因此,线程所需资源比进程少;程要

12、少,因此,线程所需资源比进程少;p 线程的切换开销和线程间的通信开销小。线程的切换开销和线程间的通信开销小。 单进程多线程的单进程多线程的DBMSDBMS中,系统中,系统只创建一个只创建一个DBMSDBMS进程进程(用户接口仍然是进程)。该进程中有(用户接口仍然是进程)。该进程中有常驻的公共服务线程和应用户要求而创建的用户常驻的公共服务线程和应用户要求而创建的用户线程。线程。 在多处理机系统中,引入线程,增强了进程在多处理机系统中,引入线程,增强了进程的可并发程度。的可并发程度。 DBMS的并发执行从进程级改为线程级。的并发执行从进程级改为线程级。 尽管很多现代尽管很多现代OS的核心具有线程管

13、理的功的核心具有线程管理的功能,但对能,但对DBMS来说,还是在来说,还是在DBMS进程(进程(相相对于对于OS,是用户进程,是用户进程)中实现线程为宜。理由)中实现线程为宜。理由如下:如下:(1)可以按照可以按照DBMS的需要确定线程调度策略;的需要确定线程调度策略;(2)线程的切换在用户态,不必转入操作系统的线程的切换在用户态,不必转入操作系统的核心态,切换开销小;核心态,切换开销小;(3)可以在不支持)可以在不支持线程的操作系统上运行,减线程的操作系统上运行,减少对操作系统的依赖,有利于提高操作系统的可少对操作系统的依赖,有利于提高操作系统的可移植性。移植性。 由由由由DBMSDBMSD

14、BMSDBMS管理线程,需要管理线程,需要管理线程,需要管理线程,需要OSOSOSOS提供如下支持提供如下支持提供如下支持提供如下支持: : : : (1 1 1 1). . . .提供提供提供提供非阻塞非阻塞非阻塞非阻塞I/OI/OI/OI/O(NonblockingNonblockingNonblockingNonblocking I/O I/O I/O I/O)和)和)和)和异步异步异步异步I/OI/OI/OI/O(asynchronous I/Oasynchronous I/Oasynchronous I/Oasynchronous I/O)功能;)功能;)功能;)功能; (2 2 2

15、 2). . . .支持支持支持支持“公平公平公平公平”调度调度调度调度(fair schedulefair schedulefair schedulefair schedule);););); 即不把具有多线程的即不把具有多线程的即不把具有多线程的即不把具有多线程的DBMSDBMSDBMSDBMS进程,与其它进程进程,与其它进程进程,与其它进程进程,与其它进程等同看待,应区分轻重。等同看待,应区分轻重。等同看待,应区分轻重。等同看待,应区分轻重。 4 4.4 DBMS.4 DBMS的系统结构的系统结构1.1.分时系统环境下的分时系统环境下的集中式集中式数据库系统结构数据库系统结构 应用的要求

16、以及软硬件条件决定了数据库系统以应用的要求以及软硬件条件决定了数据库系统以应用的要求以及软硬件条件决定了数据库系统以应用的要求以及软硬件条件决定了数据库系统以集中为宜,数据库建立在本单位的主要计算机上,集中为宜,数据库建立在本单位的主要计算机上,集中为宜,数据库建立在本单位的主要计算机上,集中为宜,数据库建立在本单位的主要计算机上,用户通过终端或远距离终端分时访问。用户通过终端或远距离终端分时访问。用户通过终端或远距离终端分时访问。用户通过终端或远距离终端分时访问。 数据及其管理都是集中的,数据库系统的所有功数据及其管理都是集中的,数据库系统的所有功数据及其管理都是集中的,数据库系统的所有功数

17、据及其管理都是集中的,数据库系统的所有功能,从用户接口到能,从用户接口到能,从用户接口到能,从用户接口到DBMSDBMSDBMSDBMS核心都集中在核心都集中在核心都集中在核心都集中在DBMSDBMSDBMSDBMS所在的计所在的计所在的计所在的计算机上。算机上。算机上。算机上。 2. 2.网络环境下的网络环境下的客户客户/ /服务器服务器结构结构 20 20世纪世纪7070年代:微机的出现和迅速发展;计算机网年代:微机的出现和迅速发展;计算机网络的发展和广泛应用,改变了计算机应用系统的格局。络的发展和广泛应用,改变了计算机应用系统的格局。 客户机客户机/ /服务器是一种特殊的分布式处理系统。

18、其中,服务器是一种特殊的分布式处理系统。其中,有一至多台称为客户机的计算机和一至多台称为服务器有一至多台称为客户机的计算机和一至多台称为服务器的计算机通过网络联接。的计算机通过网络联接。 可以将可以将DBMSDBMS的核心部分放在服务器中,而客户机处的核心部分放在服务器中,而客户机处理数据库的接口部分。客户机也可以有自己的局部理数据库的接口部分。客户机也可以有自己的局部DBMSDBMS。 客户机面向用户,接受任务,并将任务中需要由服客户机面向用户,接受任务,并将任务中需要由服客户机面向用户,接受任务,并将任务中需要由服客户机面向用户,接受任务,并将任务中需要由服务器完成的部分委托服务器执行。而

19、服务器只接受客务器完成的部分委托服务器执行。而服务器只接受客务器完成的部分委托服务器执行。而服务器只接受客务器完成的部分委托服务器执行。而服务器只接受客户机的委托,完成特定的任务,例如数据库服务。因户机的委托,完成特定的任务,例如数据库服务。因户机的委托,完成特定的任务,例如数据库服务。因户机的委托,完成特定的任务,例如数据库服务。因此,此,此,此,处理是分布的处理是分布的处理是分布的处理是分布的,数据却是集中的,仍属于集中式,数据却是集中的,仍属于集中式,数据却是集中的,仍属于集中式,数据却是集中的,仍属于集中式数据库系统。数据库系统。数据库系统。数据库系统。 问题问题问题问题1 1 1 1

20、: 网络环境下的打印服务器、文件服务器属于客户网络环境下的打印服务器、文件服务器属于客户网络环境下的打印服务器、文件服务器属于客户网络环境下的打印服务器、文件服务器属于客户/ / / /服务器结构吗?服务器结构吗?服务器结构吗?服务器结构吗? 不属于,打印服务器、文件服务器的处理仍然是不属于,打印服务器、文件服务器的处理仍然是不属于,打印服务器、文件服务器的处理仍然是不属于,打印服务器、文件服务器的处理仍然是集中的。集中的。集中的。集中的。问题问题问题问题2 2 2 2: 如果有多个数据库服务器呢?还属于集中式数据库如果有多个数据库服务器呢?还属于集中式数据库如果有多个数据库服务器呢?还属于集

21、中式数据库如果有多个数据库服务器呢?还属于集中式数据库系统吗?系统吗?系统吗?系统吗? 即使系统中有多个数据库服务器,也只是多个集即使系统中有多个数据库服务器,也只是多个集即使系统中有多个数据库服务器,也只是多个集即使系统中有多个数据库服务器,也只是多个集中的数据库,这些库中的数据彼此独立,其联系只能中的数据库,这些库中的数据彼此独立,其联系只能中的数据库,这些库中的数据彼此独立,其联系只能中的数据库,这些库中的数据彼此独立,其联系只能由应用程序自己解决。由应用程序自己解决。由应用程序自己解决。由应用程序自己解决。 客户器与服务器划分界面的一般原则是:客户器与服务器划分界面的一般原则是:客户器

22、与服务器划分界面的一般原则是:客户器与服务器划分界面的一般原则是:(1 1)客户提供用户接口、执行应用程序,对服务器提)客户提供用户接口、执行应用程序,对服务器提出服务请求;出服务请求;(2 2)服务器只完成客户器委托的公共服务;)服务器只完成客户器委托的公共服务;(3 3)服务器与客户器间的数据交换量要尽可能的少;)服务器与客户器间的数据交换量要尽可能的少;例如,例如,MS SQL ServerMS SQL Server,OracleOracle三层结构:三层结构:表示层表示层应用层应用层DB3.3.物理上分布、逻辑上集中的物理上分布、逻辑上集中的分布式分布式数据库结构数据库结构 数据共享和

23、数据集中管理是数据库的主要特征。随数据共享和数据集中管理是数据库的主要特征。随数据共享和数据集中管理是数据库的主要特征。随数据共享和数据集中管理是数据库的主要特征。随着单位规模的扩大和地理上的分散,集中式数据库系统着单位规模的扩大和地理上的分散,集中式数据库系统着单位规模的扩大和地理上的分散,集中式数据库系统着单位规模的扩大和地理上的分散,集中式数据库系统有如下缺点:有如下缺点:有如下缺点:有如下缺点: pp 通信开销大通信开销大通信开销大通信开销大 pp 性能差,瓶颈性能差,瓶颈性能差,瓶颈性能差,瓶颈pp 可用性差可用性差可用性差可用性差 由于存在这些缺点,从由于存在这些缺点,从由于存在这

24、些缺点,从由于存在这些缺点,从20202020世纪世纪世纪世纪70707070年代后期,开始了年代后期,开始了年代后期,开始了年代后期,开始了分布式数据库系统的研究。分布式数据库系统的研究。分布式数据库系统的研究。分布式数据库系统的研究。pp 可扩充性差可扩充性差可扩充性差可扩充性差pp 难以管理难以管理难以管理难以管理 物理上分布、逻辑上集中的分布式数据库结构的物理上分布、逻辑上集中的分布式数据库结构的物理上分布、逻辑上集中的分布式数据库结构的物理上分布、逻辑上集中的分布式数据库结构的思想是:把全局数据模式按数据的来源和用途,合理思想是:把全局数据模式按数据的来源和用途,合理思想是:把全局数

25、据模式按数据的来源和用途,合理思想是:把全局数据模式按数据的来源和用途,合理分布在系统的多个节点上,使大部分的数据可以分布在系统的多个节点上,使大部分的数据可以分布在系统的多个节点上,使大部分的数据可以分布在系统的多个节点上,使大部分的数据可以就近就近就近就近存取存取存取存取。 逻辑上,用户看到的是一个数据模式为全局数据逻辑上,用户看到的是一个数据模式为全局数据逻辑上,用户看到的是一个数据模式为全局数据逻辑上,用户看到的是一个数据模式为全局数据模式的集中式数据库。模式的集中式数据库。模式的集中式数据库。模式的集中式数据库。 缺点:缺点:缺点:缺点:全局数据模式很难设计、管理、扩充和修改全局数据

26、模式很难设计、管理、扩充和修改全局数据模式很难设计、管理、扩充和修改全局数据模式很难设计、管理、扩充和修改(类似高度集中的计划经济难以管理类似高度集中的计划经济难以管理类似高度集中的计划经济难以管理类似高度集中的计划经济难以管理)。)。)。)。4.4.物理上分布、逻辑上分布的分布式数据库结构物理上分布、逻辑上分布的分布式数据库结构 (事实上,对大范围统一的逻辑几乎不可能)(事实上,对大范围统一的逻辑几乎不可能)(事实上,对大范围统一的逻辑几乎不可能)(事实上,对大范围统一的逻辑几乎不可能) 特点:特点:特点:特点:(1 1 1 1)节点自治)节点自治)节点自治)节点自治(2 2 2 2)没有全

27、局数据模式)没有全局数据模式)没有全局数据模式)没有全局数据模式 每个节点看到的数据模式:每个节点看到的数据模式:每个节点看到的数据模式:每个节点看到的数据模式:(1 1 1 1)本节点的数据模式)本节点的数据模式)本节点的数据模式)本节点的数据模式(2 2 2 2)供本节点共享的其它节点上有关的数据模式)供本节点共享的其它节点上有关的数据模式)供本节点共享的其它节点上有关的数据模式)供本节点共享的其它节点上有关的数据模式 没有全局数据模式,节点数据模式的修改甚至节点没有全局数据模式,节点数据模式的修改甚至节点没有全局数据模式,节点数据模式的修改甚至节点没有全局数据模式,节点数据模式的修改甚至

28、节点的加入、撤离的加入、撤离的加入、撤离的加入、撤离 ,仅仅影响有关的节点。,仅仅影响有关的节点。,仅仅影响有关的节点。,仅仅影响有关的节点。 这种分布式数据库系统又称为这种分布式数据库系统又称为这种分布式数据库系统又称为这种分布式数据库系统又称为“ “联邦式数据库系统联邦式数据库系统联邦式数据库系统联邦式数据库系统” ”(federated distributed database systemfederated distributed database systemfederated distributed database systemfederated distributed data

29、base system)。)。)。)。4 4.5 .5 数据目录数据目录n n数据目录(数据目录(数据目录(数据目录(catalogcatalogcatalogcatalog)存放一组关于数据的数存放一组关于数据的数存放一组关于数据的数存放一组关于数据的数据(描述数据模式的数据),也叫元数据据(描述数据模式的数据),也叫元数据据(描述数据模式的数据),也叫元数据据(描述数据模式的数据),也叫元数据(meta-datameta-datameta-datameta-data)。)。)。)。n nDBMSDBMSDBMSDBMS的任务是管理大量的、共享的、持久的的任务是管理大量的、共享的、持久的的任

30、务是管理大量的、共享的、持久的的任务是管理大量的、共享的、持久的数据,有关这些数据的描述需长期保存,一数据,有关这些数据的描述需长期保存,一数据,有关这些数据的描述需长期保存,一数据,有关这些数据的描述需长期保存,一般把这些元数据组成若干表,即数据目录。般把这些元数据组成若干表,即数据目录。般把这些元数据组成若干表,即数据目录。般把这些元数据组成若干表,即数据目录。 数据目录中一般包含下列表:数据目录中一般包含下列表: SYSTAB SYSTAB、SYSCOLSYSCOL、SYSIDXSYSIDX、SYSVIEWSYSVIEW、SYSVWATRSYSVWATRn n 数据目录既是数据,又不同于

31、一般数据,数据目录既是数据,又不同于一般数据,数据目录既是数据,又不同于一般数据,数据目录既是数据,又不同于一般数据, 数据目录也是表,可供查询,主要为数据目录也是表,可供查询,主要为数据目录也是表,可供查询,主要为数据目录也是表,可供查询,主要为DBMSDBMSDBMSDBMS服服服服务,数据目录本身的定义和描述也包含在数据目务,数据目录本身的定义和描述也包含在数据目务,数据目录本身的定义和描述也包含在数据目务,数据目录本身的定义和描述也包含在数据目录中。数据目录只能由系统定义,为系统所有。录中。数据目录只能由系统定义,为系统所有。录中。数据目录只能由系统定义,为系统所有。录中。数据目录只能

32、由系统定义,为系统所有。在初始化时,由系统自动生成(递归初始,类比在初始化时,由系统自动生成(递归初始,类比在初始化时,由系统自动生成(递归初始,类比在初始化时,由系统自动生成(递归初始,类比编译的符号表)编译的符号表)编译的符号表)编译的符号表)元数据可以分为元数据可以分为元数据可以分为元数据可以分为2 2 2 2类:类:类:类:(1 1 1 1)相对稳定:基表、视图和索引的定义;)相对稳定:基表、视图和索引的定义;)相对稳定:基表、视图和索引的定义;)相对稳定:基表、视图和索引的定义;(2 2 2 2)经常变化:数据库状态的统计,例如,元组个)经常变化:数据库状态的统计,例如,元组个)经常

33、变化:数据库状态的统计,例如,元组个)经常变化:数据库状态的统计,例如,元组个数、现有不同属性值的个数等数、现有不同属性值的个数等数、现有不同属性值的个数等数、现有不同属性值的个数等主要用于查询优化,主要用于查询优化,主要用于查询优化,主要用于查询优化,不必太准,可以定期更新。不必太准,可以定期更新。不必太准,可以定期更新。不必太准,可以定期更新。 数据目录是影响系统全局的以读为主的数据,对系数据目录是影响系统全局的以读为主的数据,对系数据目录是影响系统全局的以读为主的数据,对系数据目录是影响系统全局的以读为主的数据,对系统的效率影响很大。统的效率影响很大。统的效率影响很大。统的效率影响很大。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

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