高级操作系统课件-第七章一致性和复制分析.pptVIP

高级操作系统课件-第七章一致性和复制分析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高级操作系统课件-第七章一致性和复制分析

第七章 一致性和复制 概述 以数据为中心的一致性模型 以客户为中心的一致性模型 复制管理 一致性协议 概述:复制的目的 可靠性 性能 服务器数量扩展 地理区域扩展 代价:一致性 网络通信开销 强一致性要求的原子操作很难快速完成 解决办法: 放宽一致性方面的限制,放宽程度取决于复制数据的访问和更新模式以及数据的用途 以数据为中心的一致性模型 逻辑数据存储的一般组织,物理上是分布的,并被复制到各个进程 严格一致性 (Strict Consistency) a) 严格的一致性存储 b) 非严格的一致性存储 线性化和顺序一致性 Linearizability and Sequential Consistency (1) a) 顺序一致的数据存储 b) 非顺序一致的数据存储 线性化和顺序一致性 (2) 顺序一致性可与事务串行化相比 串行化:如果一个并发执行的事务处理集合的结果可以按照某种顺序逐个执行事务获得,该事务处理集合是可串行化的 区别:粒度的不同 顺序一致性:读写操作 串行化:事务(一系列读写操作的集合) 线性化: 弱于严格一致性而强于顺序一致性 根据一系列时钟同步确定序列顺序(利用时间戳) 顺序一致性和线性化提供了程序开发人员在并发程序设计中期望的语义:所有写操作都以相同的顺序被每个进程看到 因果一致性 Casual Consistency (1) 所有进程必须以相同的顺序看到具有潜在因果关系的写操作 不同机器上的进程可以以不同的顺序看到并发的写操作 因果一致性 (2) 因果一致性存储允许的,但顺序和严格一致性存储不允许的顺序 因果一致性 (3) 违背因果一致性的时间存储顺序 符合因果一致性的时间存储顺序 FIFO 一致性 FIFO Consistency (1) FIFO一致性模型是在因果一致性模型上的进一步弱化,它满足下面的条件: 由某一个进程完成的写操作可以被其他所有的进程按照顺序感知到,而从不同进程中来的写操作对不同的进程可以有不同的顺序。 FIFO 一致性 (2) 符合FIFO 一致性的时间存储顺序 FIFO 一致性 (3) 引入同步的一致性 引入显示的同步变量 当一个进程对数据进行操作时,不保证其他进程何时看到这一操作,只是在执行一次同步时,数据的改变才被传播 弱一致性 释放一致性 入口一致性 弱一致性 Weak Consistency (1) 同步变量S仅有一个关联操作synchronization(S),该操作同步数据存储的所有本地拷贝 弱一致性模型必须满足的条件有下面几点:? 对同步变量的访问满足一致性的要求 说明所有进程都以相同的顺序看到同步变量进行的所有操作 对同步变量的访问,只有在以前的写操作在各处都完成之后才能进行。 强迫在所有备份上完成所有的写操作 对数据的操作(读或写),只有在以前的对同步变量的操作完成之后才能进行。 保证所得到的数值是最新值 弱一致性 (2) 对弱一致性有效的时间顺序 对弱一致性无效的时间顺序 释放一致性 Release Consistency (1) 对释放一致性有效的时间顺序 释放一致性 (2) 通常,如果一个分布式共享存储系统满足释放一致性,则它必须遵守以下的规则: 某进程只有在成功完成Acquire操作之后,才能对共享数据进行读写操作。 某进程只有在完成对共享数据的读写操作之后,Release操作才能完成。 Acquire和Release操作必须满足FIFO一致性要求。 进程执行获取操作时要保证数据更新,与远程数据保持一致,但不保证本地数据改变被立即传播到其他拷贝 进程执行释放操作时已改变的数据被立即传播到其他拷贝,不保证一定从其他拷贝引入改变 入口一致性 Entry Consistency (1) 要求每个普通的共享数据都要与某种同步变量(如锁)关联 思想:使得多个包含不同共享数据的临界区可以同时执行,从而增加系统的并行度,付出的代价是每个共享数据与某种同步变量关联的额外开销和复杂性 满足入口一致性的条件是: 在一个进程可以获取一个同步变量前,所有由该同步变量保护的共享数据相对与该进程已经更新完毕 在一个进程被允许以独占模式访问某同步变量之前,任何别的进程不可以拥有该同步变量,即使以非独占模式拥有。 在一个进程以独占模式访问一个同步变量之后,在对该同步变量的所有者检查之前,任何其他进程都不能执行下一个非独占访问。 入口一致性 (2) 对入口一致性有效的时间顺序 一致性总结 不使用同步操作的一致性模型 使用同步操作的一致性模型 以客户为中心的一致性模型 最终一致性(Eventual Consistency) 最终一致性:很多情况下系统能容忍相对较高程度的不一致性,共同之处在于:只有一个或少数几个进程执行更新操作,如果较长时间内没有更新操

文档评论(0)

此项为空 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档