【技术实现步骤摘要】
数据恢复方法、系统、设备及存储介质
[0001]本申请涉及计算机
,尤其涉及一种数据恢复方法、系统、设备及存储介质。
技术介绍
[0002]纠删码(Erasure Code)是一种编码容错技术,用于在部分数据丢失时,恢复原始数据。纠删码可在保证可靠性的同时占用更少的存储空间,因而被广泛地应用于分布式存储系统中。基于纠删码技术,可根据K个原始数据块计算生成M个校验数据块。当任意数据块丢失时,可采用剩余的至少K个数据块对丢失的数据块进行数据恢复。
[0003]在分布式存系统中,K+M个数据块存储在的数据存储节点中,当任意数据块丢失时,客户端需向至少K个数据存储节点发送降级读请求,并等待该至少K个数据存储节点均返回数据块后再进行数据恢复。在上述过程中,出现部分降级读请求的时延远大于平均时延(即请求毛刺)的概率较高。因此,有待提出一种新的解决方案。
技术实现思路
[0004]本申请的多个方面提供一种数据恢复方法、系统、设备及存储介质,用以优化降级读请求的中的请求毛刺的概率。
[0005]本申请实 ...
【技术保护点】
【技术特征摘要】
1.一种数据恢复方法,其中,目标数据的多个数据块存储在存储系统的多个存储节点上;所述多个数据块包括:所述目标数据的第一数量的原始数据块以及所述第一数量的原始数据块生成的校验数据块;所述方法包括:检测到存储系统存在任一异常存储节点时,从所述存储系统的未异常存储节点中,确定第一节点集以及第二节点集;所述第一节点集中的存储节点的数量大于或等于所述第一数量;向所述第一节点集中的存储节点发送针对所述异常存储节点中的异常数据块的降级读请求,以及,采用预设的流量控制策略,向所述第二节点集中的目标存储节点发送所述降级读请求;接收到所述第一节点集和/或所述目标存储节点中的第二数量的存储节点返回的数据块时,根据所述第二数量的存储节点返回的数据块,对所述异常数据块进行数据恢复;所述第二数量,大于或者等于所述第一数量。2.根据权利要求1所述的方法,其中,从所述存储系统的未异常存储节点中,确定第一节点集以及第二节点集,包括:确定所述存储系统的访问压力;根据所述存储系统的访问压力,从所述存储系统的未异常存储节点中,确定大于或等于所述第一数量的存储节点,得到所第一节点集;以及,将所述未异常存储节点中除所述第一节点集之外的存储节点,作为所述第二节点集。3.根据权利要求1所述的方法,其中,采用预设的流量控制策略,向所述第二节点集中的目标存储节点发送降级读请求,包括:若设定时间范围内接收到的与所述异常数据块关联的数据块的数量小于所述第二数量,则采用预设的流量控制策略,向所述第二节点集中的目标存储节点发送降级读请求。4.根据权利要求1所述的方法,其中,采用预设的流量控制策略,向所述第二节点集中的目标存储节点发送降级读请求,包括:将针对所述第二节点集中的存储节点的降级读请求添加到流量控制队列中;在所述存储系统满足预设的流量控制条件时,从所述流量控制队列中选取所述目标存储节点对应的降级读请求;向所述目标存储节点发送对应的降级读请求。5.根据权利要求4所述的方法,其中,所述流量控制条件,包括:在...
【专利技术属性】
技术研发人员:魏舒展,赵亚飞,吴益群,董元元,
申请(专利权)人:阿里巴巴中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。