[发明专利]一种受损文件的恢复方法和装置无效
申请号: | 200910224773.7 | 申请日: | 2009-11-17 |
公开(公告)号: | CN102063438A | 公开(公告)日: | 2011-05-18 |
发明(设计)人: | 朱国云;黄贵;蔡景现 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F11/10 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 逯长明;王宝筠 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 受损 文件 恢复 方法 装置 | ||
技术领域
本申请涉及分布式文件系统领域,特别是涉及一种受损文件的恢复方法和装置。
背景技术
随着Internet的不断发展,互联网上的数据成爆发性增长,形成海量数据。而承载有海量数据的文件很容易因为系统故障、文件所在的磁盘损坏等原因而被损坏,无法被正常读取。其中,在DFS(Distributed File System,分布式文件系统)中,每个文件都以多个备份文件的形式存在,例如,系统中存在内容相同的三个文件f1、f2和f3,这三个文件互为备份文件,也就是说,可以将文件f2和文件f3作为文件f1的备份文件,也可以将文件f1和文件f3作为文件f2的备份文件。在DFS中,一个磁盘构成了一个数据节点,各个备份文件存放在不同的数据节点上。即,各个备份文件在数据节点上是交叉存放的。例如,文件f存放在数据节点A、B和C上,而文件g存放在数据节点C、D和E上。一旦出现被损坏的文件后,系统就会根据该受损文件的备份文件重新恢复该受损文件,以保证在DFS内的数据安全性。
在现有的DFS中,采用单机系统中的恢复机制对受损文件进行恢复。例如,当DFS中共有1000个磁盘时,就会将一定数目的实际磁盘作为一个RAID(Redundant Array of Independent Disk,独立冗余磁盘阵列)卡,如将5个实际磁盘做成一个RAID盘,则DFS中的1000个实际磁盘会被作为200个RAID盘。一旦检测到RAID盘上的一个磁盘被损坏后,该受损磁盘上的所有文件也都损坏,与该受损磁盘所对应的数据节点也就失效。此时,就会启用一个新磁盘,并从RAID盘的其他4个正常工作的磁盘上分别读取受损磁盘上所有受损文件的备份文件,将读取的各个备份文件分别写入新磁盘中,完成受损文件的恢复工作。
但是,发明人在研究中发现,在现有的受损文件恢复过程中,通常需要人工来更换新磁盘,并且,由于磁盘是现有系统中访问速度最慢的设备之一,因此,导致这种恢复过程耗时较长,基本上都会在一个小时以上。如果恢复时间较长,很有可能在恢复期间另有其他的磁盘损坏,这会进一步造成数据丢失。
发明内容
为了解决上述技术问题,本申请实施例提供了一种受损文件的恢复方法和装置,以减少受损文件的恢复时间。
本申请实施例公开公开了如下技术方案:
一种受损文件的恢复方法,包括:当一个数据节点失效时,查找失效数据节点上所有文件的名称和所有文件的备份文件所在的数据节点名称;分别从所述数据节点名称所指示的备份文件所在的数据节点上任意选择一个数据节点,并从选择的数据节点中读取备份文件;将读取的备份文件同时写入分布式文件系统中除所述失效数据节点和备份文件所在的数据节点之外的其它任意一个数据节点中。
一种受损文件的恢复方法,包括:当数据节点上的一个文件损坏时,获取受损文件的备份文件所在的数据节点名称;从获取的数据节点名称所指示的数据节点上任意选择一个数据节点,并从选择的数据节点中读取备份文件;将读取的所述备份文件写入所述受损文件所在数据节点中除所述受损文件所占区域之外的其它任意区域中。
一种受损文件的恢复装置,包括:查找单元,用于当一个数据节点失效时,查找失效数据节点上所有文件的名称和所有文件的备份文件所在的数据节点名称;第一读取单元,用于分别从所述数据节点名称所指示的数据节点上任意选择一个数据节点,并从选择的数据节点中读取备份文件;第一恢复单元,用于将读取的备份文件同时写入分布式文件系统中除所述失效数据节点和备份文件所在的数据节点之外的其它任意一个数据节点中。
一种受损文件的恢复装置,包括:获取单元,用于当数据节点上的一个文件损坏时,获取受损文件的备份文件所在的数据节点名称;第二读取单元,用于从获取的数据节点名称所指示的数据节点上任意选择一个数据节点,并从选择的数据节点中读取备份文件;第二恢复单元,用于将读取的所述备份文件写入所述受损文件所在数据节点中除所述受损文件所占区域之外的其它任意区域中。
由上述实施例可以看出,当整个数据节点失效时,在本申请的DFS系统中,可以采用分布式的形式同时将失效节点上受损文件的备份文件写入其它的数据节点上,与现有的只能将受损的文件集中写入一个新的磁盘或者数据节点相比,大大提高了恢复速度,减少了受损文件的恢复时间。
另外,当某个数据节点上的单个文件受损时,本申请还提供了一种能够对单个受损文件进行恢复的方法,与现有技术中只能提供对失效节点上的受损文件进行恢复的方法相比,当单个文件受损时就可被恢复,可以避免整个DFS系统出错的几率。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910224773.7/2.html,转载请声明来源钻瓜专利网。