大数据基础理论—副本更新策略

本文探讨大规模分布式存储系统的副本更新策略,包括同时更新、主从更新和任意节点更新。主从更新中,主副本负责协调更新顺序,确保一致性。任意节点更新则面临更新冲突问题。各种策略在一致性和可用性之间寻找平衡。
摘要由CSDN通过智能技术生成

0. 前言

一般的大规模分布式存储系统都会将一份数据备份多份存储在不同的机器上用来容错增加可用性,同时也可以增加读操作的并发度。但是这样也带来了一致性的问题,需要保证多个副本之间的数据一致,这个时候就需要按照一定的策略或者协议进行副本更新。本节主要阐述一些常见的副本更新策略,其中使用到的一致性协议将在后续文章进行详细阐明。

1. 同时更新

  • 类型A,不通过任何一致性协议直接同时进行多个副本的更新。这种方式会存在不一致问题,例如,如果同一时刻有两个客户端同时进行更新操作,那么系统无法判断更新的顺序。
  • 类型B,通过某种一致性协议预先进行处理,一致性协议用于唯一确定不同更新操作的执行顺序,以此来保证一致性,但是这样会存在一定的延迟。

2. 主从更新

在多个副本中存在一个主副本,其他副本为从副本,那么就可以进行主从更新。所有对该数据的更新操作都是先提交至主副本,然后由主副本通知其他副本进行数据更新,如果同时有多个更新操作,那么由主副本决定更新的顺序。

  • 类型A,主副本等待所有从副本更新完成之后才确认更新操作完成,这样可以保证强一致性但是会存在一定的请求延迟。
  • 类型B,异步方式,主副本在通知从副本更新前即可确认更新操作。为了防止主副本还没有通知从副本就崩溃,所以一般会首先在另外可靠的存储位置将更新操作记录下来。这种方式是请求延迟和一致性之间的一种权衡。如果所有的读操作都通过主副本进行响应,即任意一个从副本收到读请求后都将其转发给主副本,这样可以保证数据的强一致性(谷歌的chubby采用这种方式)。如果任意一个副本都可以进行请求响应,那
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值