基于元数据的阵列重建方法及装置的制造方法

文档序号:8269687阅读:368来源:国知局
基于元数据的阵列重建方法及装置的制造方法
【技术领域】
[0001]本发明涉及网络通信技术领域,尤其涉及基于元数据的阵列重建方法及装置。
【背景技术】
[0002]随着网络通信技术的发展,所需存储的数据量越来越庞大,使得存储数据量的存储媒介的容量越来越大,比如,大容量的磁盘阵列。在大容量磁盘阵列带来较高的性价比的同时,也使得磁盘数据的安全问题愈加突出,尤其是磁盘阵列重建问题。
[0003]现有技术中,如果磁盘冗余阵列中一块磁盘出现问题时,可以用热备盘进行替换,然后进行数据重建,而且在进行数据重建时,直接按照磁盘的扇区顺序进行重建。
[0004]但是,随着磁盘容量的不断增大,按照磁盘的扇区顺序进行重建时需要的时间随之延长,增加了丢失数据的可能性,降低了重建的可靠性和效率。

【发明内容】

[0005]本发明提供基于元数据的阵列重建方法及装置,以解决现有技术中随着磁盘容量的不断增大,按照磁盘的扇区顺序进行重建时需要的时间随之延长,增加了丢失数据的可能性,降低了重建的可靠性和效率的问题。
[0006]根据本发明实施例的第一方面,提供一种基于元数据的阵列重建方法,所述方法包括:
[0007]接收阵列重建通知;
[0008]根据所述阵列重建通知获取所述阵列的元数据中的各个数据区段信息;
[0009]根据预设的阵列重建策略和所述元数据中的各个数据区段信息对所述元数据对应的各个数据区段进行排序,得到对应的重建链表,并根据所述重建链表依次对所述元数据对应的各个数据区段进行重建。
[0010]根据本发明实施例的第二方面,提供一种基于元数据的阵列重建装置,所述装置包括:
[0011]接收单元,用于接收阵列重建通知;
[0012]获取单元,用于根据所述阵列重建通知获取所述阵列的元数据中的各个数据区段信息;
[0013]重建单元,用于根据预设的阵列重建策略和所述元数据中的各个数据区段信息对所述元数据对应的各个数据区段进行排序,得到对应的重建链表,并根据所述重建链表依次对所述元数据对应的各个数据区段进行重建。
[0014]应用本发明实施例,通过接收阵列重建通知,并根据阵列重建通知获取阵列的元数据中的各个数据区段信息,以及根据预设的阵列重建策略和元数据中的各个数据区段信息对元数据对应的各个数据区段进行排序,得到对应的重建链表,并根据重建链表依次对元数据对应的各个数据区段进行重建,实现了可以根据不同的阵列重建策略对元数据对应的各个数据区段进行重建。由于阵列中的数据的重要性是不同的,可以采用与数据的重要性相关的阵列重建策略优先重建重要性高的数据,从而缩短了重要数据的重建时间,进而保证了重要数据的可靠性与冗余性。
【附图说明】
[0015]图1是本发明实施例基于元数据的阵列重建方法中的元数据的存储空间划分图;
[0016]图2是本发明基于元数据的阵列重建方法的一个实施例流程图;
[0017]图3是本发明基于元数据的阵列重建方法的另一个实施例流程图;
[0018]图4是本发明基于元数据的阵列重建装置所在设备的一种硬件结构图;
[0019]图5是本发明基于元数据的阵列重建装置的一个实施例框图。
【具体实施方式】
[0020]为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
[0021]参见图1,为本发明实施例基于元数据的阵列重建方法中的元数据的存储空间划分图:
[0022]图1中示出了一种基于元数据的阵列空间组织方式。其中,阵列中的元数据指的是管理磁盘阵列(Redundant Arrays of Independent Disks,RAID)空间分配的内部数据,即阵列的空间管理元数据部分中记录的信息。该元数据本身记录了对应分配空间的最新一次写的时间戳或类似时间戳功能的信息;另外,该元数据还记录不同数据区域的数据类型。
[0023]如图1所示,该基于元数据的阵列空间组织方式为阵列的空间管理元数据部分的空间组织方式。
[0024]该空间管理元数据部分,包括三个部分:空间管理元数据头、空间管理元数据条目及下一空间管理元数据位置。其中,空间管理元数据头可以简称为元数据头,空间管理元数据条目可以简称为元数据条目,并适用于以下各个实施例。
[0025]上述元数据头主要记录数据条目个数等公共信息,每一个元数据条目对应一个数据区,下一个空间管理元数据位置记录了下一个空间管理元数据部分的位置,可以为无效,表示已经是最后一个空间管理元数据部分。其中,每个数据条目对应的数据区还包括多个数据区段,每个数据区段在对应的数据条目中记录的信息包括:数据类型、写时间戳、以及其他信息。其中,可以根据数据类型判定每个数据区段的重要性。
[0026]现有技术中,直接按照磁盘的扇区顺序进行重建。但是,随着磁盘容量的不断增大,按照磁盘的扇区顺序进行重建时需要的时间随之延长,增加了丢失数据的可能性,降低了重建的可靠性和效率。
[0027]本发明实施例中,当基于元数据需要进行阵列重建时,可以按照数据类型对阵列区域进行分类,将同一类型(即元数据中数据区段记录的数据类型相同的数据)的区域放在同一链表中,并根据该链表进行重建;还可以选择直接按照时间顺序(即元数据中数据区段记录的写时间戳)构建一张链表,并根据该链表进行重建。
[0028]由上述实施例可见,本发明实施例通过将上层元数据与阵列层的整合(阵列层与上层之间提供控制/通信接口),实现按照数据类型(重要性)或时间顺序进行重建;以及通过元数据与RAID的整合,实现基于元数据按数据类型(重要性)进行重建或者基于元数据按时间顺序进行重建。
[0029]下面结合附图对本发明基于元数据的阵列重建的实施例进行详细描述。
[0030]参见图2,为本发明基于元数据的阵列重建方法的一个实施例流程图,包括以下步骤:
[0031]步骤210:接收阵列重建通知。其中,该阵列重建通知是由阵列管理层发送的。
[0032]步骤220:根据阵列重建通知获取阵列的元数据的各个数据区段信息。其中,数据区段信息包括对应区段的数据类型、写时间戳、以及其他信息等。
[0033]比如,元数据中的数据条目I对应数据区1,该数据区I包括数据区段1、数据区段2。数据区段I在对应的数据条目I中记录的数据区段信息包括:数据类型、写时间戳、以及其他信息等,数据区段2在对应的数据条目I中记录的数据区段信息包括:数据类型、写时间戳、以及其他信息等。其中,数据区段I的数据类型和数据区段2的数据类型可能相同,也可能不相同。
[0034]又比如,元数据中的数据条目2对应数据区2,该数据区2包括数据区段3、数据区段4。其中,数据区段3在对应的数据条目2中记录的数据区段信息包括:数据类型、写时间戳、以及其他信息等,数据区段4在对应的数据条目2中记录的数据区段信息包括:数据类型、写时间戳、以及其他信息等。其中,数据区段3的数据类型和数据区段4的数据类型可能相同,也可能不相同。
[0035]步骤230:根据预设的阵列重建策略和元数据中的各个数据区段信息对元数据对应的各个数据区段进行排序,得到对应的重建链表,并根据重建链表依次对元数据对应的各个数据区段进行重建。
[0036]其中,预设的阵列重建策略可以为用户设定的阵列重建策略,也可以系统默认的阵列重建策略,并保存在系统配置中。该预设的阵列重建策略可以为根据各个数据区段信息中的数据类型对各个数据区段进行排序,得到对应的类型重建类型链表,并根据类型重建链表依次对元数据对应的各个数据区段进行重建;也可以为根据各个数据区段信息中的写时间戳对各个数据区段进行排序,得到对应的时间重建链表,并根据时间重建链表依次对元数据对应的各个数据区段进行重建。
[0037]另外,上述实施例中,阵列的元数据为阵列的空间管理元数据部分中记录的信息,具体如下:
[0038]阵列的空间管理元数据部分包括空间管理元数据头、空间管理元数据条目及下一空间管理元数据位置;
[0039]其中,空间管理元数据头中记录有数据条目个数的信息。
[0040]每个空间管理元数据条目对应一个空间管理数据区,每个空间管理元数据条目对应的空间
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1