[发明专利]数据一致性的处理方法、装置和设备有效
申请号: | 201610814281.3 | 申请日: | 2016-09-09 |
公开(公告)号: | CN107809326B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 董元元;石超;吴均平 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L29/08;H04L12/26 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 杨贝贝;刘芳 |
地址: | 开曼群岛大开曼*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据一致性 处理 方法 装置 设备 | ||
本申请提供一种数据一致性的处理方法、装置和设备。该方法包括:中心管理服务器根据所存储的数据的标记版本和当前每个从副本服务器上存储的数据副本的版本,从当前从副本服务器中确定第一副本服务器;其中,所述标记版本为所述主副本服务器上的数据副本的当前版本;所述中心管理服务器确定所述第一副本服务器为新的主副本服务器,以使所述新的主副本服务器执行数据一致性更新流程。本申请实施例的方法,大大提高了分布式存储系统的故障容忍能力。
技术领域
本申请涉及数据存储技术,尤其涉及一种数据一致性的处理方法、装置和设备。
背景技术
在分布式存储系统中,一般会将一个数据块存储多个副本,每个副本存储在不同的副本服务器上,并针对同一个数据块,在数据更新过程中,分布式存储系统需要确保每个副本服务器上的数据副本一致,从而达到对磁盘、网络或服务器等故障的容错,提高系统可用性及性能等目的。
现有技术中的数据更新过程主要基于Paxos协议或其演进,具体为:从多个副本服务器中选举一个作为主副本服务器,其余作为从副本服务器,每个数据块均对应一个Epoch信息,该Epoch信息主要表征该数据块存储在哪些副本服务器上(即该数据块的成员列表)以及这些副本服务器的主从关系。针对一个数据块来说,其数据更新请求先由主副本服务器接收和处理,主副本服务器对该数据块的所有更新请求,统一定序并为每个更新请求分配数据副本的版本,并携带该数据块的Epoch信息;然后主副本服务器再转发至从副本服务器处理。当大多数从副本服务器返回更新成功响应时(满足大多数原则),即使少数从副本服务器因为网络故障或者其他原因,无法处理更新请求,则主副本服务器仍然确定本次数据更新成功,而上述少数的从副本服务器上的数据副本的版本与其他更新成功的副本服务器上的数据副本的版本不一致。当这些少数的副本服务器恢复正常时,主副本服务器可以通过向其发送增量数据复制请求,来促使这些少数的副本服务器将其自身的数据副本的版本恢复成与主副本服务器的数据版本一致。
当主副本服务器发生宕机时,为了达到容错和高可用的目的,需要重新选举新的主副本服务器,从而基于新的主副本服务器进行数据恢复和更新。假设副本服务器总数为2N+1,现有技术在选举新的主副本服务器时,其最多只能允许宕机的副本服务器个数为N个,若宕机的副本服务器个数超过N个,则现有技术无法准确选择出新的主副本服务器,从而无法准确的实现数据副本的一致性,因此,现有技术的数据一致性恢复方案,其故障容忍能力低。
发明内容
本申请提供一种数据一致性的处理方法、装置和设备,用以解决现有技术中在主副本服务器发生宕机,并且分布式存储系统需要进行数据恢复一致性时,故障容忍能力低的技术问题。
一个方面,本申请实施例提供一种数据一致性的处理方法,包括:
中心管理服务器根据所存储的数据的标记版本和当前每个从副本服务器上存储的数据副本的版本,从当前从副本服务器中确定第一副本服务器;其中,所述标记版本为所述主副本服务器上的数据副本的当前版本;
所述中心管理服务器确定所述第一副本服务器为新的主副本服务器,以使所述新的主副本服务器执行数据一致性更新流程。
上述提供的数据一致性的处理方法,通过中心管理服务器根据所存储的数据的标记版本和当前每个从副本服务器上存储的数据副本的版本,从当前从副本服务器中确定第一副本服务器,从而确定该第一副本服务器为新的主副本服务器,以使所述新的主副本服务器基于该标记版本执行数据一致性更新流程。本申请实施例的方法,通过在中心管理服务器上存储标记版本,当主副本服务器宕机时,中心管理服务器可以基于当前存储的标记版本,准确的选择新的主副本服务器,当分布式存储系统的副本服务器的总数为2N+1 时,即使主副本服务器以及其他2N-1个从副本服务器全部宕机,中心管理服务器也可以基于标记版本准确的选择出新的主副本服务器,从而基于该新的主副本服务器进行数据恢复以及后续的数据更新,其大大提高了分布式存储系统的故障容忍能力。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610814281.3/2.html,转载请声明来源钻瓜专利网。