NWR协议

274 阅读1分钟

NWR协议是什么?

NWR是一种在分布式存储系统中用于控制一致性级别的一种策略。在亚马逊的云存储系统中,就应用NWR来控制一致性
N:在分布式存储系统中,有多少份备份数据
W:代表一次成功的更新操作要求至少有w份数据写入成功
R:代表一次成功的读数据操作要求至少有R份数据成功读取
NWR值的不同组合会产生不同的一致性效果,当W+R>N的时候,整个系统对于客户端来讲能保证强一致性
举个例子:
N=3表示,任何一个对象都必须有三个副本
W=2表示,对数据的修改操作只需要在3个副本中的2个上面完成就返回
R=2表示,从三个对象中要读取到2个数据对象,才能返回
不难理解,每次读数据都能读到至少一份最新的副本,从而保证数据的强一致性
而当R+W<=N,无法保证数据的强一致性