CN111221473B - 一种存储系统介质免维护的方法 - Google Patents

一种存储系统介质免维护的方法 Download PDF

Info

Publication number
CN111221473B
CN111221473B CN201911396926.6A CN201911396926A CN111221473B CN 111221473 B CN111221473 B CN 111221473B CN 201911396926 A CN201911396926 A CN 201911396926A CN 111221473 B CN111221473 B CN 111221473B
Authority
CN
China
Prior art keywords
stripe
data
space
new
medium
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911396926.6A
Other languages
English (en)
Other versions
CN111221473A (zh
Inventor
张功敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan Chuangxinke Information Technology Co ltd
Original Assignee
Henan Chuangxinke Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Henan Chuangxinke Information Technology Co ltd filed Critical Henan Chuangxinke Information Technology Co ltd
Priority to CN201911396926.6A priority Critical patent/CN111221473B/zh
Publication of CN111221473A publication Critical patent/CN111221473A/zh
Application granted granted Critical
Publication of CN111221473B publication Critical patent/CN111221473B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本申请实施例提供一种存储系统介质免维护的方法,包括以下步骤:计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上,在介质盘上扣除这部分空间作为预留空间;当有介质盘发生故障时,进行故障盘的重建;从介质盘的预留空间上分配新空间,将包含故障盘数据的分条数据搬移到新空间。与传统存储系统介质维护的方法比较,本申请具有存储系统介质维护工作量小的有益效果。

Description

一种存储系统介质免维护的方法
技术领域
本发明涉及存储介质研究领域,特别是一种存储系统介质免维护的方法。
背景技术
存储系统的存储介质,如硬盘、SSD等,具有磨损寿命,属于易损耗材,其寿命与写入的数据量成反比。随着大量数据的写入,寿命到达终点时,就会威胁存储系统的数据安全。通常的解决办法是系统提前识别出即将到达寿命终点的存储介质盘,通过告警等措施,主动通知运维工程师,替换目标介质盘,系统通过数据恢复算法,如raid、EC等,计算恢复出失效介质盘的数据,写入替换的介质盘中,恢复系统的数据安全。在数据中心等超大容量存储系统中,由于运行的各种介质盘数量众多,会加重运维工程师的负担,如果失效介质盘没有及时更换,会导致业务数据丢失的重大灾难。
发明内容
本申请提出了一种存储系统介质免维护的方法,解决现有技术介质盘维护工作量大的问题。
本申请实施例采用下述技术方案:
本申请实施例提供一种存储系统介质免维护的方法,包括以下步骤:计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上,在介质盘上扣除这部分空间作为预留空间;当有介质盘发生故障时,检查系统的预留空间有没有剩余空间,如果有空间,则进行故障盘的重建;从介质盘的预留空间上分配新空间,将包含故障盘数据的分条数据搬移到新空间。
优选地,所述计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上是:系统总的预留容量为(M/r%+N*n%*C)*N/L-M/r%,系统需要的介质盘个数为[(M/r%+N*n%*C)*N/L]/C,每个介质盘上预留的容量为[(M/r%+N*n%*C)*N/L-M/r%]/{[(M/r%+N*n%*C)*N/L]/C},化简后为{1-(M/r%)/[(M/r%+N*n%*C)*N/L]}*C,其中M是用户需求的可用容量,r%是系统冗余保护的容量利用率,N是介质盘免维护的年限,n%是介质盘的年失效率,C是介质盘的容量,L是介质盘的寿命年限,当N小于L时,N/L取1。
优选地,当介质盘个数大于分条单元列数时,按照普通重建方式进行故障盘的重建,所述普通重建方式是:分条列数保持不变,从预留空间上分配一个与分条单元大小相同的空间,替换故障盘所在分条单元,把数据计算恢复出来,写入新分配的空间。
优选地,当介质盘个数等于或小于分条单元列数,且剩余的介质盘个数满足冗余要求的最少盘个数时,按照降列重建方式进行故障盘的重建,所述降列重建方式是:读出降级分条的数据,在剩下的好盘上分配新分条,将所述降级分条的数据写入所述新分条,更新分条映射表。
优选地,所述降列重建方式进一步包括:分配新分条,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数;将所述降级分条数据列的数据写入所述新分条,如果新分条写满,降级分条的数据还没有写完,就再分配一个新分条,将剩下的数据写入;第一个降级分条的数据写完后,继续将下一个降级分条的数据写入新分条上还没写数据的空间;更新分条映射表;所有降级分条上的数据写完后,释放盘上的映射空间。
优选地,所述降列重建方式进一步包括:当故障盘在降级分条的数据列时,分配新分条,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数;只将故障数据列的数据恢复出来写入到新分配的分条里去;将剩下的其他数据列重新计算冗余数据,将冗余数据写入该分条的校验列,或者重新选择合适的盘,分配空间作为所述降级分条的校验列,将冗余数据写入该校验列;更新分条映射表。
优选地,所述降列重建方式进一步包括:当故障盘在降级分条的校验列时,分配新分条,所述新分条的分条单元数等于所述降级分条上好分条单元个数减去分条校验列个数;重新计算冗余数据,重新分配空间作为所述降级分条的校验列,将冗余数据写入所述校验列;更新分条映射表;将所述降级分条中未选中的数据写入新分条,将其他分条中恢复出来的数据写入新分条,计算冗余数据,作为新分条的校验数据。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:与传统存储系统介质维护的方法比较,本申请具有存储系统介质维护工作量小的有益效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为存储系统介质免维护的方法实施例的流程图;
图2为存储系统介质免维护的方法实施例实施过程的示意图;
图3为存储系统介质免维护的方法降列重建方式第一实施例的流程图;
图4为存储系统介质免维护的方法降列重建方式第二实施例的流程图;
图5为存储系统介质免维护的方法降列重建方式第二实施例实施过程的示意图;
图6为存储系统介质免维护的方法降列重建方式第三实施例的流程图;
图7为存储系统介质免维护的方法降列重建方式第三实施例实施过程的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
存储系统的存储介质,如硬盘、SSD等,具有磨损寿命,属于易损耗材,其寿命与写入的数据量成反比。随着大量数据的写入,寿命到达终点时,就会威胁存储系统的数据安全。通常的解决办法是系统提前识别出即将到达寿命终点的存储介质盘,通过告警等措施,主动通知运维工程师,替换目标介质盘,系统通过数据恢复算法,如raid、EC等,计算恢复出失效介质盘的数据,写入替换的介质盘中,恢复系统的数据安全。在数据中心等超大容量存储系统中,由于运行的各种介质盘数量众多,会加重运维工程师的负担,如果失效介质盘没有及时更换,会导致业务数据丢失的重大灾难。
为解决上述问题,本发明提供一种存储系统介质免维护的方法,根据介质盘的年失效率,和介质盘的寿命,结合介质盘的容量,以及介质盘免维护年限,计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上,在盘上扣除这部分空间作为预留空间,再通过合理数据布局,改变分条的数据列数恢复数据冗余保护,保证系统N年介质盘免维护。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为存储系统介质免维护的方法实施例的流程图。本申请实施例提供的一种存储系统介质免维护的方法,包括以下步骤:
步骤11:计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上,在介质盘上扣除这部分空间作为预留空间。
首先要计算一个系统的预留容量,用于均衡存储系统在运行过程中因介质失效的容量损失。一般可以根据系统要介质盘免维护的年限,和介质盘的年失效率,以及介质盘的寿命,计算出将要损失的总容量,并将这个容量平均到系统里每个介质盘上,在每个介质盘上扣除这部分空间作为预留空间。计算方法可以根据需求和工程人员的实际经验进行,此处不做具体限定。
例如如图2所示,图2为存储系统介质免维护的方法实施例实施过程的示意图。例如有5块介质盘,分别是Disk1~Disk5,CK是从介质盘上分出来的存储空间分片。根据系统要介质盘免维护的年限,和介质盘的年失效率,以及介质盘的寿命,计算出将要损失的总容量和每个介质盘的预留容量,例如图2中每一个介质盘的Data区域用来存放数据,Reserve区域是预留空间。
步骤12:当有介质盘发生故障时,检查系统的预留空间有没有剩余空间,如果有空间,则进行故障盘的重建。
当有介质盘发生故障时,需要检查系统的预留空间有没有剩余空间,如果有空间,则进行故障盘的重建,系统会在重建过程中重新布局数据,恢复数据冗余保护。
例如如图2所示,图2为存储系统介质免维护的方法实施例实施过程的示意图。例如介质盘Disk4发生故障,检查系统的预留空间有剩余空间时,进行故障盘的重建。
步骤13:从介质盘的预留空间上分配新空间,将包含故障盘数据的分条数据搬移到新空间。
从介质盘的预留空间上分配新空间,所述新空间可以是一个分条单元或者一个新分条,将包含故障盘数据的分条上的全部或部分数据搬移到新空间。
例如如图2所示,分条stripeA是包含故障盘数据的分条,stripeB和stripeC是新分配的空间,将stripeA的全部或部分数据搬移到stripeB和stripeC上。
优选地,所述计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上是:系统总的预留容量为(M/r%+N*n%*C)*N/L-M/r%,系统需要的介质盘个数为[(M/r%+N*n%*C)*N/L]/C,每个介质盘上预留的容量为[(M/r%+N*n%*C)*N/L-M/r%]/{[(M/r%+N*n%*C)*N/L]/C},化简后为{1-(M/r%)/[(M/r%+N*n%*C)*N/L]}*C,其中M是用户需求的可用容量,r%是系统冗余保护的容量利用率,N是介质盘免维护的年限,n%是介质盘的年失效率,C是介质盘的容量,L是介质盘的寿命年限,当N小于L时,N/L取1。
这里给出了一种介质盘损失容量和预留容量的计算方法,实际操作中可以使用但不限于这一种计算方法,可以根据需求和工程人员的实际经验进行计算。
优选地,当介质盘个数大于分条单元列数时,按照普通重建方式进行故障盘的重建,所述普通重建方式是:分条列数保持不变,从预留空间上分配一个与分条单元大小相同的空间,替换故障盘所在分条单元,把数据计算恢复出来,写入新分配的空间。
当介质盘个数大于分条单元列数时,就按照普通重建方式即分条列数保持不变进行故障盘的重建,即从预留空间上分配一个分条单元大小的空间,替换故障盘所在分条单元,把数据计算恢复出来,然后写入新分配的空间即可。
例如如图2所示,例如介质盘Disk4发生故障,如果介质盘个数大于分条单元列数,就从预留空间上分配一个分条单元大小的空间,替换故障盘所在分条单元,把数据计算恢复出来,然后写入新分配的空间。
优选地,当介质盘个数等于或小于分条单元列数,且剩余的介质盘个数满足冗余要求的最少盘个数时,按照降列重建方式进行故障盘的重建,所述降列重建方式是:读出降级分条的数据,在剩下的好盘上分配新分条,将所述降级分条的数据写入所述新分条,更新分条映射表。
如果盘个数等于或小于分条单元列数,且剩余的成员盘个数满足冗余要求的最少盘个数,就降列重建,即分条列数缩减,改变之前的数据排布,将数据重建到剩余的数据空间里去。降列重建流程为,首先读出降级分条的所有数据,并恢复出故障盘所在分条单元的数据,新分配出分条,此分条在剩下的好盘上分配空间,将之前降级分条数据列的数据写入新分配的分条。所述新分条的数量可以等于或大于1。
例如如图2所示,降级分条stripeA对应5个分条单元,在盘上的物理映射为CK10,CK20,CK30,CK40和CK50。存放有D0~D3的业务数据,P是分条的校验数据。例如当Disk4发生故障时,stripeA的数据需要搬移到新分配的新分条,先分配2个新分条stripeB和stripeC,stripeB和stripeC只有4个分条单元,对应在盘上的映射由图2所示。当disk4发生故障时,stripeA的数据D0~D2会搬移到新分配的stripeB,恢复出来的D3会搬移到新分配的stripeC。stripeC未写满数据的分条单元用于其他降级分条写入。处理完成后,stripeA会被释放,对应的CK10,CK20,CK30和CK50用于其他新分配的分条。
图3为存储系统介质免维护的方法降列重建方式第一实施例的流程图。所述降列重建方式进一步包括:
步骤21:分配新分条,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数。
新分配一个新分条,所述新分条是在剩下的好盘上分配空间,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数。
例如如图2所示,降级分条stripeA对应5个分条单元,在盘上的物理映射为CK10,CK20,CK30,CK40和CK50。存放有D0~D3的业务数据,P是分条的校验数据。例如当Disk4发生故障时,stripeA的数据需要搬移到新分配的新分条,stripeB和stripeC都是新分配的新分条,stripeB和stripeC只有4个分条单元,对应在盘上的映射由图2所示。
步骤22:将所述降级分条数据列的数据写入所述新分条,如果新分条写满,降级分条的数据还没有写完,就再分配一个新分条,将剩下的数据写入。
将之前降级分条数据列的数据写入所述新分条,如果新分条写满,降级分条的数据还没有写完,就再分配一个新分条,将剩下的数据写入新分条。
例如如图2所示,当disk4发生故障时,stripeA的数据D0~D2会搬移到新分配的stripeB,恢复出来的D3会搬移到新分配的stripeC。stripeC未写满数据的分条单元用于其他降级分条写入。
步骤23:第一个降级分条的数据写完后,继续将下一个降级分条的数据写入新分条上还没写数据的空间。
第一个降级分条的数据写完后,开始处理下一个降级分条,继续将下一个降级分条的数据写入新分条上还没写数据的空间,重复以上过程直至所有降级分条的数据都搬移完毕。
例如如图2所示,stripeC未写满数据的分条单元用于下一个降级分条写入。
步骤24:更新分条映射表。
数据搬移完成后,需要更新分条映射表,将数据指向新的单元。
例如如图2所示,单元映射关系改变,将更新分条映射表。
步骤25:所有降级分条上的数据写完后,释放盘上的映射空间。
降级分条中未发生故障的单元从映射空间中释放,可以待下次使用。
例如如图2所示,处理完成后,stripeA会被释放,对应的CK10,CK20,CK30和CK50用于其他新分配的分条。
图4为存储系统介质免维护的方法降列重建方式第二实施例的流程图。所述降列重建方式进一步包括:
步骤31:当故障盘在降级分条的数据列时,分配新分条,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数。
上述方法要将整个分条的数据重新写入,数据量很大,盘的写入压力会很大,会减小处理正常业务数据的能力。为了减少写入的数据量,在上述方法上进行优化。首先新分配一个新分条,所述新分条是在剩下的好盘上分配空间,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数。
例如如图5所示,图5为存储系统介质免维护的方法降列重建方式第二实施例实施过程的示意图。例如有5块盘,Disk1~Disk5,CK是从盘上分出来的存储空间分片。降级分条stripeA对应5个分条单元,在盘上的物理映射为CK10,CK20,CK30,CK40和CK50。存放有D0~D3的业务数据,P是分条的校验数据。降级分条stripeA对应5个分条单元,在盘上的物理映射为CK10,CK20,CK30,CK40和CK50。当Disk4发生故障时,新分配一个新分条例如是stripeB,stripeB只有4个分条单元。
步骤32:只将故障数据列的数据恢复出来写入到新分配的分条里去。
只将故障数据列的数据恢复出来写入到新分配的分条里去,而不是将所有数据搬移至新分条,有效减少数据处理量。
例如如图5所示,当Disk4发生故障时,stripeA的D3数据会恢复出来写入到stripeB,stripeA的D0~D2数据保持不变。
步骤33:将剩下的其他数据列重新计算冗余数据,将冗余数据写入该分条的校验列,或者重新选择合适的盘,分配空间作为所述降级分条的校验列,将冗余数据写入该校验列。
将降级分条中剩下的其他数据列重新计算冗余数据,将冗余数据写入其校验列,或者重新选择合适的盘,分配空间作为所述降级分条的校验列,将冗余数据写入所述校验列。
例如如图5所示,stripeA的D3数据会恢复出来写入到stripeB,其D0~D2保持不变,其校验数据P会根据D0~D2重新生成P’,写入原来的映射CK50,或者释放掉CK50,重新分配CK52,写入到CK52。
步骤34:更新分条映射表。
数据搬移完成后,需要更新分条映射表,将数据指向新的单元。
例如如图5所示,单元映射关系改变,将更新分条映射表。处理完成后,stripeA变成只有4个分条单元,新分配的stripeB也是4个分条单元。
图6为存储系统介质免维护的方法降列重建方式第三实施例的流程图。所述降列重建方式进一步包括:
步骤41:当故障盘在降级分条的校验列时,在所述降级分条上选取一部分分条单元作为数据列,所述数据列的列数等于好分条单元个数减去分条校验个数的差值。
如果故障的盘在分条的校验列,则将分条上好分条单元个数减去分条校验个数的差值作为数据列数,在分条上选出这么多列数的分条单元作为数据列,其余的数据等待写入新分配的分条。
例如如图7所示,图7为存储系统介质免维护的方法降列重建方式第三实施例实施过程的示意图。例如有5块盘,Disk1~Disk5,CK是从盘上分出来的存储空间分片。stripeA、stripeB、stripeC的映射关系如图7所示。当Disk5故障时,stripeA的校验数据P损坏,stripeB的D7数据损坏,stripeC的D10数据损坏。好分条单元个数减去分条校验个数的差值是3,因此stripeA的D0~D2数据保持不变,D3数据等待写入新分配的分条。
步骤42:重新计算冗余数据,重新分配空间作为所述降级分条的校验列,将冗余数据写入所述校验列。
将降级分条上选出的数据列重新计算冗余数据,再重新选择合适的盘,分配空间作为该分条的校验列,将冗余数据写入该校验列。
例如如图7所示,stripeA的D0~D2数据保持不变,会新分配CK43存放D0~D2数据新生成的校验数据P’。
步骤43:更新分条映射表。
数据搬移完成后,需要更新分条映射表,将数据指向新的单元。
例如如图7所示,单元映射关系改变,将更新分条映射表。
步骤44:将所述降级分条中未选中的数据写入新分条,将其他分条中恢复出来的数据写入新分条,计算冗余数据,作为新分条的校验数据。
所述降级分条中剩下的没有被选中的分条单元可以将里面的数据写入新分配的分条,并且和其他分条中选出来的数据列重新计算冗余数据,形成新的分条。
例如如图7所示,新分配stripeD作为新分条,将stripeA的D3数据写入stripeD,stripeB恢复出的D7数据是D7’,stripeC恢复出的D10数据是D10’,将D7’、D10’也写入stripeD。stripeD的校验数据P由D3、D7’和D10’生成,写入到新分配的CK33。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (4)

1.一种存储系统介质免维护的方法,其特征在于,包括以下步骤:
计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上,在介质盘上扣除这部分空间作为预留空间;
当有介质盘发生故障时,检查系统的预留空间有没有剩余空间,如果有空间,则进行故障盘的重建;
从介质盘的预留空间上分配新空间,将包含故障盘数据的分条数据搬移到新空间;
当介质盘个数等于或小于分条单元列数,且剩余的介质盘个数满足冗余要求的最少盘个数时,按照降列重建方式进行故障盘的重建,所述降列重建方式是:读出降级分条的数据,在剩下的好盘上分配新分条,将所述降级分条的数据写入所述新分条,更新分条映射表;
所述降列重建方式进一步包括:
分配新分条,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数;
将所述降级分条数据列的数据写入所述新分条,如果新分条写满,降级分条的数据还没有写完,就再分配一个新分条,将剩下的数据写入;
第一个降级分条的数据写完后,继续将下一个降级分条的数据写入新分条上还没写数据的空间;
更新分条映射表;
所有降级分条上的数据写完后,释放降级分条上的映射空间;
所述降列重建方式进一步包括:
当故障盘在降级分条的校验列时,分配新分条,所述新分条的分条单元数等于所述降级分条上好分条单元个数减去分条校验列个数;
重新计算冗余数据,重新分配空间作为所述降级分条的校验列,将冗余数据写入所述校验列;
更新分条映射表;
将所述降级分条中未选中的数据写入新分条,将其他分条中恢复出来的数据写入新分条,计算冗余数据,作为新分条的校验数据。
2.如权利要求1所述的方法,其特征在于,所述计算出将要损失的总容量,将这个容量平均到系统里每个介质盘上是:
系统总的预留容量为(M/r%+N*n%*C)*N/L-M/r%,系统需要的介质盘个数为[(M/r%+N*n%*C)*N/L]/C,每个介质盘上预留的容量为[(M/r%+N*n%*C)*N/L-M/r%]/{[(M/r%+N*n%*C)*N/L]/C},化简后为{1-(M/r%)/[(M/r%+N*n%*C)*N/L]}*C,其中M是用户需求的可用容量,r%是系统冗余保护的容量利用率,N是介质盘免维护的年限,n%是介质盘的年失效率,C是介质盘的容量,L是介质盘的寿命年限,当N小于L时,N/L取1。
3.如权利要求1所述的方法,其特征在于,当介质盘个数大于分条单元列数时,按照普通重建方式进行故障盘的重建,所述普通重建方式是:分条列数保持不变,从预留空间上分配一个与分条单元大小相同的空间,替换故障盘所在分条单元,把数据计算恢复出来,写入新分配的空间。
4.如权利要求1所述的方法,其特征在于,所述降列重建方式进一步包括:
当故障盘在降级分条的数据列时,分配新分条,所述新分条的分条单元数是降级分条的分条单元数减去故障盘的个数;
只将故障数据列的数据恢复出来写入到新分配的分条里去;
将剩下的其他数据列重新计算冗余数据,将冗余数据写入该分条的校验列,或者重新选择合适的盘,分配空间作为所述降级分条的校验列,将冗余数据写入该校验列;
更新分条映射表。
CN201911396926.6A 2019-12-30 2019-12-30 一种存储系统介质免维护的方法 Active CN111221473B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911396926.6A CN111221473B (zh) 2019-12-30 2019-12-30 一种存储系统介质免维护的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911396926.6A CN111221473B (zh) 2019-12-30 2019-12-30 一种存储系统介质免维护的方法

Publications (2)

Publication Number Publication Date
CN111221473A CN111221473A (zh) 2020-06-02
CN111221473B true CN111221473B (zh) 2023-06-06

Family

ID=70829249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911396926.6A Active CN111221473B (zh) 2019-12-30 2019-12-30 一种存储系统介质免维护的方法

Country Status (1)

Country Link
CN (1) CN111221473B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508724A (zh) * 2011-10-25 2012-06-20 北京同有飞骥科技股份有限公司 一种基于软raid的磁盘坏块处理方法
CN109739436A (zh) * 2018-12-19 2019-05-10 河南创新科信息技术有限公司 Raid重构方法、存储介质和装置
CN110413454A (zh) * 2018-04-28 2019-11-05 华为技术有限公司 基于存储阵列的数据重建方法、装置及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7647526B1 (en) * 2006-12-06 2010-01-12 Netapp, Inc. Reducing reconstruct input/output operations in storage systems
US20080253256A1 (en) * 2007-04-13 2008-10-16 Andreas Eckleder Apparatus for writing data and redundancy data on a storage medium
US20120278560A1 (en) * 2009-10-04 2012-11-01 Infinidat Ltd. Pre-fetching in a storage system that maintains a mapping tree
US20130179726A1 (en) * 2012-01-08 2013-07-11 Synology Incorporated Automatic remapping in redundant array of independent disks and related raid
CN102681918B (zh) * 2012-05-17 2014-06-04 华为技术有限公司 数据存储备份方法及装置
CN102902602B (zh) * 2012-09-19 2015-08-19 华为技术有限公司 数据热备份的方法、装置及存储系统
CN105302492A (zh) * 2015-11-18 2016-02-03 浙江大华技术股份有限公司 一种磁盘阵列raid重建方法及装置
CN106155847A (zh) * 2016-08-19 2016-11-23 浪潮(北京)电子信息产业有限公司 一种磁盘阵列
CN108733314B (zh) * 2017-04-17 2021-06-29 伊姆西Ip控股有限责任公司 用于独立冗余阵列(raid)重建的方法、设备和计算机可读存储介质
CN111966540B (zh) * 2017-09-22 2024-03-01 成都华为技术有限公司 存储介质的管理方法、装置及可读存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508724A (zh) * 2011-10-25 2012-06-20 北京同有飞骥科技股份有限公司 一种基于软raid的磁盘坏块处理方法
CN110413454A (zh) * 2018-04-28 2019-11-05 华为技术有限公司 基于存储阵列的数据重建方法、装置及存储介质
CN109739436A (zh) * 2018-12-19 2019-05-10 河南创新科信息技术有限公司 Raid重构方法、存储介质和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Luyu Li 等.Favorable Block First: A Comprehensive Cache Scheme to Accelerate Partial Stripe Recovery of Triple Disk Failure Tolerant Arrays.《International Conference on Parallel Processing》.2017,全文. *
段剑弓.一种新型的能够防止两块磁盘失败的技术.计算机应用研究.2004,(第10期),全文. *

Also Published As

Publication number Publication date
CN111221473A (zh) 2020-06-02

Similar Documents

Publication Publication Date Title
US8601311B2 (en) System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory
US20190129614A1 (en) Load Balancing of I/O by Moving Logical Unit (LUN) Slices Between Non-Volatile Storage Represented by Different Rotation Groups of RAID (Redundant Array of Independent Disks) Extent Entries in a RAID Extent Table of a Mapped RAID Data Storage System
JP5256149B2 (ja) Hdd障害からの高速データ回復
US10884889B2 (en) Allocating part of a raid stripe to repair a second raid stripe
JP5532982B2 (ja) ストレージ装置、ストレージ装置のコントローラおよびストレージ装置の記憶領域割当方法
US8930745B2 (en) Storage subsystem and data management method of storage subsystem
CN104035830A (zh) 一种数据恢复方法和装置
US20100306466A1 (en) Method for improving disk availability and disk array controller
US6438647B1 (en) Method and apparatus for providing battery-backed immediate write back cache for an array of disk drives in a computer system
US20150286531A1 (en) Raid storage processing
JP2007516524A (ja) 準静的分散技術
CN111124264B (zh) 用于重建数据的方法、设备和计算机程序产品
WO2016137402A1 (en) Data stripping, allocation and reconstruction
CN111124262B (zh) 独立盘冗余阵列(raid)的管理方法、设备和计算机可读介质
CN109725838B (zh) 用于管理多个盘的方法、装置以及计算机可读介质
CN109032513B (zh) 基于ssd和hdd的raid架构及其备份、重建方法
CN111858189A (zh) 对存储盘离线的处理
CN103678025A (zh) 一种磁盘阵列中的磁盘故障处理方法
US10977130B2 (en) Method, apparatus and computer program product for managing raid storage in data storage systems
CN111221473B (zh) 一种存储系统介质免维护的方法
US8402231B2 (en) Storage device, method for restoring data in storage device and storage controller
JP2010267037A (ja) ディスクアレイ装置
JP5169993B2 (ja) データストレージシステム、データ領域管理方法
US9547554B2 (en) Mass storage device and method of operating the same to store parity data
CN114415968B (zh) 存储系统及其数据写入方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant