[发明专利]分布式存储系统中的数据重建的方法、装置和系统有效
申请号: | 201580044798.2 | 申请日: | 2015-12-31 |
公开(公告)号: | CN106662983B | 公开(公告)日: | 2019-04-12 |
发明(设计)人: | 曾永强 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 存储系统 中的 数据 重建 方法 装置 系统 | ||
1.一种分布式存储系统中数据重建的方法,其特征在于,包括:
第一存储节点获取待写入数据以及所述待写入数据的键key值,刷新所述key值对应的版本号,对所述待写入数据进行纠删码EC编码,生成EC条带,所述EC条带包括m+k个EC块,其中m个EC块为数据块,k个EC块为校验块,m为大于等于2的正整数,k为自然数;
所述第一存储节点查询分区视图,确定所述待写入数据所在的分区对应的备存储节点,其中,所述第一存储节点为所述分区对应的主存储节点,第二存储节点为所述分区对应的其中一个备存储节点;
所述第一存储节点向各备存储节点发送写入请求,所述写入请求携带所述待写入数据所在的分区的分区标识ID、所述待写入数据的key值和版本号,以及分配给各备存储节点的EC块的数据;
当所述第二存储节点写入失败时,所述第一存储节点存储所述分配给所述第二存储节点的EC块的数据,生成与所述分配给所述第二存储节点的EC块对应的元数据信息,所述元数据信息包括所述待写入数据所在的分区的分区ID、所述待写入数据的key值和版本号;
当所述第二存储节点故障恢复后,所述第一存储节点将存储的所述分配给所述第二存储节点的EC块的数据以及所述元数据信息发送给所述第二存储节点,以使得所述第二存储节点进行数据重建。
2.如权利要求1所述的方法,其特征在于,在所述第一存储节点存储所述分配给所述第二存储节点的EC块的数据之前,所述方法还包括:
所述第一存储节点确定写入成功的存储节点的数量大于等于m。
3.如权利要求1所述的方法,其特征在于,所述第一存储节点向各备存储节点发送的写入请求中还携带有分配给各备存储节点的EC块的块内数据偏移和块内数据长度,以使得各存储节点根据接收到的所述写入请求中携带的所述数据偏移和块内数据长度写入所述EC块的数据。
4.如权利要求1所述的方法,其特征在于,在所述第一存储节点将存储的所述分配给所述第二存储节点的EC块的数据以及所述元数据信息发送给所述第二存储节点之前,所述方法还包括:
所述第一存储节点接收所述第二存储节点发送的数据同步请求,所述数据同步请求中携带所述分区ID;
所述第一存储节点从所述第二存储节点获取所述第二存储节点中记录的所述分区ID对应的key值以及与所述key值的版本号;
所述第一存储节点将自身记录的所述分区ID对应的key值以及key值的版本号,与从所述第二存储节点获取的所述分区ID对应的key值以及所述key值的版本号,进行比对,根据比对结果确定需要进行数据重建;
所述第一存储节点根据所述元数据信息,将存储的需要进行数据重建的key值对应的EC块的数据以及所述EC块的元数据信息发送给所述第二存储节点进行数据重建。
5.如权利要求4所述的方法,其特征在于,所述比对包括以下至少一种:
当所述第一存储节点记录的key值对应的版本号与从所述第二存储节点获取的所述key值对应的版本号一致时,无需进行数据重建;
当所述第一存储节点记录的key值中不包含从所述第二存储节点获取的key值时,则通知所述第二存储节点删除所述第一存储节点不包含的所述key值对应的数据;
当所述第一存储节点记录的key值对应的版本号大于从所述第二存储节点获取的所述key值对应的版本号时,执行数据重建操作;或,
当所述第一存储节点记录的key值中不包含在从所述第二存储节点获取的key值中时,则通知所述第二存储节点重建所述第二存储节点不包含的所述key值对应的数据。
6.如权利要求3所述的方法,其特征在于,在所述第二存储节点故障恢复后,还包括:
所述第二存储节点根据所述分配给所述第二存储节点的EC块的块内数据偏移和块内数据长度,将所述EC块的数据写入到磁盘中,更新所述待写入数据的key值对应的版本号。
7.如权利要求2所述的方法,其特征在于,还包括:
以m个EC块的大小为粒度将所述待写入数据的逻辑卷的存储地址进行等分,得到多个存储单元,为所述多个存储单元分配数据偏移标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580044798.2/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置