数据存储与重建的方法与系统技术方案

技术编号:15809497 阅读:48 留言:0更新日期:2017-07-14 12:30
本发明专利技术公开了一种数据存储与重建的方法,该方法接收输入/输出命令后,算出其对应的同位;根据此同位,决定此输入/输出命令所对应的最后条带是否为全条带;当此最后条带为全条带时,存储此输入/输出命令所对应的多笔数据与同位于磁盘存储系统中的主高级擦除单元;以及当此最后条带不是全条带时,重新计算最后的同位,并且将此最后的同位重复写入缓冲高级擦除单元中的至少两个同位页。

【技术实现步骤摘要】
数据存储与重建的方法与系统
本专利技术涉及一种数据存储与重建(rebuilding)的方法与系统。
技术介绍
独立磁盘冗余阵列(RedundantArrayofIndependentDisks,RAID)是一种结合硬件与软件来强化容错(faulttolerance)能力与性能(performance)的技术。当某磁盘工作失败(diskfailure)时,例如发生故障或损毁,常用来存储与保护数据。此技术把多块相对便宜的磁盘组合起来,成为一个软磁盘阵列组,使性能达到甚至超过一个价格昂贵的容量巨大的磁盘。此技术能够在横跨每一磁盘时,节省数据与相对应的同位(parity)。保护条带(protectionstripe)包括来自不同磁盘的一系列的页(page),页是每一磁盘的数据存储单位。条带大小(stripesize)定义为一磁盘阵列(diskarray)中磁盘的个数(numberofdiskdrives)。此技术通常利用轮询(round-robin)方式来确保每一条带已平均分散至每一磁盘。将同位块(parityblock)加入于一组来源位(sourcebits)中可确保输出结果(outcome)的设定位(setbits)的个数为偶数或是奇数,而设定位的个数也就是值为1的位的个数。一错误纠正码(ErrorCorrectionCode,ECC或称parity)模块可使用至少一错误纠正或错误检测码,例如Reed-Solomon(RS)码、循环冗余检验(CyclicRedundancyCheck,CRC)码等。在RAID的结构中,当某一磁盘出现故障时,每一条带上的数据,可使用硬件来检查分散于各磁盘上的ECC/同位,其它磁盘可以通过这些分散的ECC/同位的校验,将故障的磁盘所存储的数据重新恢复出来。RAID5是RAID的一系列技术的其中一种。RAID5使用至少三块磁盘配置。图1是RAID5的配置的一范例示意图。如图1的范例所示,RAID5将所有ECC,分别以条带式地存储在每一磁盘上,并且每一磁盘在不同页存储不同数据,每一磁盘也各存储一对应的ECC。每一条带包括来自N-1个不同磁盘的不同数据,以及其余一个磁盘的ECC,N是条带大小,也就是一条带中磁盘的个数,本例中,N等于4。当某一磁盘出现故障时,其它磁盘可以通过ECC的校验,将故障的磁盘所存储的数据重新恢复出来。在RAID5中,由于所有的ECC要使用一磁盘的容量作为校验使用,所以实际可以使用的磁盘容量为N-1。在一条带上,将数据分散在阵列的每一磁盘上时,若此条带具有最大的被允许的(allowed)数据存储容量时,此类型的条带被定义为全条带(fullstripe)。也就是说,全条带是使用最大的被允许的磁盘个数所构成的一条带。所以,全条带的写入效能(writeperformance)高,亦即速度很快。另一种类型的条带是部份填入式条带(partiallyfilledstripe),此部份填入式条带的数据存储容量小于条带大小。部份填入式条带在随机存取频繁时,其写入效能低,如图2的范例所示。当收到一输入/输出命令(I/Ocommand)时,从一磁盘中读出数据1及该磁盘存储的ECC至一存储器,例如一随机存取存储器(RAM),然后图2中的部份填入式条带需要重新记算新的ECC后,再将数据1写回至该磁盘的同一地址。当RAM的空间不够且随机存取频繁时,会增加写入的工作负荷(writeworkload),而降低写入效能低。有一种在RAID系统中存储器备份(memorybackup)的技术如图3所示。此技术提供一易失性(volatile)存储器324与一非易失性(non-volatile)存储器358给一RAID系统。此RAID系统利用一RAID控制器312来检测出主要电源供应(mainpowersupply)失败(failure)。当RAID控制器312检测出主要电源供应(mainpowersupply)失败时,暂时电源供应354则供应暂时电源(temporarypower)给易失性(volatile)存储器324,让RAID控制器312将数据从易失性存储器324传送到非易失性存储器358。也就是说,此技术在RAID系统中提供易失性存储器及额外的电源供应来进行数据备份。在上述数据保护的技术中,当处理部份填入式条带的数据时,会遇到的挑战是,如何确保能妥善保存条带的数据以及得以成功重建条带的数据,并且如何确保数据与ECC/同位均等分配至每一磁盘。因此,如何在条带的架构下设计一种数据存储与重建的技术,将会是重要的课题之一。
技术实现思路
本专利技术提供一种数据存储与重建的方法与系统。本专利技术的一实施例提出一种数据存储与重建的方法,应用于磁盘存储系统。此方法可包括:接收输入/输出命令后,算出其对应的同位;根据此同位,决定此输入/输出命令所对应的最后条带(laststripe)是否为全条带;当此最后条带为全条带时,存储此输入/输出命令所对应的多笔数据与同位于此磁盘存储系统中的主高级擦除单元(mainHyperEraseUnit,mainHEU);以及当此最后条带不是全条带时,重新计算最后的同位,并且将此最后的同位重复写入缓冲高级擦除单元(bufferingHEU)中的至少两个同位页。本专利技术的另一实施例提出一种数据存储与重建的方法,应用于磁盘存储系统。此方法可包括:接收输入/输出命令后,利用累积的多个页,算出同位;根据此同位,决定条带是否满了;当此条带是满的时,存储此同位与此多个页的每一页的数据于指定的条带,其中此同位做为辨识条带的结尾;当此条带未满时,存储此同位;以及当还有至少一输入/输出命令时,返回此接收输入/输出命令后,利用累积的多个页,算出同位的步骤。本专利技术的又一实施例提出一种数据存储与重建的系统,可包括:处理器(processor),根据同位,决定输入/输出命令对应的最后条带是否为全条带;主高级擦除单元,配置于此磁盘存储系统中,并且当该最后条带为全条带时,用来存储此输入/输出命令所对应的多笔数据与同位;以及缓冲高级擦除单元,配置于此磁盘存储系统中,并且当此最后条带不是全条带时,经由此处理器重新计算的最后的同位,将此最后的同位重复写入于此缓冲高级擦除单元中的至少两个同位页;其中此处理器还执行该磁盘存储系统中失败的至少一磁盘的多笔数据的重建。本专利技术的又一实施例提出一种数据存储与重建的系统可包括:处理器,根据输入/输出命令,经由累积的多个页,算出同位,并且根据此同位,决定条带是否满了;主高级擦除单元,配置于此磁盘存储系统中,用来存储此同位与此多个页的每一页的数据于指定的条带,此同位做为辨识此条带的结尾;以及元数据区,配置于磁盘存储系统中的高级擦除单元中,用来存储该多个页的每一页各自对应的逻辑页号码与同位信息;其中此处理器还执行此磁盘存储系统中失败的至少一磁盘的多笔数据的重建。附图说明图1是一范例示意图,说明RAID5的配置;图2是一范例示意图,说明部份填入式条带的随机存取时的运作;图3是一范例示意图,说明一种在RAID系统中存储器备份的技术;图4是根据本专利技术一实施例,说明一SEU的存入格式;图5是根据本专利技术一实施例,说明一转译层将一输入/输出命令转译为物理页号码;图6是根据本专利技术一实施例,说明在固定本文档来自技高网
...
数据存储与重建的方法与系统

