2010-08-27 222 views
2

海兰, 我学习我的考试,就过来了以下问题:数据库原理:事务串行化

乘坐History(或计划)

H = w1[x] w2[x] w2[y] c2 w1[y] w3[x] w3[y] c3 w1[z] c1 

其中w1[x]指:交易1个写入到数据对象X(r1[x]表示读取)和c1表示:事务1提交。

为什么这笔交易view serializable

对于视图序列化历史H必须视图等价于序列执行事务1,2,3。所以,futher,每个数据对象的最后写操作必须是相同的历史H.因此,H的最后写入的事务的顺序执行的有:X

  • TRANSATION 3 y和
  • TRANSATION 1针对z

但是,没有顺序执行的最后写的分布是这样的,所以历史H可不能图序列化。

我的错误在哪里?

谢谢大家。

回答

1

好了,发现自己:最后一句,如果当然是错误的:

事实上顺序执行1,2,3导致了这段历史:

w1[x] w1[y] w1[z] c1 w2[x] w2[y] c2 w3[x] w3[y] c3 

和follogint最后写操作:

  • 事务3 x和y和
  • 事务1针对z

这与历史记录H的最后写入相同