- 2
- 0
- 约3.49千字
- 约 28页
- 2022-11-02 发布于上海
- 举报
数据库管理系统引论会计学第1页/共28页 图4—1 DBMS结构第2页/共28页 4.2 事务(transaction)事务是DBMS的执行单位,由有限的数据库操作序列组成,一般要求事务具备下列性质:1.执行的原子性(Atomic) 事务执行时应遵守“要么不做,要么全做” (nothing or all)的原则。第3页/共28页2.功能上的一致性(Consistency) 事务的作用应使数据库由一个一致状态转变到另一个一致状态。3.彼此的隔离性(Isolation) 如果多个事务并发执行,应像各个事务独立执行一样。——由“并发控制”保证。第4页/共28页4.作用的持久性(Durability) 一个成功执行的事务对DB的影响应是持久的,即使DB因故障受到破坏,也应能恢复。这四个性质称为事务的ACID准则。 下面是一个事务的例子,它将款项由A账户拨给B账户。示例第5页/共28页BEGIN TRAN read A A?A–S if A 0 then/* A款不足*/ begin display “A款不足” ROLLBACK /*出口1*/ end else begin B?B+S display “拨款完成” COMMIT/*出口2*/ endROLLBACK 撤销事务的影响,相当于“do nothing”COMMIT 提交,相当于“do all”。只有在COMMIT之后,事务对数据库产生的变化才对其它事务开放。(为什么?) 第6页/共28页事务的出口:commit 或rollback只有在执行commit之后,事务对数据库所产生的变化才对其他事务开放。执行commit命令时,要封闭中断,以防处理中断时发生故障COMMIT处理中断中断发生故障4.3 DBMS的进程结构第7页/共28页DBMS进程结构的划分主要着眼于结构合理和性能提高。应用进程,系统进程(可重入)不划分:不同应用1应用2系统系统重复第8页/共28页 目前,多数DBMS把主要功能组成一个DBMS核心进程,也有些DBMS除了核心进程外,还把一些可以“缓办”的公共操作组成几个后台服务进程。 例如预读取可能用到的物理块,延迟写入缓存中的内容,网络服务管理,撤销事务,清除异常结束的DBMS进程等。这些进程在DBMS启动时就建立,为各个事务服务。第9页/共28页下面主要考虑DBMS核心进程的结构方案:1.一个应用进程对应一个DBMS核心进程 优点:实现容易缺点:(1).进程的创建、撤销、通信和切换的开销大。(2).并发事务的增加,进程数激增,内存空间有限,性能下降。(3).不利于事务共享内存空间。第10页/共28页2.单进程多线程DBMS进程结构 线程是现代OS引入的概念。 以线程为程序并发执行的单位; 一个进程中可创建多个可以相互切换的线程; 这些线程中至少有一个处于就绪状态,进程才处于就绪状态; 进程运行时,其中必有一个线程运行; 同一进程所属的线程共享进程占用的资源,属于线程本身的专用资源很少,描述线程的状态也比进程要少,因此,线程所需资源比进程少; 线程的切换开销和线程间的通信开销小。第11页/共28页 在多处理机系统中,引入线程,增强了进程的可并发程度。 单进程多线程的DBMS中,系统只创建一个DBMS进程(用户接口仍然是进程)。该进程中有常驻的公共服务线程和应用户要求而创建的用户线程。 ——DBMS的并发执行从进程级改为线程级。第12页/共28页 尽管很多现代OS的核心具有线程管理的功能,但对DBMS来说,还是在DBMS进程(相对于OS,是用户进程)中实现线程为宜。理由如下:(1)可以按照DBMS的需要确定线程调度策略;(2)线程的切换在用户态,不必转入操作系统的核心态,切换开销小;(3)可以在不支持线程的操作系统上运行,减少对操作系统的依赖,有利于提高操作系统的可移植性。第13页/共28页 由DBMS管理线程,需要OS提供如下支持: (1).提供非阻塞I/O(Nonblocking I/O)和异步I/O(asynchronous I/O)功能; (2).支持“公平”调度(fair schedule); 即不把具有多线程的DBMS进程,与其它进程等同看待,应区分轻重。第14页/共28页 4.4 DBMS的系统结构1.分时系统环境下的集中式数据库系统结构 应用的要求以及软硬件条件决定了数据库系统以集中为宜,数据库建立在本单位的主要计算机上,用户通过终端或远距离终端分时访问。 数据及其管理都是集中的,数据库系统的所有功能,从用户接口到DBMS核心都集中在DBMS所在的计算机上。第15页/共28页 2.网络环境下的客户/服务器结构 20世纪70年代:微机的出现和迅速发展;计算机网络的发展和广泛应用,改变了计算机应用系统的格局。 客户机/服务器是一种特殊的分布
原创力文档

文档评论(0)