数据库中这个怎么判断冲突等价
展开全部
不是冲突等价的。
冲突等价的含义是“不同事务的一对操作,有些是冲突的,有些是不冲突的。不冲突操作的次序可以互相调换,不致影响执行的结果。凡是通过调换S中不冲突操作所得的新调度,称为S的冲突等价调度”(这段我从网上随便找的,但是意思差不多)。
然后,这个事务调度里面,我们关心Q的写操作Write(Q),可以看到在S1里面的顺序是T2,T1,T3。而写操作是互相冲突的,所以如果S2和S1冲突等价,那S2的Write(Q)也应该是T2,T1,T3这个顺序。但实际上S2中Write(Q)的顺序是T1,T2,T3。所以,这两不是冲突等价。
冲突等价的含义是“不同事务的一对操作,有些是冲突的,有些是不冲突的。不冲突操作的次序可以互相调换,不致影响执行的结果。凡是通过调换S中不冲突操作所得的新调度,称为S的冲突等价调度”(这段我从网上随便找的,但是意思差不多)。
然后,这个事务调度里面,我们关心Q的写操作Write(Q),可以看到在S1里面的顺序是T2,T1,T3。而写操作是互相冲突的,所以如果S2和S1冲突等价,那S2的Write(Q)也应该是T2,T1,T3这个顺序。但实际上S2中Write(Q)的顺序是T1,T2,T3。所以,这两不是冲突等价。
追问
为什么只关心Write(Q),而没有去管其他的
追答
因为这里是write(Q)的顺序产生了问题,导致它们不是冲突等价。而其他可能造成问题的地方,比如对P的读和写,在两个调度里面顺序都维持了一样的。
真的做题的时候应该是都要分析的。我解答的时候就只把产生矛盾的write(Q)说了一下,偷懒了点,呵呵~
来自:求助得到的回答
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询