数据库 | 数据库保护 | 视图可串行化

版权声明:本人小白,有错误之处恳请指出,感激不尽;欢迎转载 https://blog.csdn.net/stone_fall/article/details/88560088

目录

视图可串行化

视图等价

视图可串行化

视图可串行化判定

带标记的优先图的构造


冲突可串行化

https://blog.csdn.net/stone_fall/article/details/88559909


视图可串行化

视图等价

  考虑关于某个事务集的两个调度S,S',若调度S,S'满足以下条件,则称它们是视图等价的:

对于每个数据项Q,若事务Ti在调度S中读取了Q的初始值,那么Ti在调度S'中也必须读取Q的初始值

对于每个数据项Q,若事务Ti在调度S中执行了read(Q),并且读取的值是由Tj产生的,那么Ti在调度S'中读取的Q值也必须是由Tj产生的

对于每个数据项Q,若在调度S中有事务执行了最后的write(Q),则在调度S'中该事务也必须执行最后的write(Q)

  注:条件①、②保证两个调度中的每个事务都读取相同的值,从而进行相同的计算

  条件①、②、③保证两个调度得到最终相同的系统状态

视图可串行化

如果某个调度视图等价于一个串行调度,则称该调度是视图可串行化的

冲突可串行化调度一定是视图可串行化

  存在视图可串行化但非冲突可串行化的调度

视图可串行化判定

带标记的优先图的构造

  设调度S包含了事务{T1, T2, , Tn},Tb, Tf是两个虚事务,其中TbS中所有write(Q)操作, TfS中所有read(Q)操作。在调度S的开头插入Tb在调度S的末尾插入Tf得到一个新的调度S'

猜你喜欢

转载自blog.csdn.net/stone_fall/article/details/88560088