注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

老狗的博客

尽管每一步都很微小,但我确认我在进步

 
 
 

日志

 
 
关于我
sky

认真生活,努力工作 热爱技术,关注DB,存储,分布式,中间层,java,c++,php

网易考拉推荐

分布式学习笔记  

2012-07-23 14:03:47|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
CAP理论

2000年,Eric Brewer 教授(University of California,Berkeley)提出

2002年,  Seth Gilbert & Nancy Lynch (MIT)证明这一理论


Consistency: 读操作总是能够读取到之前完成的写操作的结果
Avaliablity: 每一个操作总是能够在确定的时间内返回
Partition-tolerance: 在出现网络分区的情况下,仍然能够满足一致性和可用性

Consistency【一致性】
amazon CTO在其官网中阐述了一致性模型:

场景进行描述:
存储系统: 可以理解为黑盒,可以进行read 或者 write操作
sessionA/sessionB/sessionC: 前端系统和存储系统之间建立的连接,进行读写操作,可能是独立的进程也可能是独立的线程,取决于系统的实现,

强一致性:
如果sessionA进行了一次写入操作,wirte(v1), 
则存储系统保证后续sessionA, sessionB, sessionC的读取操作都能返回v1的最新值

弱一致性:
如果sessionA进行了一次写入操作,write(v1),
存储系统不能保证sessionA,sessionB, sessionC都读取到最新值,在这种情况下存在不一致性窗口

最终一致性:
最终一致性是弱一致性的一种,如果sessionA进行了一次写入操作write(v1),
存储系统在对于变量v1的更新序列的情况下,保证最后sessionB,sessionC都将读取到v1的最新值,在最终一致性中,不一致性窗口取决于:交互延迟,系统负载,副本的个数等

NWR策略:
N:副本个数
W: 每次写操作需要写的副本数目
R:  每次读操作需要读的副本数目

如果W+R > N则可以保证强一致性

例子: 
N = 3, W = 2, R=2, 则每次写操作,需要操作两个副本,每次读操作,需要读取2个节点选取最新的作为数据返回


一致性哈希

paxos



  评论这张
 
阅读(148)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018