【技术保护点】
一种数据存储与重建的方法,应用于磁盘存储系统,该方法包括:接收输入/输出命令后,算出其对应的同位;根据该同位,决定该输入/输出命令对应的最后条带是否为全条带;当该最后条带为全条带时,存储该输入/输出命令所对应的多笔数据与该同位于该磁盘存储系统中的主高级擦除单元;以及当该最后条带不是全条带时,重新计算最后的同位,并且将该最后的同位重复写入缓冲高级擦除单元中的至少两个同位页,其中该主高级擦除单元是由多个超擦除单元(SEUs)所组成的,每一超擦除单元(SEUs)包括多个页以及结尾,该缓冲高级擦除单元是由多个同位页组成的。

【技术特征摘要】
2012.12.10 TW 1011464081.一种数据存储与重建的方法,应用于磁盘存储系统,该方法包括:接收输入/输出命令后,算出其对应的同位;根据该同位,决定该输入/输出命令对应的最后条带是否为全条带;当该最后条带为全条带时,存储该输入/输出命令所对应的多笔数据与该同位于该磁盘存储系统中的主高级擦除单元;以及当该最后条带不是全条带时,重新计算最后的同位,并且将该最后的同位重复写入缓冲高级擦除单元中的至少两个同位页,其中该主高级擦除单元是由多个超擦除单元(SEUs)所组成的,每一超擦除单元(SEUs)包括多个页以及结尾,该缓冲高级擦除单元是由多个同位页组成的。2.如权利要求1所述的方法,其中该磁盘存储系统是独立磁盘冗余阵列。3.如权利要求1所述的方法,其中该缓冲高级擦除单元中的该至少两个同位页是连续的同位页。4.如权利要求1所述的方法,其中该方法还包括:将该最后的同位以物理映射方式,重复写入于该缓冲高级擦除单元中的该至少两个同位页。5.如权利要求1所述的方法,其中该缓冲高级擦除单元是由多个同位页组成的,每同位页还包括:数据区,存储该主高级擦除单元里一个部分条带的至少一数据的同位;以及备用区,存储逻辑页号码的同位、以及物理页号码。6.如权利要求1所述的方法,其中确保由该多个SEUs所形成的多个全条带的每一全条带分布式地跨越在N-1个不同的磁盘,并且每一条带的结尾存储同位信息,其中N是该超擦除单元所使用的磁盘的个数。7.如权利要求6所述的方法,其中该多个SEUs的每一SEU包括多个页以及元数据区,该元数据区记录该多个页的各个页各自对应的逻辑页号码以及同位信息。8.如权利要求1所述的方法,其中该方法还包括:从多个候选超擦除单元中选出该缓冲高级擦除单元。9.如权利要求1所述的方法,其中该同位指出该最后条带是否为全条带。10.如权利要求1所述的方法,该方法还包括:从该磁盘存储系统中的该缓冲高级擦除单元里读出最后至少两个同位页的其中一同位页;根据该其中一同位页里的信息,重建该磁盘存储系统中的该主高级擦除单元里的部份条带;从该主高级擦除单元里读出至少一全条带的每一全条带里的同位页;以及根据该每一全条带里的该同位页里的信息,重建该至少一全条带的每一全条带。11.一种数据存储与重建的方法,应用于磁盘存储系统,该方法包括:接收输入/输出命令后,利用累积的多个页,算出同位;根据该同位,决定条带是否满了;当该条带是满的时,存储该同位与该多个页的每一页的数据于指定的条带,其中该同位做为辨识条带的结尾;当该条带未满时,存储该同位;当还有至少一输入/输出命令时,返回此接收输入/输出命令后,利用累积的多个页,算出同位的步骤;以及使用磁盘存储系统中的超擦除单元中的元数据区来存储该多个页的每一页各自对应的逻辑页号码与同位信息。12.如权利要求11所述的方法,其中该多个页的每一页的备用区存储旗标,来指出该页是存同位或是存数据。13.如权利要求11所述的方法,其中该条带的大小是可变的,并且截断全条带决定于该输入/输出命令的至少一状态。14.如权利要求11所述的方法,其中该条带的大小是可变的,并且截断全条带决定于磁盘存储系统中的多个磁盘的磁盘个数。15.如权利要求11所述的方法,其中该超擦除单元是从多个回收的M个超擦除单元(SEUs)中,挑选出不会局限在同一条带中N个的SEUs来组成,M与N皆为大于1的正整数且M大于等于N。16.如权利要求1...

【专利技术属性】
技术研发人员:孙厚强张安男简廷芳曹世强姜琦凡阙志克
申请(专利权)人:财团法人工业技术研究院
类型:发明
国别省市:中国台湾,71

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1