当前课程知识点:高级数据库系统 > 第四讲 事务并发调度的相关概念 > 2. 可串行化调度 > 4-2. 可串行化调度
下面,我们来看一下可串行化调度的概念
我们刚才说了,说这个串行化实际上是
最容易构造而且最容易与业务规则相一致的
是正确的一种调度
那么如果我们的这个并发调度
如果能和串行化调度要一样的话
那不就是我们所追求的吗
所以,下面我们就来做一个定义,叫做可串行化调度
那么什么叫可串行化调度呢
那我们看一下PPT上这段话
它说如果对一个并发事务的集合
那么S是这个集合里面所有事务的一个串行调度
当然这个串行调度,我们不会给它定义一个
比如说非是t1在前,t2在后,t3在后
那么只要是一个事务执行先于另外一个事务就可以
就说,S是T的一个串行调度,而S’是T 的一个调度
那么这个调度呢, S ‘如果与S 有着相同的一致性状态
大家注意这个一致性状态非常重要
那么什么叫做一致性状态呢
一致性状态就是指我这个事务在执行的过程当中
它的变量的状态变化,是一致的
它叫一致性状态,所以我们说如果s’与s
它在执行过程当中有了相同的一致性状态
那么我们说S’,它就是一个可串行化调度
那么我们用一个例子来看一下,比如说这个例2,T1和T2
我们还用前面这个T1和T2的例子
那么如果我们把这个T1,T2,它的这个调度呢,这样地去做
比如说做一个T3调度,把T1,T2的命令这样去排列
比如说,我先这个事务T1先读x,然后再进行写
然后接下来,我执行事务T2,读x进行写x,
然后接下来再执行事务T1的命令,读y写y,再执行T2的命令
那么读y,然后进行乘法的顺序
那么这个执行预先执行T1,后执行T2
它的这个状态就是完全一致的
所以呢,我们说它就是一个可串行化
它是调度S3是T1,T2的一个可串行化调度
那么我们再看一下,我们还可以构造另外一个调度
调度S4,我们再看这个例子
那么对这个来说呢,就是我可以先执行T2
比如说T2先对x进行这个读写,然后再执行T1对x进行读写
再执行T2对y进行读写,再执行T1对y进行读写
那么这样的话,就相当于什么呢,先执行T2,后执行T1
它的这个变量的变化,x和y它的这个状态的变化
与先执行T2,后执行T1的效果是完全一样的
所以这个呢,我们说它是T2,T1的一个可串行化调度
那么下面我们再看一个例子,这个S5我们构造一个调度
这个调度呢,它是什么呢
它先执行对T1,进行执行它的对x进行读写
然后呢,它再执行T2,对x进行读写,是吧
那么这个呢,我们看x的状态变化
实际上是与先执行T1,再执行T2是完全一样的,是吧
但是接下来它的这个命令呢
这个调度的命令是先执行T2的对y进行读写
然后再执行T1对y进行读写
显然这个和先执行T1,后执行T2,y的状态就不一样了,是不是
所以这样的话呢,我们说这个调度,它与先执行T1,后执行T2
和先执行T2,后执行T1是完全不一样的,都不一样
所以呢,我们说,它实际上是一个不可串行化的调度
也叫不可串行化,也就是它与串行化之间效果是不一样的
那么实际上从最后的执行结果来看呢,也确实是不一样的
所以这个呢,就是我们不能保证它将来最终的结果是不是正确
所以这样的调度不是我们希望的
-1. 数据文件的组织
-2. 索引的概念与分类
-3. B+树索引
-4. 散列索引
--1-4 散列索引
-5. 小结
--html
-6.练习--作业
-1. 查询代价的测量及查询处理过程概述
-2. 关系操作的基础算法
-3. 查询表达式的运算
-4.查询优化机制
-5.小结
--html
-6.练习--作业
-1. 数据库的故障及可恢复模型
-2. 事务及日志的相关概念
-3. 基于undo日志的恢复机制
-4. 基于redo日志的恢复机制
-5. 小结
--html
-6. 练习--作业
-1. 并发调度及相关概念
-2. 可串行化调度
-3. 冲突可串行化调度
-4. 小结
--html
-5. 练习--作业
-1. 锁的概念及封锁的原理
-2. 两阶段锁协议
-3. 多粒度锁及意向锁
-4. 死锁的处理
-5. 小结
--html
-6. 练习--作业
-1. 基于时间戳的调度
-2. 基于有效性检验的调度
-3. 小结
--html
-4. 练习--作业
-1. 分布式数据库系统的产生及定义
-2. 分布式数据库系统的模式结构与功能结构
-3. 分布式数据库系统中存在的技术问题
-4. 小结
--html
-5. 练习--作业
-1. 分布式数据库的设计方法、内容和目标
-2. 自顶向下方法构建数据库
-3. 数据的分片和分布设计
-4. 分布式数据库设计案例讲解
-5. 小结
--html
-6. 练习--作业
-1. 分布式查询处理的步骤和代价
-2. 基于等价变换的查询优化
-3. 基于半连接算法的查询优化
-4. 基于直接连接算法的查询优化
-5. 小结
--html
-6. 练习--作业
-1. 分布式事务概述
-2. 分布式事务的两阶段提交协议
-3.分布式并发控制概述
-4. 并发控制的加锁机制
-5. 并发控制的时标技术
-6. 小结
--html
-7.练习--作业
-试题--作业