Quorum (分布式系统)

✍ dations ◷ 2025-11-29 22:29:07 #投票,算法

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

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

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

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

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

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

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

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

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

相关

  • 米糠米糠是稻米加工中碾米工序得到的一种黄色的皮层,是稻米果实的皮层,也称为米皮、清糠。入药用的谷糠,多指米皮糠而言。一般中药选用的是米皮糠的内衣,中医称为“杵头糠”,又称“谷
  • 硫酸亚铁硫酸亚铁、硫酸铁(II)是化学式为FeSO4的无机化合物,最常使用的是它蓝绿色的七水合物。无水晶体的标准摩尔生成焓为ΔfH°solid = -928.4 kJ.mol-1,标准摩尔熵S°solid = 107.5
  • 独立机关独立机关,亦称“独立机构”,是政府机构的一种类型。为了让政府组织更有效率、更加专业,并且兼具弹性,独立机关的建制是主要发达国家考量的组织型态之一。而其业务的职掌应该兼顾
  • 超短波无线电波是频率介于3赫兹和约300吉赫之间的电磁波,也作射频电波,或简称射频、射电。无线电技术将声音讯号或其他信号经过转换,利用无线电波传播。射频技术也用在核磁共振及磁振
  • 巴布烟群岛巴布延群岛,是菲律宾北部的一个群岛,北隔巴林塘海峡与巴丹群岛相望,南隔巴布延海峡与吕宋岛相望。该群岛由加拉延岛、甘米银岛、富加岛、巴布延岛和达卢皮里岛5个大岛和一些小
  • 王丽坤王丽坤(1985年3月22日-),出生于内蒙古自治区赤峰市翁牛特旗,满族,中国大陆女演员。从小学习舞蹈,毕业于北京舞蹈学院2000级中国民族民间舞系。2004年被徐克导演选中出演电视剧《七
  • 加利福尼亚州众议院加利福尼亚州众议院(英语:California State Assembly)是美国加利福尼亚州议会的下议院。加利福尼亚州州众议院共有80名议员,每届任期2年。加利福尼亚州州众议院领导人为议长。现
  • 灵可以指:
  • 旁苏托尼旁苏托尼(Punxsutawney)是一个隶属于美国宾夕凡尼亚州杰佛逊县的城镇,位于匹兹堡东北方约135公里,人口约5,962人。该镇最著名的为土拨鼠日的活动。每年的2月2日土拨鼠日,都会由当
  • 球花豆属球花豆属(学名:)是豆目豆科下的一个属,为无刺乔木植物。该属共有约60种,产自热带地区。