[发明专利]一种分布式文件系统中的副本管理方法有效
申请号: | 201210008166.9 | 申请日: | 2012-01-12 |
公开(公告)号: | CN102609454A | 公开(公告)日: | 2012-07-25 |
发明(设计)人: | 张明富;颜秉珩 | 申请(专利权)人: | 浪潮(北京)电子信息产业有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 栗若木;曲鹏 |
地址: | 100085 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 文件系统 中的 副本 管理 方法 | ||
技术领域
本发明涉及云计算云存储领域,具体涉及一种分布式文件系统中的副本管理方法。
背景技术
云存储是在云计算(cloud computing)基础上延伸和发展出来的一个新概念,是指通过集群应用、网络技术和分布式文件系统等技术,将网络中大量不同类型的存储设备进行整合利用,形成统一的存储池对外提供存储服务。
分布式文件系统作为云存储的核心组成部分在近几年中有了长足的发展。在分布式文件系统中,在多副本冗余的情况下进行副本更新可能会导致主节点和块节点副本间的数据不一致。
发明内容
本发明要解决的技术问题是如何在分布式文件系统中维护副本的一致性。
为了解决上述问题,本发明提供了一种分布式文件系统中的副本管理方法,包括:
在块节点向主节点重新注册时,根据块节点上副本的状态重新设置主节点上相应副本的状态;若块节点上的副本受损,则将主节点上相应副本设置为错误状态;若块节点上的副本将要移除,则将主节点上相应副本设置为即将移除正确状态;若块节点上的副本正常,则将主节点上相应副本设置为正确状态。
进一步地,所述的方法还包括:
新建副本时将该副本设置为忙状态,如果新建成功则将该副本转换为正确状态,新建失败则将该副本转换为错误状态。
进一步地,所述的方法还包括:
更新正确状态的副本时,将该副本转换为忙状态;更新成功则将该副本转换为正确状态,更新失败则将该副本转换为错误状态;
更新即将移除正确状态的副本时,将该副本转换为即将移除忙状态;更新成功则将该副本转换为即将移除正确状态,更新失败则该将副本转换为错误状态。
进一步地,所述的方法还包括:
主节点周期性检测各副本的状态,将处于错误状态的副本设置为删除状态;对处于正确状态或即将移除正确状态的副本,若该副本对应的文件节点已经删除,则将该副本设置为删除状态。
进一步地,所述的方法还包括:
在主节点周期性检测时,对处于删除状态的副本,向块节点发出删除该副本的命令;若块节点删除该副本成功,则释放掉该副本的数据结构;若块节点删除该副本失败,则保持该副本为删除状态不变。
进一步地,所述的方法还包括:
在主节点周期性检测时,比较正确状态的副本数和预期要求副本数goal,如果正确状态的副本数大于goal,则将多余的正确状态的副本设置为删除状态。
进一步地,如果正确状态的副本数小于goal,则新建相应数量的副本;新建副本时,以正确状态的副本为源进行复制,若不存在正确状态的副本则以即将移除正确状态的副本为源进行复制。
进一步地,所述的方法还包括:
在主节点周期性检测时,判断处于正确状态和即将删除正确状态的副本数之和是否大于预期要求副本数goal,如果是则将多余的即将删除正确状态的副本设置为删除状态。
本发明的技术方案根据分布式文件系统的实际操作对相关副本进行状态标记,维护副本一致性;本发明的优化方案定义了错误状态、删除状态、忙状态、正确状态、即将移除忙状态、即将移除正确状态六种副本状态,并定期检查这些副本,完成副本状态的转换,从而达到周期性维护副本一致性的目的,而且使分布式文件系统具有较好的自我容错能力;本发明的又一优化方案通过自动完成副本的拷贝、恢复、删除工作,来保证合法副本数等于预期设置。
附图说明
图1是实施例一中副本各状态及其转换示意图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。
实施例一,一种分布式文件系统中的副本管理方法,包括:
在块节点向主节点重新注册(比如重启了块节点)时,根据块节点上副本(即块文件)的状态重新设置主节点上相应副本的状态;若块节点上的副本受损(比如块节点上块文件被意外删除),则将主节点上相应副本设置为错误状态;若块节点上的副本将要移除(比如要将块节点从分布式文件系统中移除,此时会将其上的块文件标定为移除状态),则将主节点上相应副本设置为即将移除正确状态;若块节点上的副本正常,则将主节点上相应副本设置为正确状态。
如果主节点上副本当前状态就和要设置的一致(比如块节点上的副本正常,而主节点上相应副本当前状态就是正确状态),则保持原来状态即可。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮(北京)电子信息产业有限公司,未经浪潮(北京)电子信息产业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210008166.9/2.html,转载请声明来源钻瓜专利网。