每个副本i维护一个二维向量时钟VCi,(t,i)表示副本i在逻辑时间t中执行的一个操作。A中灰色的部分是
指副本B提交的操作,也就是这个操作在所有副本中都有执行。
顺序偏差:A顺序偏差为3是因为有三个操作和B不一样,B是1个(书本错误)
数值偏差:(未接受到的更新次数,偏差权重)其中偏差权重是指A已提交的值(x,y),与还没有收到来
自于B的操作产生的结果之间的最大差分。A提交的值为(x=2,y=0),没有收到的B的操作得出的结果为
(x=2,y=5),因此最大差分的值为5。B提交的值是(x=2,y=0),A没有提交的操作的结果为(x=6,y=3),此时
最大差分是4,而不是6(书本错误)
向量时钟:因为A和B没有交互,所以A的逻辑时钟没有传过来,是0。但A接受了B的提交操作
一致性单元包含的变量越多,更频繁出现不一致的情况,因此更新频率更大。
7.2.2 一致的操作顺序
顺序一致性
定义:任何执行结果都是相同的,就好像所有进程对数据存储的读、写操作是按照某种顺序执行的,并
且每个进程的操作按照程序所制定的顺序出现在这个序列中。
举例:进程P3和P4先读到b后才读到a,也就是说,P2的写操作发生在进程P1的写操作之前。而图b违
背了,因为对进程P4最终得到的结果是b,而P3最终得到的结果是a。
评论0