分布式文件系统中小文件的修复方法和装置的制造方法

文档序号:9810391阅读:421来源:国知局
分布式文件系统中小文件的修复方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,尤其涉及分布式文件系统中小文件的修复方法和装置。
【背景技术】
[0002]对于分布式文件系统,每块磁盘上可以存储大量文件。对于小文件而言,每块磁盘上存储的数据量更加可观。当磁盘出现故障时,会造成大量小文件出现部分数据不可用的情况。分布式文件系统会对存在故障的小文件进行修复。
[0003]分布式文件系统对磁盘故障的容忍能力有限,为了避免修复完成前,由于系统中产生新的故障造成某些小文件的完全损坏,需要在尽可能短的时间内,对存在故障的小文件进行修复。
[0004]目前,分布式文件系统中小文件的修复方法为:对每个小文件,进行读取、修复。当修复的小文件个数较多时,目前的方法会造成磁盘上大量小块随机读取,由于分布式文件系统采用的存储介质在进行小块随机读取时性能较低,会导致修复性能偏低。

【发明内容】

[0005]为解决上述问题,本发明实施例提出了一种分布式文件系统中小文件的修复方法和装置。
[0006]—方面,本发明实施例提供了一种分布式文件系统中小文件的修复方法,包括:
[0007]确定出现故障的第一逻辑盘,所述第一逻辑盘中包含待修复的第一小文件;
[0008]确定包含所述第一逻辑盘的第一逻辑盘组,所述第一逻辑盘组包含的逻辑盘中存储与所述第一小文件相关的第二小文件;
[0009]批量读取所述第一逻辑盘组上所有第二小文件;
[0010]根据所述第二小文件修复所述第一小文件。
[0011 ]可选地,所述第二小文件为所述第一小文件和所述第一小文件的备份小文件,或所述第一小文件和与所述第一小文件为同一文件的部分数据形成的小文件,或所述第一小文件、所述第一小文件的备份小文件和与所述第一小文件为同一文件的部分数据形成的小文件。
[0012]可选地,所述确定出现故障的第一逻辑盘之前,还包括:
[0013]将磁盘切分为至少一个第二逻辑盘;
[0014]将存储第三小文件的第二逻辑盘组成第二逻辑盘组;
[0015]所述第二逻辑盘组中存储的第三小文件互为相关。
[0016]可选地,所述第二逻辑盘组中存储的第三小文件互为相关,包括:所述第二逻辑盘组中存储的所有第三小文件互为备份,或所述第二逻辑盘组中存储的所有第三小文件为同一文件的部分数据形成的小文件,或所述第二逻辑盘组中存储的第三小文件中一部分互为备份,另一部分为同一文件的部分数据形成的小文件。
[0017]可选地,若组成第二逻辑盘组的第二逻辑盘为多个,则组成所述第二逻辑盘组的第二逻辑盘位于不同节点上。
[0018]可选地,节点出现故障,所述确定出现故障的第一逻辑盘,包括:
[0019]确定出现故障的节点上的各磁盘;
[0020]确定各磁盘切分出的第三逻辑盘;
[0021 ]将所有第三逻辑盘均作为第一逻辑磁盘。
[0022] 可选地,磁盘出现故障,所述确定出现故障的第一逻辑盘,包括:
[0023 ]确定出现故障的磁盘切分出的第四逻辑盘;
[0024]将所有第四逻辑盘均作为第一逻辑磁盘。
[0025]可选地,所述根据所述第二小文件修复所述第一小文件之后,还包括:
[0026]将修复后的第一小文件写入第五逻辑盘,所述第五逻辑盘与所述第一逻辑盘的盘号相同,所述第五逻辑盘的物理位置与所述第一逻辑盘的物理位置不同;
[0027]将所述第一逻辑盘映射至所述第五逻辑盘。
[0028]另一方面,本发明实施例提供了一种分布式文件系统中小文件的修复装置,包括:
[0029]第一确定模块,用于确定出现故障的第一逻辑盘,所述第一逻辑盘中包含待修复的第一小文件;
[0030]第二确定模块,用于确定包含所述第一确定模块确定的第一逻辑盘的第一逻辑盘组,所述第一逻辑盘组包含的逻辑盘中存储与所述第一小文件相关的第二小文件;
[0031 ]读取模块,用于批量读取所述第二确定模块确定的第一逻辑盘组上所有第二小文件;
[0032]修复模块,用于根据所述读取模块读取的第二小文件修复所述第一小文件。
[0033]可选地,所述第二小文件为所述第一小文件和所述第一小文件的备份小文件,或所述第一小文件和与所述第一小文件为同一文件的部分数据形成的小文件,或所述第一小文件、所述第一小文件的备份小文件和与所述第一小文件为同一文件的部分数据形成的小文件。
[0034]可选地,所述装置,还包括:
[0035]切分模块,用于将磁盘切分为至少一个第二逻辑盘;
[0036]组合模块,用于将存储第三小文件的第二逻辑盘组成第二逻辑盘组;
[0037]所述第二逻辑盘组中存储的第三小文件互为相关。
[0038]可选地,所述第二逻辑盘组中存储的第三小文件互为相关,包括:所述第二逻辑盘组中存储的所有第三小文件互为备份,或所述第二逻辑盘组中存储的所有第三小文件为同一文件的部分数据形成的小文件,或所述第二逻辑盘组中存储的第三小文件中一部分互为备份,另一部分为同一文件的部分数据形成的小文件。
[0039]可选地,若组成第二逻辑盘组的第二逻辑盘为多个,则组成所述第二逻辑盘组的第二逻辑盘位于不同节点上。
[0040]可选地,节点出现故障,所述第一确定模块,包括:
[0041 ]第一确定单元,用于确定出现故障的节点上的各磁盘;
[0042]第二确定单元,用于确定所述第一确定单元确定的各磁盘切分出的第三逻辑盘;
[0043]第三确定单元,用于将所述第二确定单元确定的所有第三逻辑盘均作为第一逻辑磁盘。
[0044]可选地,磁盘出现故障,所述第一确定模块,包括:
[0045]第四确定单元,用于确定出现故障的磁盘切分出的第四逻辑盘;
[0046]第五确定单元,用于将所述第四确定单元确定的所有第四逻辑盘均作为第一逻辑磁盘。
[0047]可选地,所述装置,还包括:
[0048]写入模块,用于将修复后的第一小文件写入第五逻辑盘,所述第五逻辑盘与所述第一逻辑盘的盘号相同,所述第五逻辑盘的物理位置与所述第一逻辑盘的物理位置不同;
[0049]映射模块,用于将所述第一逻辑盘映射至所述第五逻辑盘。
[0050]有益效果如下:
[0051]确定出现故障的第一逻辑盘,第一逻辑盘中包含待修复的第一小文件;确定包含第一逻辑盘的第一逻辑盘组,第一逻辑盘组包含的逻辑盘中存储与第一小文件相关的第二小文件;批量读取第一逻辑盘组上所有第二小文件;根据第二小文件修复第一小文件,使第一逻辑盘组中不同逻辑盘的第二小文件被批量读取、根据第二小文件修复第一小文件,避免逐个读取修复小文件带来的频繁输入操作,从而提高小文件的修复速度,提升修复性能。
【附图说明】
[0052]下面将参照附图描述本发明的具体实施例,其中:
[0053]图1示出了本发明一种实施例中提供的一种分布式文件系统中小文件的修复方法的流程示意图;
[0054]图2示出了本发明另一种实施例中提供的另一种分布式文件系统中小文件的修复方法的流程示意图;
[0055]图3示出了本发明另一种实施例中提供的第一种分布式文件系统中小文件的修复装置的结构示意图;
[0056]图4示出了本发明另一种实施例中提供的第二种分布式文件系统中小文件的修复装置的结构示意图;
[0057]图5示出了本发明另一种实施例中提供的一种第一确定模块的结构示意图;
[0058]图6示出了本
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1