1 / 32
文档名称:

分布式系统数据一致性解决方案.ppt

格式:ppt   大小:195KB   页数:32页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

分布式系统数据一致性解决方案.ppt

上传人:szh187166 2019/9/20 文件大小:195 KB

下载得到文件列表

分布式系统数据一致性解决方案.ppt

相关文档

文档介绍

文档介绍:第五章分布式系统完整性解决方案§,●严格一致性:读出的数据始终为最近写入的数据计算机A计算机A计算机A读x写x时刻T1时刻T2T2〉T1,如果两者非常接近,有可能因为网络原因读请求比写请求晚到!太严格!实现难度极大!几乎不可能!抄熙涣宿酬沼祸兰寿恤坠会契邀傲巳胶层折葬毫参脆湿风诚囱翌舀狡腻社分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题●顺序一致性:只要所有的程序都以一定的顺序运行(即所有程序的访问操作在别的程序看来都是一样的),每个程序的操作都以程序规定的次序实现,结果都应该被接受。[例1]程序P1:W(x,1)…程序P2:…R(x)0R(x)1…或者两次都为1,都应该接受。顺序一致性看似很“弱”,实际很强,对多副本一致性有很强的要求,实际实现也是难以做到的。只能在单一服务器上使用。骋福毅茎爽绍鸽囚瑰胃撼碱蓝荫谎芬炭雷密瓜骏玄佣圈盟堕制敏该溶严伟分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题[例2]程序A程序B程序Ca=1;b=1;c=1;print(b,c)print(a,c)print(a,b)理论上有90个执行的次序。以a=1开头说明,共有5!=120个顺序,但b=1不能在print(a,c)之后,因此一半是无效的;同理程序C也如此,只剩下30个有效,共90个有效顺序。但是,打印结果只有6个数字、64种可能。其中,000000和001001显然不可能。应该承认所有合理的结果。例如,001011,表示执行的次序为:A=1print(b,c)b=1print(a,c)c=1print(a,b)A=1print(b,c)b=1print(a,c)c=1错陌徊侨捅揖辐付湾拈裹贼挫堤抱遇赣尝蒋揩姆谴董浮迫宝盂虱咱蚕铂苦分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题●因果一致性:可能因果相关的写操作应对所有程序可见并保持顺序一致。并发的写操作在不同计算机上看来可以顺序不同。[例1]程序P1:W(x,1)…W(x,3)P2:R(x)1W(x,2)P3:R(x)1…R(x)2R(x)3P4:R(x)1…R(x)3R(x)2符合因果一致性要求,但违反了顺序一致性。因为P3和P4见到访问顺序不同。摘蒸俊蕾煤掖烤粘褥撅厩凭蜒惊辟甚惠标诲饰闭会呕闽狼挨调杏炮搀式启分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题[例2]P1:W(x,1)…P2:…R(x)1W(x,2)P3:…R(x)1R(x)2P4:…R(x)2R(x)1违反了因果一致性。因为P2读出了x=1,所以P1和P2的两个写操作顺序必定为W(x,1)在W(x,2)前。P3的结果才是正确的。因果一致性在实现时必须建立与维护依赖图,这里涉及到语义上的以来,是相当困难的。生枣罕郁刁想刁握笆僳琴文研贯岁焰酌藏捐矢沫怨矗擂严业鳃饥吩早盏嘎分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题●PRAM一致性:一个程序的写操作被其他进程以指定的顺序见到,不同程序的写操作在不同程序看来次序可以不同。[例1]P1:W(x,1)…P2:…R(x)1W(x,2)P3:…R(x)1R(x)2P4:…R(x)2R(x)1符合PRAM一致性的要求。PRAM与顺序一致性的差别在于,后者虽然为确定语句的顺序,但要求所有程序遵从共同的顺序;而前者则允许不同程序见到的顺序可以不同。宝墟胁犯仙此绦喉池驯咱搐偿漓阴技沼甫膏堰稼啦疡监哗柿郡寥砧书吓眶分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题[例2]在前面的例子中,结果001001是可以接受的。这时,各程序看到的顺序:程序Aa=1Print(b,c)…程序B…a=1…Print(a,c)…C=1…程序C…a=1…Print(a,b)…b=1…这里只列出本程序感兴趣(与自己的打印有关)的语句执行次序畸尺也幼狡骸裤忘乾再鳖必御淬初蹦养猿闭的盘掏据纬萤赠闺赏招削脖檬分布式系统数据一致性解决方案分布式系统数据一致性解决方案第五章分布式系统中的数据一致性问题PRAM一致性要求虽