Javatpoint标志
Javatpoint标志

时间戳协议与Thomas写规则在DBMS中的主要区别

并发性协议:

并发控制协议是在保持DBMS隔离属性的情况下实现事务的方法。就允许的并发数量和强加的开销而言,各种并发控制技术提供了不同的好处。

为了理解时间戳协议和Thomas写规则之间的区别,我们必须简单地理解这两者。

时间戳协议在DBMS:

在DBMS中实现并发控制的方法有很多,其中最常用的技术之一是基于锁的协议。另一种方法是使用时间戳排序协议进行并发控制。我们可以通过使用时间戳在DBMS中唯一地标识每个事务,时间戳是按照事务提交给系统的顺序分配的。

对于事务,T时间戳可以表示为TS(T)。

该协议的基本思想是根据时间戳组织事务。然后,事务可以在调度中序列化,并且唯一允许的相应串行调度按照其时间戳值的顺序拥有事务。简单地说,事务时间戳的顺序对应于调度所表示的特定串行顺序。对于由冲突操作访问的调度中的每个项目,算法必须确保访问项目的顺序不违反顺序。使用与每个数据库项K相关联的两个Timestamp值来确保这一点。

时间戳排序:

根据事务进入系统的时间,会给它一个时间戳。假设给新事务Tj一个时间戳TS(Tj),如果旧事务Ti包含时间戳TS(Ti),则TS(Ti)

ts计数器:

在时间戳系统中使用一种称为ts计数器的计数器。当系统中发生提交操作时,它在该实例中将其值增加1。当一个新的事务进入系统时,如果时间戳TS[Ti]已经发给了事务Ti,那么它必须满足TS[Ti]

托马斯写作规则:

如果Ri(K)和Wj(K)是冲突的操作,时间戳排序协议规定当且仅当TS(Ti)

这样的活动在Thomas Write Rule(基本时间戳排序协议的修改)下是允许的。托马斯写作规则的使用者忽略了日期。用户可以使用View Serializable时间表获得并发性,这是所有并发协议中最重要的进步。Thomas Write Rule将并发性强加于可冲突序列化的计划。

Thomas Write Rule修改了w_item (X)的检查操作,在不强制冲突序列化的情况下拒绝更少的写操作。

它是更新的时间戳排序协议。如果事务Ti发送写(K),则:

  • 如果TS[Ti]
  • 当TS[Ti]
  • 在这种情况下,系统执行写操作,并将w-TS(K)设置为TS(Ti)。

时间戳协议和托马斯写规则的主要区别:

时间戳排序协议中的第二条规则指出,如果写(K)是由Ti和TS[Ti]


下一个话题 ER图中的递归关系





Youtube 视频加入我们的Youtube频道:现在加入

反馈


帮助别人,请分享

脸谱网 推特 pinterest

学习最新教程


准备


热门的技术


b .技术/马华






Baidu
map