5.04 Concurrent Control ntroduct i on 并发控制引论
1 5.04 Concurrent Control Introduction 并发控制引论
-concurrent in database System 数据库系统中的并发 ● serial access: 事务的串行访问。 一个事务结束后,另一事务才开始,这种执行 方式叫事务的串行访问,即事务串行执行。 concurrent access:并发访问。 DBMS可以同时接纳多个事务,各事务可在时间 上重叠。这种执行方式叫并发访问
2 一.concurrent in database System 数据库系统中的并发 ⚫ serial access: 事务的串行访问。 一个事务结束后,另一事务才开始,这种执行 方式叫事务的串行访问,即事务串行执行。 ⚫ concurrent access:并发访问。 DBMS可以同时接纳多个事务,各事务可在时间 上重叠。这种执行方式叫并发访问
inter |eaved concurrency 交叉并发 单CPU系统,各事务只能轮流使用CPU, 这种并发方式叫交叉并发。 s imu taneous concurrency 同时并发 多CPU系统,各事务可同时分别占用不同 CPU,这种并发方式叫同时并发
3 interleaved concurrency: 交叉并发 单CPU系统,各事务只能轮流使用CPU, 这种并发方式叫交叉并发。 simultaneous concurrency: 同时并发 多CPU系统,各事务可同时分别占用不同 CPU,这种并发方式叫同时并发
二. aim for concurrency 并发的目的 。改善系统的资源利用率: 一个事务不同执行阶段需要 不同的资源:用CPU,访磁盘,通信, 串行会造成多数资源闲置。 。改善短事务响应时间:如下 事务T1 事务T2 若T1先开始执行,串行,T2要等很长时间,长事 务多等用户可接受,短事务等太久用户不可接受
4 二. aim for concurrency 并发的目的 ⚫ 改善系统的资源利用率: 一个事务不同执行阶段需要 不同的资源:用CPU,访磁盘,通信, 串行会造成多数资源闲置。 ⚫ 改善短事务响应时间:如下 事务T1 事务T2 若T1先开始执行,串行,T2要等很长时间,长事 务多等用户可接受,短事务等太久用户不可接受
三.Problem of( concurrency 事务并发执行,如不加控制会产 生如下问题: 1.lost update丢失更新 Tl T2 时 间 read(x) read(x) x=x+1, write(x); X=2X, write(x); 事务T1对X的更新丢失,与串行执行比较:初值X=4,x终值: 图次序:8;串行T1,T2为10;T2,T1为9。 称wr ite-一write conflict,写一写冲突
5 三.Problem of concurrency 事务并发执行,如不加控制会产 生如下问题: 1.lost update丢失更新 时 间 ⚫ 事务T1对X的更新丢失,与串行执行比较:初值X=4 , x终值: 图次序:8;串行T1,T2为10;T2,T1为9。 ⚫ 称write—write conflict,写一写冲突。 T1 T2 read(x) . . . x:=x+1; write(x); . . . . . . . . . read(x) . . . . . . x:=2x; write(x); . .