Quorum (分布式系统)

✍ dations ◷ 2025-02-23 10:12:23 #投票,算法

Quorum 机制,是一种分布式系统中常用的,用来保证数据冗余和最终一致性的投票算法,其主要数学思想来源于鸽巢原理。

在有冗余数据的分布式存储系统当中,冗余数据对象会在不同的机器之间存放多份拷贝。但是同一时刻一个数据对象的多份拷贝只能用于读或者用于写。

该算法可以保证同一份数据对象的多份拷贝不会被超过两个访问对象读写。

算法来源于。 分布式系统中的每一份数据拷贝对象都被赋予一票。每一个读操作获得的票数必须大于最小读票数(read quorum)(Vr),每个写操作获得的票数必须大于最小写票数(write quorum)(Vw)才能读或者写。如果系统有V票(意味着一个数据对象有V份冗余拷贝),那么最小读写票数(quorum)应满足如下限制:

第一条规则保证了一个数据不会被同时读写。当一个写操作请求过来的时候,它必须要获得Vw个冗余拷贝的许可。而剩下的数量是V-Vw 不够Vr,因此不能再有读请求过来了。同理,当读请求已经获得了Vr个冗余拷贝的许可时,写请求就无法获得许可了。

第二条规则保证了数据的串行化修改。一份数据的冗余拷贝不可能同时被两个写请求修改。

在分布式系统中,冗余数据是保证可靠性的手段,因此冗余数据的一致性维护就非常重要。一般而言,一个写操作必须要对所有的冗余数据都更新完成了,才能称为成功结束。比如一份数据在5台设备上有冗余,因为不知道读数据会落在哪一台设备上,那么一次写操作,必须5台设备都更新完成,写操作才能返回。

对于写操作比较频繁的系统,这个操作的瓶颈非常大。Quorum算法可以让写操作只要写完3台就返回。剩下的由系统内部缓慢同步完成。而读操作,则需要也至少读3台,才能保证至少可以读到一个最新的数据。

Quorum的读写最小票数可以用来做为系统在读、写性能方面的一个可调节参数。写票数Vw越大,则读票数Vr越小,这时候系统读的开销就小。反之则写的开销就小。

相关

  • 多纳托·伯拉孟特多纳托·伯拉孟特(意大利语:Donato Bramante,约1444年-1514年3月11日)是意大利文艺复兴时期著名的建筑师,他将古罗马建筑转化为文艺复兴时期的建筑语言,在当时就被视为极富影响力
  • 北京法政大学国立北京法政大学,常简称为北京法政大学,是一所已不存在的大学。北京法政大学的前身是1912年由京师法律学堂、京师法政学堂,以及京师财政学堂三校合并成立的“北京法政专门学校
  • 西山西山可以指:
  • 四氯化碲四氯化碲是一种无机化合物,化学简式为TeCl4。它具有挥发性,在200 °C(0.1 mm Hg)升华。熔融的TeCl4是离子化合物,可以解离为TeCl3+和Te2Cl102−。TeCl4在气相为单体,和SF4的结构
  • 金孝珍 (歌手)金孝珍(韩语:김효진,艺名JeA,1981年9月18日-),为韩国团体Brown Eyed Girls的队长,2015年8月底和NEGANETWORK的合约到期后决定不续约,目前隶属于APOP娱乐。近年来身为团体成员并兼任专
  • 足立真梨子足立真梨子(日语:足立 真梨子/あだち まりこ ,1983年7月21日-),日本女子铁人三项运动员。大阪府枚方市出身,毕业于东香里中学校、太成高校及同志社大学。2010年11月,足立代表日本出
  • 猪獾猪獾(学名),是鼬科猪獾属的中型哺乳动物。体长可达70厘米,毛褐色,身体粗壮,喉部白色,面部有两条黑色的条纹。猪獾主要分布于南亚的热带雨林中,与獾相似,身体略小,前爪则更大,利于捕食。
  • 艾玛·麦基艾玛·玛格丽特·塔沙尔-麦基(英语:Emma Margaret Tachard-Mackey,1996年1月4日-)是一名法国女演员,其知名作品是在网飞原创剧集《性爱自修室》中主演梅芙·威利(Maeve Wiley)。她出
  • 安东尼·拉帕里亚Cherie Michan (离婚) Gia Carides (1998-2015) 安东尼·拉帕里亚(Anthony M. LaPaglia,1959年1月31日-)是澳大利亚的一位演员。他出演过的主要电影有终极证人。
  • 抗还原剂抗还原剂(英语:antireducer),就是一种作用与抗氧化剂相反的物质。它们具有氧化性,能防止其他物质被还原。抗还原剂包括:高锰酸钾、重铬酸钾、氟气等等。