本发明涉及存储技术领域,尤其涉及一种在全闪存存储阵列上提升元数据可靠性的方法。
背景技术:
如今,ssd盘已大规模商用。由于ssd盘自身独有的特点与传统的机械盘的区别,使得各存储厂商都相继研发了适用于afa的软件:所有主机写请求都凑成大块数据,然后从硬盘上分配新的空间写入,对于已经写过但是无效的空间,通过垃圾回收功能回收空间。基于此实现方式,主机写请求的数据具体在存储空间的哪个位置将无法直接用计算来获得,因此需要大量的元数据来保存。主流的afa软件系统至少需要2类元数据:
(1)正向元数据:保存主机lun到物理空间的映射的元数据,用于后续主机读具体lun的数据时能找到对应的物理空间。
(2)反向元数据:保存物理空间到主机lun的映射的元数据,与正向元数据有一一对应关系,用于垃圾回收迁移数据时使用。
现有的raid技术通常分为传统raid(即直接将多个硬盘按照固定的raid级别组成raid组)和分布式raid。
元数据的重要性显然要比普通数据高很多,因此提升元数据的可靠性成为afa系统首要考虑的任务。业界通常提升元数据的可靠性的做法都是提升元数据的冗余度来提升元数据的可靠性,但是本身还要保存大量的元数据,其实现复杂度和性能都让传统存储厂商很难接受,同时元数据本身也会因为多重冗余额外占用更多的空间。而基于传统raid来提升元数据冗余度就更困难了。
基于上述问题,因此,对于本领域技术人员而言,如何提高元数据的可靠性,是亟需解决的技术问题。
技术实现要素:
基于背景技术存在的技术问题,本发明提出了一种在全闪存存储阵列上提升元数据可靠性的方法,将正向元数据与反向元数据分别保存在不同的raid组,从而实现元数据在任意一个raid组故障时不丢失,达到提升元数据可靠性的目的。
为了便于理解,对
本技术:
文件中部分名词解释如下:
raidredundantarrayofindependentdisks独立冗余磁盘阵列
afaallflasharray全闪存存储阵列
lunlogicalunitnumber逻辑单元号
本发明提出的一种在全闪存存储阵列上提升元数据可靠性的方法,包括以下步骤:
创建多个raid组;
将部分raid组映射给正向元数据,将另一部分raid组映射给反向元数据,且正向元数据与反向元数据具有对应关系;
当任一个raid组出现故障导致数据丢失时,判断其数据是正向元数据还是反向元数据;若为正向元数据则采用对应反向元数据重建丢失的数据,若为反向元数据则采用对应正向元数据重建丢失的数据。
优选地,创建的多个raid组为对称的raid组。
优选地,映射给正向元数据的raid组数量与映射给反向元数据的raid组数量相等。
本发明中提供的一种在全闪存存储阵列上提升元数据可靠性的方法,基于全闪存存储阵列系统元数据特征,将正向元数据与反向元数据分别保存在不同的raid组,从而实现元数据在任意一个raid组故障时不丢失,达到提升元数据可靠性的目的。
附图说明
图1为本发明提出的一种在全闪存存储阵列上提升元数据可靠性的方法的流程图。
具体实施方式
如图1所示,图1为本发明提出的一种在全闪存存储阵列上提升元数据可靠性的方法的流程图。
下面结合附图和实施例对本发明进行详细的描述。
一种在全闪存存储阵列上提升元数据可靠性的方法,包括以下步骤:
s1:创建多个raid组,且上述多个raid为对称的raid组;
s2:将一半raid组映射给正向元数据,将另一半raid组映射给反向元数据,且正向元数据与反向元数据具有对应关系;
s3:当任一个raid组出现故障导致数据丢失时,判断其数据是正向元数据还是反向元数据;若为正向元数据则采用对应反向元数据重建丢失的数据,若为反向元数据则采用对应正向元数据重建丢失的数据。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。