正在加载图片...
意向锁: IS锁(意向共享锁 IX锁(意向排他锁) SIX锁(共享意向排他锁) 相容矩阵 锁的强弱关系 6.11基于时间标记的并发控制技术 61基本的时间标记协议 事务:时间标记;数据项:时间标记(tr,tw) 事务读/写数据的处理: (1)事务T读数据D ifts(T)<tw①D:D已被年轻事务重写,拒绝T的Read(①), 用新的ts重启T ifts(T)>=tw⑦D):执行Read①),tr(D)=max(ts(T),tr(D) (2)事务T写数据D ifts(T)<tr(D):D已被年轻事务读过,拒绝T的 Write(D), 用新的ts重启T ifts(T)<tw①):T写一个过时的数据给D,拒绝执行,用新 的ts重启T fts(T)>=tr(D) and ts(T)>tw①D):执行 Write①D),修改 tw(d=ts t) Thomas写入规则: ifts(T)<tr①)then rollback T and restart with new ts(T) else if ts(T)>=tw(D)then writeD tw:=ts(T) else ignore Write①) 612多版本并发控制 数据D存在多个复本,每个版本的D都具有tr(D),tw(D)意向锁: ➢ IS 锁(意向共享锁) ➢ IX 锁(意向排他锁) ➢ SIX 锁(共享意向排他锁) 相容矩阵 锁的强弱关系 6.11 基于时间标记的并发控制技术 6.11.1 基本的时间标记协议 事务:时间标记; 数据项:时间标记(tr,tw) 事务读/写数据的处理: (1)事务 T 读数据 D if ts(T)< tw(D):D 已被年轻事务重写,拒绝 T 的 Read(D), 用新的 ts 重启 T if ts(T)>=tw(D):执行 Read(D),tr(D)=max(ts(T),tr(D)) (2) 事务 T 写数据 D if ts(T)<tr(D) :D 已被年轻事务读过,拒绝 T 的 Write(D), 用新的 ts 重启 T if ts(T)<tw(D):T 写一个过时的数据给 D,拒绝执行,用新 的 ts 重启 T if ts(T)>=tr(D) and ts(T)>=tw(D) :执行 Write(D),修改 tw(D)=ts(T) Thomas 写入规则: if ts(T)<tr(D) then rollback T and restart with new ts(T) else if ts(T)>=tw(D) then { write(D); tw:=ts(T) } else ignore Write(D) 6.11.2 多版本并发控制 数据 D 存在多个复本,每个版本的 Di都具有 tr(Di),tw(Di)
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有