复制.ppt
《复制.ppt》由会员分享,可在线阅读,更多相关《复制.ppt(54页珍藏版)》请在三一文库上搜索。
1、第6章 复制,第6章 复制,简介 系统模型 容错服务 高可用服务的实例研究:gossip体系结构、Bayou和Coda 小结,简介,复制的概念 在多个计算机中进行数据副本的维护。 复制的动机:增强服务 增强性能 - 浏览器对Web资源的缓存 - 数据在多个服务器之间地透明复制 提高可用性 - 服务器故障:1pn - 网络分区和断链操作:预先复制 增强容错能力 - 正确性:允许一定数量和类型的故障,简介,复制的基本要求 复制透明性 - 对客户屏蔽多个物理拷贝的存在 - 客户仅对一个逻辑对象进行操作 一致性 - 在不同应用中有不同强度的一致性需求 - 复制对象集合的操作必须满足应用需求,第6章 复
2、制,简介 系统模型 容错服务 高可用服务的实例研究:gossip体系结构、Bayou和Coda 小结,系统模型,基本模型,系统模型,基本模型组件 副本管理器 - 接收前端请求 - 对副本执行原子性操作 前端 - 接收客户请求 - 通过消息传递与多个副本管理器进行通信,系统模型,副本对象的操作 请求:前端将请求发送至一个或多个副本管理器 协调 - 保证执行的一致性 - 对不同请求进行排序(FIFO,因果,全序) 执行:包括临时请求的执行 协定:就提交请求的影响达成一致 响应:一个或多个副本管理器响应前端,第6章 复制,简介 系统模型 容错服务 高可用服务的实例研究:gossip体系结构、Bayo
3、u和Coda 小结,容错服务,复制是提高系统容错能力的有效手段之一 为用户提供一个单一的镜像 副本之间需要保持严格的一致性 副本之间的不一致性将导致容错能力失效 银行帐户示例,容错服务,1. 银行帐户x和y的两个副本管理器位于计算机A、B上 2. 客户在本地的副本管理器上读取和更新帐户,容错服务,由于B在把帐户x的更新传送至A前出现故障,所以产生了不一致现象,客户1: setBalanceB(x,1) Server B failed setBalanceA(y,2),客户2: getBalanceA(y)=2 getBalanceA(x)=0,容错服务,被动(主备份)复制 一个主副本管理器多个
4、次副本管理器 - 若主副本管理器出现故障,则某个备份副本管理器将提升为主副本管理器。 模型,容错服务,被动复制时的事件次序 请求 - 前端将请求发送给主副本管理器 协调 - 主副本管理器按接收次序对请求排序 执行 - 主副本管理器执行请求并存储响应,容错服务,被动复制时的事件次序(续) 协定 - 若请求为更新操作,则主副本管理器向每个备份副本管理器发送更新后的状态、响应和唯一标识符。 - 备份副本管理器返回确认。 响应 - 主副本管理器将响应发送给前端 - 前端将响应发送给客户,容错服务,主动复制 副本管理器地位对等,前端组播消息至副本管理器组 模型,容错服务,主动复制时的事件次序 请求 -
5、前端使用全序、可靠的组播原语将请求组播到副本管理器组 协调 - 组通信系统以同样的次序(全序)将请求传递到每个副本管理器 执行 - 每个副本管理器以相同的方式执行请求 响应 - 每个副本管理器将响应发送给前端 - 前端将响应发送给客户,第6章 复制,简介 系统模型 容错服务 高可用服务的实例研究:gossip体系结构、Bayou和Coda 小结,高可用服务的实例研究,高可用性和容错能力 容错能力 - 只要可能,所有正确的副本管理器都能够及时收到更新,并在将控制传递回客户以前达成一致。 高可用性 - 采用较弱程度的一致性,提高共享数据的可用性。 - 实例:gossip、Bayou和Coda,go
6、ssip体系结构,体系结构 前端可以选择任意副本管理器 提供两种基本操作:查询更新 副本管理器定期通过gossip消息来传递客户的更新,(2,2,3),gossip体系结构,体系结构(续) 系统的两个保证 - 随着时间的推移,每个用户总能获得一致服务 副本管理器提供的数据能反映迄今为止客户已经观测到的更新 - 副本之间松弛的一致性 所有副本管理器最终将收到所有更新 两个客户可能会观察到不同的副本 客户可能观察到过时数据,gossip体系结构,查询和更新操作流程 请求 - 前端将请求发送至副本管理器 查询:客户可能阻塞 更新:无阻塞 更新响应 - 副本管理器立即应答收到的更新请求 协调 - 收到
7、请求的副本管理器并不处理操作,直到它能根据所要求的次序约束处理请求为止。,gossip体系结构,查询和更新操作流程(续) 执行 - 副本管理器执行请求 查询响应 - 副本管理器对查询请求作出应答 协定 - 副本管理器通过交换gossip消息进行相互更新 gossip消息的交换是偶尔的 发现消息丢失后,才和特定的副本管理器交换消息,gossip体系结构,前端的版本时间戳 客户交换数据 -通过访问相同的gossip服务 - 相互直接通信,为了控制操作处理次序,每个前端维持了一个向量时间戳,gossip体系结构,前端的版本时间戳(续) 每个前端维护一个向量时间戳 - 每个副本管理器有一条对应的记录
8、- 更新或查询信息中包含时间戳 -合并操作返回的时间戳与前端时间戳 向量时间戳的作用 - 反映前端访问的最新数据值,gossip体系结构,副本管理器状态,gossip体系结构,副本管理器状态(续) 值 - 副本管理器维护的应用状态的值 值的时间戳 - 更新的向量时间戳 更新日志 - 记录更新操作 副本的时间戳 - 已经被副本服务器接收到的更新,gossip体系结构,副本管理器状态(续) 已执行操作表 - 记录已经执行的更新的唯一标识符,防止重复执行 时间戳表 - 确定何时一个更新已经应用于所有的副本管理器,gossip体系结构,查询操作 副本管理器收到查询 - q.prevalueTS 立即响
9、应 返回消息中的时间戳为valueTS - 否则 将消息保存到保留队列 如:q.pre(2,4,6),valueTS(2,5,5) 前端收到查询响应 - 合并时间戳:frontEndTS:=merge(frontEndTS,new)(2,5,6),gossip体系结构,按因果次序处理更新 前端发送更新请求:(u.op, u.prev, u.id) 副本管理器i接收请求 - 丢弃:操作已经处理过 - 否则,将更新记录日志 ts =u.prev, tsi=tsi+1 logRecord= - 副本管理器将ts返回给前端 frontEndTS=merge(frontEndTS, ts),gossip
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复制
链接地址:https://www.31doc.com/p-2573687.html