1 / 33
文档名称:

分布式系统之一致性与复制.ppt

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

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

分享

预览

分布式系统之一致性与复制.ppt

上传人:文库新人 2021/10/4 文件大小:1.82 MB

下载得到文件列表

分布式系统之一致性与复制.ppt

相关文档

文档介绍

文档介绍:分布式系统之一致性与复制
第一页,共33页。
一、概述
复制目标
可靠性
性能
难题
数据的一致性
两种一致性模型
以数据为中心的一致性模型
以客户为中心的一致性模型
实现一致性的两个问题
数据更新的实际分发问题
保持副本一致性的问题
第二页,共33页。
一致性模型
实质上是进程和数据存储之间的一个约定,进程只有遵守约定,数据存储才能正常运行
基本原则:正常情况下,一个进程执行对某项数据的读操作时,应该返回该数据项最近一次写操作的结果
在没有全局时钟的情况下,精确定义哪次写操作是最后一次写操作相当困难
基本目标:有效限制在一个数据项执行读操作所应该返回的值
第三页,共33页。
二、以数据为中心的一致性模型
(a)不使用同步操作的一致性模型 (b)使用同步操作的一致性模型
一致性
描述
严格一致性
所有共享访问事件必须按绝对时间严格排序
线性一致性
所有进程看到的共享访问必须是同一顺序。访问则是按照全局时间戳排序。
顺序一致性
所有进程看到的共享访问必须是同一顺序。访问不是按时间戳排序。
因果一致性
所有进程以相同顺序看到的有因果关系的共享访问
FIFO
各进程按自己的队列方式对写操作排序,这个顺序对所有进程可见,但来自不同进程的对共享写操作的排序有可能不一样。
(a)
一致性
描述
弱一致性
至少执行一次同步后,共享数据才被认为是一致的。
释放一致性
退出临界区后,执行共享数据一致性操作
入口一致性
进入临界区时,执行属于该临界区的共享数据的一致性操作。
(b)
第四页,共33页。
三、以客户为中心的一致性模型
第五页,共33页。
1、最终一致性
在许多分布式系统的数据存储中
不会出现同时发生的更新操作
或者发生同时更新时,可以容易化解它们
大部分操作是读操作
提供一种很弱的一致性模型,称为最终一致性模型
例:
DNS系统中,各域由各自机构管理,不会出现写-写冲突,只需处理读-写冲突。
在Web中,通常浏览器或者web代理在本地高速缓存保存一份已下载的页面,但有可能过时,然而这种不一致性对客户来说是可以接受的。
第六页,共33页。
最终一致性
特点:
如果在一段很长的时间内没有更新操作,那么所有副本将逐渐成为一致的
这种形式的一致性就称为最终一致性
最终一致性实际上只要求更新操作被保证传播到所有副本上。
最终一致性在
客户总是访问同一个副本时,没有任何问题
如果客户访问不同的副本时,就会出现问题
第七页,共33页。
移动用户访问分布式数据库的不同副本
第八页,共33页。
2、以客户为中心的一致性
以客户为中心的一致性
有效解决最终一致性模型中客户对不同副本访问的问题
基本思想:
为单一的客户提供一致性保证,保证该客户对数据存储的访问一致
不保证不同客户并发访问的一致性
四种模型
单调读
单调写
写后读
读后写
第九页,共33页。
单调读
定义:如果一个进程读取数据项x的值,那么它对x执行的任何后续读操作总是得到第一次读取的值或者更新的值。
保证进程不会读到比以前读的值更老的版本。
第十页,共33页。