CN110058789B - 用于管理存储系统的方法、存储系统以及计算机程序产品 - Google Patents

用于管理存储系统的方法、存储系统以及计算机程序产品 Download PDF

Info

Publication number
CN110058789B
CN110058789B CN201810049871.0A CN201810049871A CN110058789B CN 110058789 B CN110058789 B CN 110058789B CN 201810049871 A CN201810049871 A CN 201810049871A CN 110058789 B CN110058789 B CN 110058789B
Authority
CN
China
Prior art keywords
disk
raid
existing
disks
determining
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
CN201810049871.0A
Other languages
English (en)
Other versions
CN110058789A (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.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
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 EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN201810049871.0A priority Critical patent/CN110058789B/zh
Priority to US16/179,428 priority patent/US10831604B2/en
Publication of CN110058789A publication Critical patent/CN110058789A/zh
Application granted granted Critical
Publication of CN110058789B publication Critical patent/CN110058789B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F11/1092Rebuilding, e.g. when physically replacing a failing disk
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/061Improving I/O performance
    • 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/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Abstract

本公开的实施例涉及一种用于管理存储系统的方法、电子设备、存储系统和计算机程序产品。该方法包括:利用第一数目的扩展盘来扩展第二数目的已有盘,以便重建具有预定区段宽度的独立磁盘冗余阵列(RAID),RAID基于所述已有盘被建立,预定区段宽度指示组成一个RAID区段的来自不同盘的盘区段的个数。该方法还包括:确定经重建的RAID所包含的RAID区段的第三数目。该方法还包括:基于第一数目、第二数目、第三数目和预定区段宽度,确定在重建的过程中要在扩展盘和已有盘之间进行数据移动的次数。通过该方法,可以缩短估计数据移动次数的时间。

Description

用于管理存储系统的方法、存储系统以及计算机程序产品
技术领域
本公开的实施例涉及数据存储领域,并且更具体地,涉及一种用于管理存储系统的方法、存储系统以及计算机程序产品。
背景技术
独立磁盘冗余阵列(RAID)通过在多个盘上同时存储和读取数据来大幅度提高存储系统的数据吞吐量。使用RAID可以达到单个驱动几倍、几十倍甚至上百倍的速率。
映射(Mapped)RAID是一种新的RAID技术。与常规RAID的不同之处在于,映射RAID是在由多个盘组成的池的顶部建立的,而不是在若干特定盘上建立的。池中的盘被划分成一系列固定大小的非重叠的段,这些段可以被称为盘区段。因此,池可以被看做是盘区段资源的集合。映射RAID由一组RAID区段组成。每个RAID区段可以被看做是一个常规的RAID。以4D+1P的R5为例,每个RAID区段包括5个盘区段,这5个盘区段是从5个不同的盘分配的,其中的4个盘区段用于保存用户数据,1个盘区段用于保存奇偶校验数据。
与常规RAID相比,映射RAID具有若干优点,例如能够更快速地被重建、支持单个驱动扩展以及在一个池中支持混合大小的驱动。用户在使用映射RAID的过程中,可能会根据实际需要对池进行扩展,以便在扩展后的池上重建RAID。在这种情况下,提前向用户提供与重建映射RAID有关的时间信息将是有意义的。
发明内容
本公开的实施例提供了一种管理存储系统的方案,其能够快速地估计出重建RAID过程中已有盘和扩展盘之间的数据移动次数。
在本公开实施例的第一方面,提供了一种用于管理存储系统的方法。该方法包括利用第一数目的扩展盘来扩展第二数目的已有盘,以便重建具有预定区段宽度的独立磁盘冗余阵列(RAID),RAID基于已有盘被建立,预定区段宽度指示组成一个RAID区段的来自不同盘的盘区段的个数。该方法还包括确定经重建的RAID所包含的RAID区段的第三数目。该方法还包括基于第一数目、第二数目、第三数目和预定区段宽度,确定在重建的过程中要在扩展盘和已有盘之间进行数据移动的次数。
在本公开实施例的第二方面,提供了一种电子设备。该电子设备包括至少一个处理器和包括计算机程序指令的至少一个存储器。至少一个存储器和计算机程序指令被配置为,与至少一个处理器一起,使得电子设备执行动作,所述动作包括:利用扩展盘来扩展已有盘,以便重建具有预定区段宽度的独立磁盘冗余阵列(RAID),RAID基于已有盘被建立,预定区段宽度指示组成一个RAID区段的来自不同盘的盘区段的个数;确定经重建的RAID所包含的RAID区段的第三数目;基于第一数目、第二数目、第三数目和预定区段宽度,确定在重建的过程中要在扩展盘和已有盘之间进行数据移动的次数。
在本公开实施例的第三方面,提供了一种存储系统。该存储系统包括已有盘、扩展盘以及根据本公开实施例的第二方面所述的电子设备。
根据本公开实施例的第四方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使机器执行根据本公开实施例第一方面的方法。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
图1示出了可以在其中实施本公开实施例的示例性运行环境的示意图;
图2a以二维的形式可视化地示出了均匀分布的RAID所对应的领域矩阵的示意图;
图2b以三维的形式可视化地示出了均匀分布的RAID所对应的领域矩阵的示意图;
图3示出了根据本公开实施例的用于管理存储系统的方法的流程图;
图4示出了根据本公开实施例在所需次数的数据移动前后的邻域矩阵的示意图;
图5示出了根据本公开实施例在所需次数的数据移动前后的邻域矩阵的示意图;
图6示出了确定在重建的过程中已有硬盘要向扩展硬盘进行数据移动的第一次数以及扩展盘要向已有盘进行数据移动的第二次数的方法的流程图;
图7示出了在未进行任何数据移动时的邻域矩阵的示意图;
图8示出了一次数据移动前后的邻域矩阵的变化的示意图;
图9示出了确定在重建的过程中已有硬盘要向扩展硬盘进行数据移动的第一次数以及扩展盘要向已有盘进行数据移动的第二次数的方法的流程图。
图10示出了可以用来实施本公开的实施例的示例设备的框图
具体实施方式
下面将参考附图中示出的若干示例实施例来描述本公开的原理。虽然附图中显示了本公开的优选实施例,但应当理解,描述这些实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。
图1示出了可以在其中实施本公开实施例的示例性运行环境100的示意图。环境100包括池120以及在池120上建立RAID 110的控制器130。池120包括已有盘1201、1202、1203、1204…120n和扩展盘120n+1…120N,其中n表示已有盘的数目,N表示已有盘和扩展盘的总数,N-n表示扩展盘的数目。已有盘的数目n取决于所采用的RAID策略。例如,在采用4D+1P的R5策略时,n为大于或等于5的整数,在采用4D+2P的R6策略时,n为大于或等于6的整数。扩展盘的数目N-n为大于或等于1的整数。已有盘1201、1202、1203、1204…120n和扩展盘120n+1…120N中的每一个盘被划分成一系列固定大小的非重叠的区段,这些区段可以被称为盘区段。在实际实现中,取决于存储限制,盘区段可以被设置不同的大小。
在图1所示的环境100中,所示的RAID 110基于池120中的已有盘1201、1202、1203、1204…120n被建立。基于已有盘1201、1202、1203、1204…120n已经建立的RAID 110的逻辑空间被划分成一组连续的非重叠的区段,这些区段被称为RAID区段。每个RAID区段116由从已有盘1201、1202、1203、1204…120n的不同盘选择的预定数目的盘区段组成。预定数目取决于所选择的RAID策略。以4D+1P的R5为例,每个RAID区段包括5个盘区段,这5个盘区段是从5个不同的盘分配的,其中的4个盘区段用于保存用户数据,1个盘区段用于保存奇偶校验数据,在这种情况下预定数目为5。本领域技术人员将理解的是,数值5仅仅是一个示例,根据不同的RAID策略,预定数目可以选取不同的值。在本公开的实施例中,所述预定数目可以被称为RAID 110的宽度,即表示RAID 110中的每个RAID区段116所包含的盘区段的数目。
在图1所示的环境100中,所示的RAID区段116由盘1204的盘区段116-1、盘1203的盘区段116-2、盘1202的盘区段116-3、盘1201的盘区段116-4和盘120n的盘区段116-5组成。多个RAID区段116形成RAID区段组112。RAID 110还包括一个映射表114,用于记录RAID 110中的RAID区段组112中的每个RAID区段116由来自哪些盘的哪些盘区段组成。
目前,在创建RAID区段组112时,为了使RAID区段组112中的RAID区段所包含的盘区段在池120上尽可能均匀分布,使用所谓的邻域矩阵算法。邻域矩阵M是一个N*N的方阵,N是池中的盘的数目,如上所述,N取决于所采用的RAID策略。矩阵中的每一个元素M(i,j)表示在RAID 110中盘i与盘j相邻的次数,即盘i中的盘区段与盘j中的盘区段在同一个RAID区段中的共同出现次数。如果盘i的一个盘区段与盘j的一个盘区段同时出现在同一个RAID区段中,则盘i与盘j就被定义为相邻一次。例如,在图1所示的环境100中,所示的RAID区段116由来自盘1204、盘1203、盘1202、盘1201和盘120n的盘区段组成。相应地,盘1204分别与盘1203、盘1202、盘1201和盘120n相邻,盘1203分别与盘1204、盘1202、盘1201和盘120n n相邻,以此类推。由邻域矩阵的定义可知,邻域矩阵是一个对称矩阵。
如果RAID 110中的RAID区段组112所包含的盘区段在池120上均匀分布,则邻域矩阵M中的各个元素应当彼此接近。因此,邻域矩阵算法的目标就是在完成RAID区段分配之后,使得邻域矩阵M中的各个元素基本相同。图2a和图2b分别以二维和三维的形式可视化地示出了各元素基本相同的邻域矩阵。在图2a和图2b的例子中,池120中的盘的数目N为20,这仅仅是示例性的,N根据所采取的RAID策略可以采用不同的值。如图2a和图2b所示,经过邻域矩阵算法之后,矩阵中各个元素的值基本上相同,即与图2a和图2b中所示的邻域矩阵相对应的RAID在池上均匀分布。
现在返回图1,在本公开的实施例中,控制器130利用扩展盘120n+1…120N对池120进行扩展,以便基于扩展后的池120重建RAID110,使得经重建的RAID 110中的RAID区段由来自已有盘1201、1202、1203、1204…120n和扩展盘120n+1…120N中的不同盘的盘区段组成。控制器130估计在重建RAID 110的过程中要在已有盘1201、1202、1203、1204…120n和扩展盘120n+1…120N之间进行数据移动的次数,以使得经重建的RAID 110在扩展后的池120上均匀分布,即,使得与经重建的RAID 110相关的邻域矩阵的各元素达到基本相同。控制器130基于所估计的移动次数来向用户提供与重建有关的时间信息。
与常规方法不同的是,在本公开的实施例中,控制器130不需要对已有硬盘1201、1202、1203、1204…120n和扩展硬盘120n+1…120N之间的复杂的数据移动进行模拟,而是基于经重建的RAID 110的RAID区段组112所包含的RAID区段116的数目、扩展盘120n+1…120N的数目、已有盘1201、1202、1203、1204…120n的数目和RAID的预定区段宽度,来确定在重建的过程中要在扩展盘120n+1…120N和已有盘1201、1202、1203、1204…120n之间进行数据移动的次数。下面将对本公开提出的方案进行详细描述。
图3示出了根据本公开实施例的用于管理存储系统的方法300的流程图。方法300可以由图1中所示的控制器130来执行。
在302,控制器130利用第一数目NEW_DISK_CNT的扩展盘来扩展第二数目OLD_DISK_CNT的已有盘,以便重建具有预定区段宽度W的RAID。RAID基于已有硬盘被建立,预定区段宽度W指示组成一个RAID区段的来自不同盘的盘区段的个数。如上所述,第二数目OLD_DISK_CNT取决于所采取的RAID策略,在本公开的实施例中,二数目OLD_DISK_CNT大于或等于预定区段宽度W。第二数目OLD_DISK_CNT为大于0的整数。
在304,控制器130确定经重建的RAID所包含的RAID区段的第三数目。在本公开的实施例中,响应于预定区段宽度W大于第一数目NEW_DISK_CNT,将第三数目确定为等于基于已有硬盘建立的RAID所包含的RAID区段的数目OLD_RE_CNT。响应于预定区段宽度W小于或等于第一数目NEW_DISK_CNT,将第三数目确定为等于基于已有硬盘建立的RAID区段组所包含的RAID区段的数目OLD_RE_CNT与单独基于扩展硬盘能够建立的RAID区段组所包含的RAID区段的数目NEW_RE_CNT之和。
在306,控制器130基于第一数目NEW_DISK_CNT、第二数目OLD_DISK_CNT、第三数目和预定区段宽度W,来确定在重建的过程中要在扩展盘和已有盘之间进行数据移动的次数。
如果第一数目NEW_DISK_CNT(即扩展盘的数目)小于预定区段宽度W,将无法直接在扩展盘上建立RAID区段组。这是因为:对于每个RAID区段,必须为其分配来自W个盘的盘区段,而仅利用扩展盘无法分配满足这一要求的盘区段。在这种情况下,如图4所示,为了使经重建的RAID的RAID区段组在扩展盘和已有盘上均匀分布,只需从已有盘向扩展盘移动数据即可,其中图4示出了从已有硬盘向扩展硬盘进行所需次数的数据移动前后RAID的邻域矩阵。
为此,针对第一数目NEW_DISK_CNT小于预定区段宽度W的情况,在本公开的实施例中,基于第一数目NEW_DISK_CNT、第二数目OLD_DISK_CNT、第三数目(此时第三数目为OLD_RE_CNT)和预定区段宽度W,确定在重建的过程中已有盘要向所述扩展盘移动数据的第一次数,作为所述次数。在这种情况下,控制器130可以基于下式来计算所述次数SHUFFLE_MOVEMENT_CNT:
SHUFFLE_MOVEMENT_CNT=OLD_RE_CNT*W*
NEW_DISK_CNT/(OLD_DISK_CNT+NEW_DISK_CNT)。
其中,OLD_RE_CNT*W表示已有盘和扩展盘中用于重建RAID的盘区段的数目。NEW_DISK_CNT/(OLD_DISK_CNT+NEW_DISK_CNT)表示扩展盘在扩展盘和已有盘中所占的比例。
如果第一数目NEW_DISK_CNT大于或等于预定区段宽度W,则可以直接在扩展盘上单独建立新的RAID区段组。然而,此时已有盘和扩展盘之间并不存在相邻关系,即在邻域矩阵中,M(i,j)为零,其中盘i为已有盘,盘j为扩展盘。如图5所示,为了改善重建的RAID的IO性能,需要通过在已有盘和扩展盘两者之间进行数据移动,以使得经重建的RAID的RAID区段组在已有盘和扩展盘上均匀分布,其中图5示出了在已有硬盘和扩展硬盘两者之间进行所需次数的数据移动前后的邻域矩阵。
为此,针对第一数目NEW_DISK_CNT大于或等于预定区段宽度W的情况,在本公开的实施例中,控制器130基于第一数目NEW_DISK_CNT、第二数目OLD_DISK_CNT、第三数目(如上所述,此时第三数目为OLD_RE_CNT和OLD_RE_CNT之和)和预定区段宽度W,确定在重建的过程中已有盘要向扩展盘移动数据的第一次数以及扩展盘要向已有盘移动数据的第二次数。稍后将会在图6中详细描述确定第一次数和第二次数的详细过程。之后,控制器130基于所确定的第一次数和第二次数之和来确定已有盘和扩展盘两者之间的总移动次数。
根据图3所示的方法300,只需要获得第一数目NEW_DISK_CNT、第二数目OLD_DISK_CNT、第三数目和预定区段宽度W,就能确定在重建中需要多少次数据移动来使得经重建的RAID的RAID区段组中的盘区段在已有硬盘和扩展硬盘上均匀分布。避免了对这些数据移动进行模拟,节省了计算资源,并且能够快速地获得所需移动次数。
此外,根据方法300,控制器130还可以基于所确定的次数,来向用户提供与重建RAID有关的时间信息。在本公开的实施例中,控制器130可以基于所确定的次数和单次数据移动所需的时间,来确定重建RAID所需的时间。
图6示出了确定在重建的过程中已有硬盘要向扩展硬盘进行数据移动的第一次数以及扩展盘要向已有盘进行数据移动的第二次数的方法600的流程图。方法600是图3所示框306的一种实现方式,其可以由图1中所示的控制器130来执行。
在602,控制器130基于第一数目NEW_DISK_CNT、第二数目OLD_DISK_CNT、第三数目(OLD_RE_CNT和OLD_RE_CNT之和)和预定区段宽度W,确定已有硬盘中的盘区段与扩展盘中的盘区段在经重建的RAID的同一RAID中共同出现的预计次数。
在本公开的实施例中,控制器130基于第三数目和预定区段宽度W,确定已有盘和扩展盘中的盘区段彼此共同出现在经重建的RAID中的同一RAID区段中的所需次数;以及基于所确定的所需次数、第一数目和第二数目,确定所述预计次数。
下面结合图7详细描述如何确定所述预计次数。图7示出了在未进行任何数据移动时邻域矩阵700的示意图。在进行数据移动之前,N*N的邻域矩阵700具有两个零区域702和两个非零区域704,其中N=NEW_DISK_CNT+OLD_DISK_CNT。在已有硬盘和扩展硬盘之间移动数据的目的,就是为了填充零区域702,使得零区域702中的元素与非零区域704中的元素尽可能相同,即,使得经重建的RAID的RAID区段组在已有盘和扩展盘上均匀分布。
每个RAID区段将引入W*(W-1)个相邻关系,因此每个RAID区段对邻域矩阵的全部元素之和的贡献为W*(W-1)。经重建的RAID中一共具有第三数目(OLD_RE_CNT和OLD_RE_CNT之和)的RAID区段,因此在RAID区段组均匀分布时邻域矩阵的全部元素之和为(OLD_RE_CNT+NEW_RE_CNT)*W*(W-1),该和也表示已有盘和扩展盘中的盘区段彼此共同出现在经重建的RAID中的同一RAID区段中的次数。
考虑到对角线的元素为零,进行所需次数的数据移动之后,邻域矩阵700的全部非零元素应该为N*(N-1)个,为此,这些非零元素的平均值应为:
Figure BDA0001552051150000091
其中,OLD_RE_CNT表示单独基于已有盘建立的RAID区段的数目,NEW_RE_CNT表示单独基于扩展盘能够建立的RAID区段的数目,W表示预定区段宽度,N表示已有盘和扩展盘的总数,在本公开的实施例中N=NEW_DISK_CNT+OLD_DISK_CNT。
在图7所示的零区域702中,一共存在OLD_DISK_CNT*NEW_DISK_CNT个元素。在进行所需次数的数据移动之后,零区域702中的元素的预期和应该为:
EXPECTED_SUM_ZERO_ZONE=OLD_DISK_CNT*NEW_DISK_CNT*AVG (2)
其中,OLD_DISK_CNT表示已有盘的数目,NEW_DISK_CNT表示扩展盘的数目。在本公开的实施例中,EXPECTED_SUM_ZERO_ZONE即表示已有硬盘中的盘区段与扩展盘中的盘区段在经重建的RAID的同一RAID中共同出现的预计次数。
在604,控制器130确定已有盘要向扩展盘移动数据的第一次数以及扩展盘要向已有盘移动数据的第二次数,使得在从已有盘向扩展盘进行第一次数的数据移动以及在从扩展盘向已有盘进行第二次数的数据移动之后,已有盘中的盘区段与扩展盘中的盘区段在经重建的RAID的同一RAID区段中共同出现的次数达到预计次数。
根据图6所示的方法600,只需要获得第一数目NEW_DISK_CNT、第二数目OLD_DISK_CNT、第三数目和预定区段宽度W,就能确定出已有硬盘中的盘区段与扩展盘中的盘区段在经重建的RAID的同一RAID中共同出现的预计次数,进而基于预计次数来确定在重建中需要多少次数据移动来使得经重建的RAID的RAID区段组中的盘区段在已有硬盘和扩展硬盘上均匀分布。这避免了对这些数据移动进行模拟,节省了计算资源,并且能够快速地获得所需移动次数。
图9示出了确定在重建的过程中已有硬盘要向扩展硬盘进行数据移动的第一次数以及扩展盘要向已有盘进行数据移动的第二次数的方法900的流程图。方法900是方法600的一种具体实现方式,其可以由图1中所示的控制器130来执行。为了便于理解,在描述图9之前,先描述一些基本概念。
每次从已有盘向扩展盘移动数据或者从扩展盘向已有盘移动数据,都会对已有盘中的盘区段与扩展盘中的盘区段在RAID的同一RAID区段中共同出现的次数有所贡献。下面结合图8来描述如何确定每次移动对共同出现的次数的贡献。
图8示出了一次数据移动前后的邻域矩阵的示意图。在图8所示的实施例中,预定区段宽度W为5,扩展盘的第一数目为10,已有盘的第二数目为30。应当理解的是,这些数值仅仅是示例性的,本公开的实施例并不限于此。如图8中左侧的矩阵所示出的,存在一个RAID区段,其由已有盘3、11、22、24、27的盘区段组成。在将已有盘3的盘区段中的数据移动至扩展盘30之后,M(3,11)、M(3,22)、M(3,24)、M(3,27)分别减少1,而M(30,11)、M(30,22)、M(30,24)、M(30,27)分别增加1。在该例子中,从已有盘3向扩展盘30移动一次数据,对已有盘和扩展盘在同一RAID区段中共同出现的次数贡献为4。
更一般地,如果一个RAID区段包括x个来自扩展盘的盘区段和y个来自已有盘的盘区段(x+y=W),那么将该RAID区段中的来自已有盘的盘区段的数据移动至扩展盘,这种移动将会对上述共同出现次数贡献y-1-x。原因在于,在将已有盘中的数据移动到扩展盘之后,由于建立了扩展盘和已有盘之间的y-1个相邻关系,所以将在零区域增加y-1个点,同时由于该移动解除了扩展盘与已有盘之间的x个关系,所以将减少x个点。考虑到x+y=W,所述贡献为W-1-2*x。这意味着,在一个RAID区段中,如果已经从一方向另一方进行了x次数据移动,那么再从该方向另一方移动一次数据,对上述共同出现次数将贡献W-1-2*x。
由此可见,一次数据移动对已有盘和扩展盘在同一RAID区段中共同出现的次数的贡献取决于已经移动了多少盘区段,移动的盘区段越多,贡献就越少。因此,在本公开的实施例中,不是以单一的方向不断地从一方的盘区段向另一方移动数据,否则将会导致另一方的预留(空闲)盘区段快速耗尽。相反,在本公开的实施例中,以交替的方式进行数据移动,以使得双方的空闲盘区段保持平衡。
在理解了上述概念之后,请参考图9。在902中,控制器130根据公式(1)和(2)确定已有盘中的盘区段与扩展盘中的盘区段在经重建的RAID的同一RAID区段中共同出现的预计次数。
在904,控制器130分别将已有盘中的盘区段与扩展盘中的盘区段在经重建的RAID的同一RAID区段中的共同出现次数、已有硬盘已移动次数和扩展硬盘已移动次数初始化为零。
在906,控制器130确定所述共同出现次数是否大于或等于在902处确定的预计次数。在908,响应于共同出现次数大于或等于所确定的预计次数,将在重建的过程中要由已有硬盘向扩展硬盘移动数据的第一次数确定为等于已有硬盘已移动次数。在910,将在重建的过程中要由扩展硬盘向已有硬盘移动数据的第二次数确定为等于扩展硬盘已移动次数。
在914,响应于共同出现次数小于预计次数,确定已有盘已移动次数是否小于或等于扩展盘已移动次数。在916,响应于已有盘已移动次数小于或等于扩展盘已移动次数,确定从已有盘向扩展盘移动数据对共同出现次数的第一贡献。在本公开的实施例中,根据W-1-OLD_DISK_EXTENT_MOVE_CNT/OLD_RE_CNT*2来确定第一贡献,其中OLD_DISK_EXTENT_MOVE_CNT表示已有硬盘已移动次数。在本公开的实施例中,OLD_DISK_EXTENT_MOVE_CNT/OLD_RE_CNT是整数除法。
在918,将第一贡献加到共同出现次数。在920,使已有盘已移动次数递增1。然后方法900前进到906。
在922,响应于已有盘已移动次数大于扩展盘已移动次数,确定从扩展盘向已有盘移动数据对共同出现次数的第二贡献。在本公开的实施例中,根据W-1-NEW_DISK_EXTENT_MOVE_CNT/NEW_RE_CNT*2来确定第二贡献,其中NEW_DISK_EXTENT_MOVE_CNT表示已有硬盘已移动次数。在本公开的实施例中,NEW_DISK_EXTENT_MOVE_CNT/NEW_RE_CNT是整数除法。
在924,将第二贡献加到共同出现次数。在926,使扩展盘已移动次数递增1.然后方法900前进到906。
在方法900中,以交替的方式在已有盘和扩展盘之间移动数据。如果一次移动对共同出现次数的贡献较大,则选择该次数据移动,以使得总的移动次数尽可能小。
根据图9所示的方法900,仅仅基于已有盘的数目、扩展盘的数目、RAID的预定区段宽度以及经重建的RAID所包含的RAID区段的数目这几个数值,即可确定在重建中在已有盘和扩展盘之间进行数据移动的次数,而不需要对数据移动进行模拟。由此,可以快速地确定所需的数据移动次数,从而可以快速地向用户提供关于重建的时间估计。
图10示出了可以用来实施本公开的实施例的示例设备1000的示意性框图。设备1000可以用于实现图1的控制器130。如图所示,设备1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序指令或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序指令,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元1001执行上文所描述的各个方法和处理,例如方法300、方法600和/或方法900。例如,在一些实施例中,方法300、方法600和/或方法900可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由CPU1001执行时,可以执行上文描述的方法300、方法600和/或方法900的一个或多个步骤。备选地,在其他实施例中,CPU 1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法300、方法600和/或方法900。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (16)

1.一种用于管理存储系统的方法,包括:
利用第一数目的扩展盘来扩展第二数目的已有盘,以便重建具有预定区段宽度的独立磁盘冗余阵列(RAID),所述RAID基于所述已有盘被建立,所述预定区段宽度指示组成一个RAID区段的来自不同盘的盘区段的个数;
确定经重建的RAID所包含的RAID区段的第三数目;
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定在所述重建的过程中要在所述扩展盘和所述已有盘之间进行数据移动的次数。
2.根据权利要求1所述的方法,其中确定所述次数包括:
比较所述第一数目与所述预定区段宽度;以及
响应于所述第一数目小于所述预定区段宽度:
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定在所述重建的过程中所述已有盘要向所述扩展盘移动数据的第一次数,作为所述次数。
3.根据权利要求2所述的方法,其中确定所述第一次数包括:
基于所述第三数目和所述预定区段宽度,确定所述已有盘和所述扩展盘中用于所述重建的盘区段的第四数目;
确定所述扩展盘的所述第一数目在所述扩展盘和所述已有盘的总数中的比例,所述总数为所述第一数目与所述第二数目之和;以及
基于所述第四数目和所述比例,来确定所述扩展盘中将用于所述重建的盘区段的数目,作为所述第一次数。
4.根据权利要求2所述的方法,还包括响应于所述第一数目大于或等于所述预定区段宽度:
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定在所述重建的过程中所述已有盘要向所述扩展盘移动数据的所述第一次数以及所述扩展盘要向所述已有盘移动数据的第二次数;以及
基于所述第一次数和所述第二次数,确定所述次数。
5.根据权利要求4所述的方法,其中确定所述第一次数和所述第二次数包括:
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定所述已有盘中的盘区段与所述扩展盘中的盘区段在所述经重建的RAID的同一RAID区段中共同出现的预计次数;以及
确定所述第一次数和所述第二次数,使得在从所述已有盘向所述扩展盘进行所述第一次数的数据移动以及在从所述扩展盘向所述已有盘进行所述第二次数的数据移动之后,所述已有盘中的盘区段与所述扩展盘中的盘区段在所述经重建的RAID的同一RAID区段中共同出现的次数达到所述预计次数。
6.根据权利要求5所述的方法,其中确定所述预计次数包括:
基于所述第三数目和所述预定区段宽度,确定所述已有盘和所述扩展盘中的盘区段彼此共同出现在所述经重建的RAID中的同一RAID区段中的第五次数;以及
基于所述第五次数、所述第一数目和所述第二数目,确定所述预计次数。
7.根据权利要求1所述的方法,还包括:
基于所述次数,确定所述重建所需的时间。
8.一种电子设备,包括:
至少一个处理器;以及
包括计算机程序指令的至少一个存储器,所述至少一个存储器和所述计算机程序指令被配置为,与所述至少一个处理器一起,使得所述电子设备执行动作,所述动作包括:
利用第一数目的扩展盘来扩展第二数目的已有盘,以便重建具有预定区段宽度的独立磁盘冗余阵列(RAID),所述RAID基于所述已有盘被建立,所述预定区段宽度指示组成一个RAID区段的来自不同盘的盘区段的个数;
确定经重建的RAID所包含的RAID区段的第三数目;
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定在所述重建的过程中要在所述扩展盘和所述已有盘之间进行数据移动的次数。
9.根据权利要求8所述的电子设备,其中所述动作还包括:
比较所述第一数目与所述预定区段宽度;以及
响应于所述第一数目小于所述预定区段宽度:
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定在所述重建的过程中所述已有盘要向所述扩展盘移动数据的第一次数,作为所述次数。
10.根据权利要求9所述的电子设备,其中所述动作还包括:
基于所述第三数目和所述预定区段宽度,确定所述已有盘和所述扩展盘中用于所述重建的盘区段的第四数目;
确定所述扩展盘的所述第一数目在所述扩展盘和所述已有盘的总数中的比例,所述总数为所述第一数目与所述第二数目之和;以及
基于所述第四数目和所述比例,来确定所述扩展盘中将用于所述重建的盘区段的数目,作为所述第一次数。
11.根据权利要求9所述的电子设备,其中所述动作还包括:响应于所述第一数目大于或等于所述预定区段宽度,
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定在所述重建的过程中所述已有盘要向所述扩展盘移动数据的所述第一次数以及所述扩展盘要向所述已有盘移动数据的第二次数;以及
基于所述第一次数和所述第二次数,确定所述次数。
12.根据权利要求11所述的电子设备,其中所述动作还包括:
基于所述第一数目、所述第二数目、所述第三数目和所述预定区段宽度,确定所述已有盘中的盘区段与所述扩展盘中的盘区段在所述经重建的RAID的同一RAID区段中共同出现的预计次数;以及
确定所述第一次数和所述第二次数,使得在从所述已有盘向所述扩展盘进行所述第一次数的数据移动以及在从所述扩展盘向所述已有盘进行所述第二次数的数据移动之后,所述已有盘中的盘区段与所述扩展盘中的盘区段在所述经重建的RAID的同一RAID区段中共同出现的次数达到所述预计次数。
13.根据权利要求12所述的电子设备,其中所述动作还包括:
基于所述第三数目和所述预定区段宽度,确定所述已有盘和所述扩展盘中的盘区段彼此共同出现在所述经重建的RAID中的同一RAID区段中的第五次数;以及
基于所述第五次数、所述第一数目和所述第二数目,确定所述预计次数。
14.根据权利要求8所述的电子设备,其中所述动作还包括:
基于所述次数,确定所述重建所需的时间。
15.一种存储系统,包括已有盘,扩展盘和根据权利要求8-14中任意一项所述的电子设备。
16.一种非易失性计算机可读介质,其上存储有机器可执行指令,所述机器可执行指令在被执行时使机器执行根据权利要求1至7中任意一项所述的方法。
CN201810049871.0A 2018-01-18 2018-01-18 用于管理存储系统的方法、存储系统以及计算机程序产品 Active CN110058789B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810049871.0A CN110058789B (zh) 2018-01-18 2018-01-18 用于管理存储系统的方法、存储系统以及计算机程序产品
US16/179,428 US10831604B2 (en) 2018-01-18 2018-11-02 Storage system management method, electronic device, storage system and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810049871.0A CN110058789B (zh) 2018-01-18 2018-01-18 用于管理存储系统的方法、存储系统以及计算机程序产品

Publications (2)

Publication Number Publication Date
CN110058789A CN110058789A (zh) 2019-07-26
CN110058789B true CN110058789B (zh) 2022-06-03

Family

ID=67213933

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810049871.0A Active CN110058789B (zh) 2018-01-18 2018-01-18 用于管理存储系统的方法、存储系统以及计算机程序产品

Country Status (2)

Country Link
US (1) US10831604B2 (zh)
CN (1) CN110058789B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203442B (zh) * 2016-03-16 2020-04-21 伊姆西Ip控股有限责任公司 独立磁盘冗余阵列的重建性能的评估方法和设备
CN111124249B (zh) 2018-10-30 2023-09-22 伊姆西Ip控股有限责任公司 用于数据处理的方法、设备和计算机程序产品
CN111124271B (zh) * 2018-10-31 2023-09-08 伊姆西Ip控股有限责任公司 用于针对磁盘系统执行资源重新分配的方法、装置和介质
CN113126891A (zh) * 2020-01-15 2021-07-16 伊姆西Ip控股有限责任公司 存储管理的方法、设备和计算机程序产品
CN112463050A (zh) * 2020-11-26 2021-03-09 新华三技术有限公司成都分公司 一种存储系统扩容方法、装置、设备及机器可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810244A (zh) * 2013-12-09 2014-05-21 北京理工大学 一种基于数据分布的分布式数据存储系统的扩容方法
CN104572842A (zh) * 2014-12-04 2015-04-29 长沙数析信息科技有限公司 一种分布式文件系统中的条带化卷扩展数据迁移方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615352A (en) * 1994-10-05 1997-03-25 Hewlett-Packard Company Methods for adding storage disks to a hierarchic disk array while maintaining data availability
US5524204A (en) * 1994-11-03 1996-06-04 International Business Machines Corporation Method and apparatus for dynamically expanding a redundant array of disk drives
US5809224A (en) * 1995-10-13 1998-09-15 Compaq Computer Corporation On-line disk array reconfiguration
JP3702231B2 (ja) * 2002-01-31 2005-10-05 株式会社東芝 ディスクアレイ装置及び同装置における動的記憶容量拡張方法
JP2004213064A (ja) * 2002-12-26 2004-07-29 Fujitsu Ltd Raid装置及びその論理デバイス拡張方法
JP2005107841A (ja) * 2003-09-30 2005-04-21 Toshiba Corp ディスクアレイコントローラ及び容量拡張方法
US7774542B2 (en) * 2005-07-06 2010-08-10 Ji Zhang System and method for adaptive operation of storage capacities of RAID systems
EP2021904A2 (en) * 2006-05-24 2009-02-11 Compellent Technologies System and method for raid management, reallocation, and restriping
TWI334564B (en) * 2007-02-14 2010-12-11 Via Tech Inc Data migration systems and methods for independent storage device expansion and adaptation
US20080276041A1 (en) * 2007-05-01 2008-11-06 International Business Machines Corporation Data storage array scaling method and system with minimal data movement
US9626110B2 (en) * 2013-02-22 2017-04-18 Hitachi, Ltd. Method for selecting a page for migration based on access path information and response performance information
JP2014199591A (ja) * 2013-03-29 2014-10-23 株式会社東芝 記憶装置制御システム、記憶装置制御装置及びプログラム
CN103268202B (zh) * 2013-04-23 2017-02-08 华为技术有限公司 一种扩容方法和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810244A (zh) * 2013-12-09 2014-05-21 北京理工大学 一种基于数据分布的分布式数据存储系统的扩容方法
CN104572842A (zh) * 2014-12-04 2015-04-29 长沙数析信息科技有限公司 一种分布式文件系统中的条带化卷扩展数据迁移方法

Also Published As

Publication number Publication date
CN110058789A (zh) 2019-07-26
US10831604B2 (en) 2020-11-10
US20190220357A1 (en) 2019-07-18

Similar Documents

Publication Publication Date Title
CN110058789B (zh) 用于管理存储系统的方法、存储系统以及计算机程序产品
CN110135985A (zh) 一种区块链上交易的并行执行方法及系统
CN107526531B (zh) 为映射独立盘冗余阵列(raid)选择raid级别的方法和设备
US10747460B2 (en) Method, device and computer program product for changing type of storage system
US10852966B1 (en) System and method for creating mapped RAID group during expansion of extent pool
US10922201B2 (en) Method and device of data rebuilding in storage system
US9354826B2 (en) Capacity expansion method and device
CN111858130A (zh) 用于拆分盘集的方法、设备和计算机程序产品
US20200127684A1 (en) Method and system for storing data locally repairable and efficient multiple encoding
US11106376B2 (en) Method of storage allocation, electronic device, storage system and computer program product
CN110737401B (zh) 用于管理独立冗余磁盘阵列的方法、设备和计算机程序产品
US11474919B2 (en) Method for managing multiple disks, electronic device and computer program product
US20190004728A1 (en) Method and device for managing storage system
US20200117386A1 (en) Method and apparatus for calculating storage system available capacity
CN111857553A (zh) 管理盘阵列的方法、装置和计算机程序产品
CN110058785B (zh) 用于管理存储系统的方法和设备
CN112732168B (zh) 用于管理存储系统的方法、设备和计算机程序产品
CN112948279A (zh) 管理存储系统中的访问请求的方法、设备和程序产品
CN109725827A (zh) 管理存储系统的方法、系统和计算机程序产品
US11119703B2 (en) Utilizing a set of virtual storage units distributed across physical storage units
CN115202589B (zh) 放置组成员选择方法、装置、设备及可读存储介质
CN111857560A (zh) 用于管理数据的方法、设备和计算机程序产品
US11163642B2 (en) Methods, devices and computer readable medium for managing a redundant array of independent disks
JP2010191903A (ja) 分散ファイルシステムのストライピング種別選択方法及びその分散ファイルシステム
US11513681B2 (en) Method, device, and computer program product for managing storage system

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