DBMS_09并发控制.ppt

DBMS_09并发控制

第九章: 并发控制 串行调度和可串行化调度 调度是一个或多个事务的重要操作按时间排序的一个序列。 当研究并发时,重要的读写动作发生在主存缓冲区,而不是在磁盘上。 在考虑并发时只有READ和WRITE及其顺序是重要的,而我们将忽略INPUT和OUTPUT动作。 串行调度 串行调度保持数据库状态的一致性,但数据库终态与事务顺序有关。 可串行化调度 例9.2,9.3 Serial Schedule 事务语义的影响 事务细节影响事务调度,但调度器考虑事务所进行的计算的细节是不现实的。 为了简化调度器的工作,通常假定: 事务T所写的任意数据库元素A被赋予一个值,该值以这样一种方式依赖于数据库状态,即不会发生算术上的巧合。 事务和调度的一种记法 rT(X)和wT(X)分别表示事务T读和写数据库元素X。 动作是形如wi(X)或wi(X)的表达式,分别表示事务Ti读或写数据库元素X。 事务Ti是具有下标i的动作序列。 事务集合T的调度S是一个动作序列,其中对T中的每个事务Ti, Ti中的动作在S中出现的顺序和其在Ti自身定义中出现的顺序一样。我们说S是组成它的事务动作的一个交错。 例 9.2 冲突可串行化 冲突:调度中一对连续的动作,它们满足:如果它们的顺序交换,那么涉及的事务中至少有一个的行为会改变。 假设Ti和Tj是不同的事务,即i?j。 ri(X);rj(Y)从不会是冲突,即使X=Y。 如果

文档评论(0)

1亿VIP精品文档

相关文档