CN105224261B - 一种块虚拟化阵列的实现方法及装置 - Google Patents
一种块虚拟化阵列的实现方法及装置 Download PDFInfo
- Publication number
- CN105224261B CN105224261B CN201510713556.XA CN201510713556A CN105224261B CN 105224261 B CN105224261 B CN 105224261B CN 201510713556 A CN201510713556 A CN 201510713556A CN 105224261 B CN105224261 B CN 105224261B
- Authority
- CN
- China
- Prior art keywords
- raidlet
- raid
- grouping
- disk
- grouped
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种块虚拟化阵列的实现方法及装置,所述方法包括:创建独立冗余磁盘阵列RAID,所述RAID包括多个逻辑磁盘RAIDlet;按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组;其中,所述分组的数量小于所述RAIDlet的数量,所述RAID的地址空间在分组之间是线性的,同一分组内,所述RAID的地址按条带依次分布在该分组中的各RAIDlet上。应用本发明实施例可以提高顺序读写的磁盘利用率,并提高顺序读写性能。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种块虚拟化阵列的方法及装置。
背景技术
随着数据容量剧增和机械硬盘容量的不断增大,传统RAID(Redundant Arrays ofIndependent Disks,独立冗余磁盘阵列)受限于磁盘个数,且重建耗时较长。新一代的基于块虚拟化的RAID技术应运而生。块虚拟化是针对传统RAID的缺点发展而来的全新技术,主要原理是将一组磁盘组成存储池(POOL),其中每个磁盘划分成一个个小粒度的数据块(Chunklet),根据指定RAID策略(N+M比如:10+1或8+2)从池中选取多个Chunklet组成一个RAIDlet(逻辑磁盘),再由多个RAIDlet组成一个RAID提供给上层使用。块虚拟化基于数据块来构建RAID组,使得数据均匀地分布到存储池的所有磁盘上,然后以数据块为单元来进行资源管理。
然而实践发现,现有基于块虚拟化RAID技术中,RAID由多个RAIDlet组成,对上层提供的地址空间在每个RAIDlet上是连续的,一个RAIDlet空间接着下一个RAIDlet空间,整体线性的对上层提供地址空间。如果是顺序读写业务,流量是依次遍历一个一个RAIDlet的,在读写一个RAIDlet时可能其它所有RAIDlet所在的磁盘都处于空闲状态,而读写中的RAIDlet所命中的磁盘是性能瓶颈。如果组成存储池的磁盘数目众多,则空闲的磁盘也更多,不能有效利用存储池中的所有磁盘资源。
发明内容
本发明提供一种块虚拟化阵列的实现方法及装置,以解决现有基于块虚拟化RAID技术中顺序读写时磁盘利用率低的问题。
根据本发明实施例的第一方面,提供一种块虚拟化阵列的实现方法,包括:
创建独立冗余磁盘阵列RAID,所述RAID包括多个逻辑磁盘RAIDlet;
按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组;其中,所述分组的数量小于所述RAIDlet的数量,所述RAID的地址空间在分组之间是线性的,同一分组内,所述RAID的地址按条带依次分布在该分组中的各RAIDlet上。
根据本发明实施例的第二方面,提供一种块虚拟化阵列的实现装置,包括:
创建单元,用于创建独立冗余磁盘阵列RAID,所述RAID包括多个逻辑磁盘RAIDlet;
分组单元,用于按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组;其中,所述分组的数量小于所述RAIDlet的数量,所述RAID的地址空间在分组之间是线性的,同一分组内,所述RAID的地址按条带依次分布在该分组中的各RAIDlet上。
应用本发明实施例,通过在创建RAID之后,按照RAIDlet的索引编号顺序对RAIDlet进行分组,其中,该分组的数量小于RAIDlet的数量,RAID的地址空间在分组之间是线性的,且同一分组内RAID的地址按条带依次分布在该分组中的各RAIDlet上,由于RAIDlet分组中至少存在一个分组包括两个连续的RAIDlet,该两个连续的RAIDlet与单个RAIDlet相比,包括的Chunklet分布在更多的磁盘上,当接收到顺序读写业务时,可以下发到同时下发到更多的磁盘上,从而,提高了顺序读写时磁盘利用率,并提高了顺序读写性能。
附图说明
图1是本发明实施例提供的一种块虚拟化阵列的实现方法的流程示意图;
图2A和2B是本发明实施例提供的一种对RAIDlet进行分组的示意图;
图3是本发明实施例提供的另一种块虚拟化阵列的实现方法的流程示意图;
图4是本发明实施例提供的一种块虚拟化阵列的实现装置的结构示意图;
图5是本发明实施例提供的另一种块虚拟化阵列的实现装置的结构示意图;
图6是本发明实施例提供的另一种块虚拟化阵列的实现装置的结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面首先对现有基于块虚拟的RAID技术中选取Chunklet的策略和算法,以及RAID地址空间分布进行简单说明。其中:
选取Chunklet的策略和算法:组成一个RAIDlet的Chunklet必须分布在不同的物理磁盘上,不能有两个或两个以上的Chunklet位于同一物理磁盘上,以满足策略要求的冗余性。在此基础上,选取Chunklet采用随机算法,由于随机算法的均衡性,已申请的Chunklet会均匀分布到存储池内所有磁盘上,使所有磁盘的使用率保持一致。
RAID地址空间分布:创建RAID的过程是依次创建其下RAIDlet的过程,创建每一个RAIDlet的过程是到存储池申请组成该RAIDlet的所有Chunklet,其中,Chunklet的选取策略和算法见上。RAID创建成功后,RAID中的所有RAIDlet按索引编号,地址空间按索引编号顺序对外提供给上层使用。
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图1,为本发明实施例提供的一种块虚拟化阵列的实现方法,如图1所示,该方法可以包括以下步骤:
步骤101、创建RAID,该RAID包括多个RAIDlet。
本发明实施例中,图1所描述的方法流程的执行主体可以为存储服务器或存储服务器中的处理单元,如CPU(Center Process Unit,中央处理器),为便于描述,以下该方法的执行主体为存储服务器为例进行说明。
本发明实施例中,当存储服务器需要创建基于块虚拟化的RAID时,存储服务器可以根据指定的RAID策略从存储池的磁盘上选取预设数量的Chunklet创建RAIDlet,并根据所创建的RAIDlet创建该RAID;其中,存储服务器选择Chunklet时,需要保证组成一个RAIDlet的Chunklet分布在不同的物理磁盘上。
步骤102、按照RAIDlet的索引编号顺序对RAIDlet进行分组;其中,该分组的数量小于RAIDlet的数量,该RAID的地址空间在分组之间是线性的,同一分组内,该RAID的地址按条带一次分布在该分组中的各RAIDlet上。
本发明实施例中,存储服务器创建RAID成功后,可以对RAID中所有RAIDlet按索引编号,并按照各RAIDlet的索引编号顺序对RAIDlet进行分组;其中,分组的数量小于RAIDlet的数量,即至少存在一个分组中包括;两个或两个以上的RAIDlet。
举例来说,假设RAID中共包括8个RAIDlet(按索引编号依次为RAIDlet0~RAIDlet7),则存储服务器可以按照RAIDlet的索引编号顺序将RAID分为4个分组(RAIDlet-Rroup),分别为RAIDlet0和RAIDlet1、RAIDlet2和RAIDlet3、RAIDlet4和RAIDlet5以及RAIDlet6和RAIDlet7;或者存储服务器还可以按照RAIDlet的索引编号顺序将RAID分为3个分组,分别为RAIDlet0~RAIDlet2、RAIDlet3~6以及RAIDlet7~RAIDlet8。
需要注意的是,在本发明实施例中,存储服务器对RAIDlet进行分组时,并不一定需要进行等分,即各分组中RAIDlet的数量不要求全部相同。
作为一种可选的实施方式,上述步骤102中,按照RAIDlet的索引编号顺序对RAIDlet进行分组,可以包括以下步骤:
11)、根据RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量;
12)、按照RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
在该实施方式中,存储服务器在对RAIDlet进行分组时,可以根据RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量。
其中,为了尽可能提高顺序读写时存储池中磁盘资源的利用率,存储服务器对RAIDlet进行分组时,可以尽可能地保证同一分组的各RAIDlet中包括的Chunklet中包括尽可能多的磁盘上的Chunklet。同时,为了保证单盘IO(Input/Output,输入/输出)的顺序性,存储服务器对RAIDlet进行分组时,可以尽可能保证同一分组的各RAIDlet中未包括同一磁盘上的两个或两个以上Chunklet。
相应地,为了达到上述目的,在一种优选的实施方式中,根据RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量,可以包括:
若RAID对应的RAID策略为N+M,存储池内磁盘总数为Z,则根据以下公式确定各组分中RAIDlet的目标数量G:
G≥Z/(M+N)
G-1<Z/(M+N)
其中,N、M、Z、G均为正整数。
在该实施方式中,考虑到当RAID策略为N+M,即每个RAIDlet中包括N+M个Chunklet时,连续的或个RAIDlet的组合可以满足在包括存储池中所有磁盘中的Chunkle的情况下,各RAIDlet中包括同一磁盘上的两个Chunklet的概率最低,因此,存储设备在对RAIDlet进行分组时,可以根据上述公式确定每个分组(RAIDlet-Group)中的RAIDlet的数量。其中,为对“*”向下取整,例如,
其中,在本发明实施例中,存储设备根据上述公式确定分组中RAIDlet的目标数量G的具体实现可以通过以下算法实现:
G=Z/(N+M)
If(0!=Z%(N+M))
{
G++;
}
在本发明实施例中,通过上述算法确定分组中RAIDlet的目标数量即可以保证该分组中的RAIDlet包括的Chunklet分布到存储池的所有磁盘上,且同一分组中RAIDlet包括的Chunklet属于同一磁盘的概率尽可能低,从而顺序读写业务可以同时下发到存储池内所有磁盘,提高数据读写性能,并尽量保证单盘IO的顺序性。
本发明实施例中,存储服务器在确定了分组中RAIDlet的目标数量后,可以按照RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
例如,假设分组中RAIDlet的目标数量为G,则存储服务器可以按照RAIDlet的索引编号顺序,依次将G个RAIDlet划分为一个分组。
本发明实施例中,RAID的地址空间在分组之间是线性的,同一分组内,RAID的地址按条带依次分布在该分组中的各RAIDlet上。
举例来说,假设存储池内磁盘数量为5,RAID策略为2+1,则通过上述算法(或公式)可以得出各分组中RAIDlet的目标数量为2,则RAIDlet的分组可以如图2A所示(以RAID中包括8个RAIDlet:RAIDlet0~RAIDlet7为例),其中,RAID地址空间在RAIDlet分组之间是线性的,而同一分组内,RAID的地址按条带依次分布在该分组中的各RAIDlet上,其示意图可以如图2B所示,其中,数据条带strip0~strip11依次分布在RAIDlet0和RAIDlet1上,strip12~strip23依次分布在RAIDlet2和RAIDlet3上,而Strip0和Strip1中可以包括存储池内所有磁盘上的Chunklet。
可见,在图1所描述的方法流程中,通过在创建RAID之后,按照RAIDlet的索引编号顺序对RAIDlet进行分组,其中,该分组的数量小于RAIDlet的数量,RAID的地址空间在分组之间是线性的,且同一分组内RAID的地址按条带依次分布在该分组中的各RAIDlet上,由于RAIDlet分组中至少存在一个分组包括两个连续的RAIDlet,该两个连续的RAIDlet与单个RAIDlet相比,包括的Chunklet分布在更多的磁盘上,当接收到顺序读写业务时,可以下发到同时下发到更多的磁盘上,从而,提高了顺序读写时磁盘利用率,并提高了顺序读写性能。
请参见图3,为本发明实施例提供的另一种块虚拟化阵列的实现方法,如图3所示,该方法可以包括以下步骤:
步骤301、创建RAID,该RAID包括多个RAIDlet。
本发明实施例中,当存储服务器需要创建基于块虚拟化的RAID时,存储服务器可以根据指定的RAID策略从存储池的磁盘上选取预设数量的Chunklet创建RAIDlet,并根据所创建的RAIDlet创建该RAID;其中,存储服务器选择Chunklet时,需要保证组成一个RAIDlet的Chunklet分布在不同的物理磁盘上。
步骤302、按照RAIDlet的索引编号顺序对RAIDlet进行分组;其中,该分组的数量小于RAIDlet的数量,该RAID的地址空间在分组之间是线性的,同一分组内,该RAID的地址按条带一次分布在该分组中的各RAIDlet上。
本发明实施例中,存储服务器创建RAID成功后,可以对RAID中所有RAIDlet按索引编号,并按照各RAIDlet的索引编号顺序对RAIDlet进行分组;其中,分组的数量小于RAIDlet的数量,即至少存在一个分组中包括;两个或两个以上的RAIDlet。
作为一种可选的实施方式,上述步骤302中,按照RAIDlet的索引编号顺序对RAIDlet进行分组,可以包括以下步骤:
21)、根据RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量;
22)、按照RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
在该实施方式中,存储服务器在对RAIDlet进行分组时,可以根据RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量。
其中,为了尽可能提高顺序读写时存储池中磁盘资源的利用率,存储服务器对RAIDlet进行分组时,可以尽可能地保证同一分组的各RAIDlet中包括的Chunklet中包括尽可能多的磁盘上的Chunklet。同时,为了保证单盘IO(Input/Output,输入/输出)的顺序性,存储服务器对RAIDlet进行分组时,可以尽可能保证同一分组的各RAIDlet中未包括同一磁盘上的两个Chunklet。
相应地,为了达到上述目的,在一种优选的实施方式中,根据RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量,可以包括:
若RAID对应的RAID策略为N+M,存储池内磁盘总数为Z,则根据以下公式确定各组分中RAIDlet的目标数量G:
G≥Z/(M+N)
G-1<Z/(M+N)
其中,N、M、Z、G均为正整数。
在该实施方式中,考虑到当RAID策略为N+M,即每个RAIDlet中包括N+M个Chunklet时,连续的或个RAIDlet的组合可以满足在包括存储池中所有磁盘中的Chunkle的情况下,各RAIDlet中包括同一磁盘上的两个Chunklet的概率最低,因此,存储设备在对RAIDlet进行分组时,可以根据上述公式确定每个分组(RAIDlet-Group)中的RAIDlet的数量。其中,为对“*”向下取整,例如,
其中,在本发明实施例中,存储设备根据上述公式确定分组中RAIDlet的目标数量G的具体实现可以通过以下算法实现:
G=Z/(N+M)
If(0!=Z%(N+M))
{
G++;
}
在本发明实施例中,通过上述算法确定分组中RAIDlet的目标数量即可以保证该分组中的RAIDlet包括的Chunklet分布到存储池的所有磁盘上,且同一分组中RAIDlet包括的Chunklet属于同一磁盘的概率尽可能低,从而顺序读写业务可以同时下发到存储池内所有磁盘,提高数据读写性能,并尽量保证单盘IO的顺序性。
本发明实施例中,存储服务器在确定了分组中RAIDlet的目标数量后,可以按照RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
步骤303、当接收到顺序读写业务时,确定待读写数据对应的目标条带,并对目标条带进行顺序读写。
本发明实施例中,当存储服务器接收到顺序读写业务时,存储服务器可以确定待读写数据对应的目标条带。
例如,当存储服务器接收到顺序读业务时,存储服务器可以根据待读取数据在RAID中的起始地址以及待读取数据的大小,确定待读取数据所在目标条带。当存储服务器接收到顺序写业务时,存储服务器可以根据当前RAID中空闲区域的起始地址以及待写入数据的大小,确定待写入数据所在目标条带。
存储服务器确定待读写数据所在目标条带后,可以对目标条带进行顺序读写。其中,由于同一分组中,RAID的地址按条带依次分布在该分组内的各RAIDlet上,因此,存储服务器对目标条带进行读写时,会依次对存储池内所有磁盘上的Chunklet进行读写,即顺序读写业务同时下发到了存储池内所有磁盘上,提高了顺序读写时磁盘利用率,并提高了顺序读写性能。
举例来说,仍以图2A和图2B所示场景为例,假设目标条带为Strip2和Strip3,由于Strip2和Strip3上包括了存储池内所有5个磁盘的Chunklet,因此,对Strip2和Strip3的数据读写会同时下发到存储池内所有5个磁盘,提高了顺序读写的磁盘利用率,并提高了顺序读写性能。
通过以上描述可以看出,在本发明实施例提供的技术方案中,通过在创建RAID之后,按照RAIDlet的索引编号顺序对RAIDlet进行分组,其中,该分组的数量小于RAIDlet的数量,RAID的地址空间在分组之间是线性的,且同一分组内RAID的地址按条带依次分布在该分组中的各RAIDlet上,由于RAIDlet分组中至少存在一个分组包括两个连续的RAIDlet,该两个连续的RAIDlet与单个RAIDlet相比,包括的Chunklet分布在更多的磁盘上,当接收到顺序读写业务时,可以下发到同时下发到更多的磁盘上,从而,提高了顺序读写时磁盘利用率,并提高了顺序读写性能。
请参见图4,为本发明实施例提供的一种块虚拟化阵列的实现装置的结构示意图,其中,所述装置可以应用于上述方法实施例中的存储服务器,如图4所示,该块虚拟化阵列的实现装置可以包括:
创建单元410,用于创建独立冗余磁盘阵列RAID,所述RAID包括多个逻辑磁盘RAIDlet;
分组单元420,用于按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组;其中,所述分组的数量小于所述RAIDlet的数量,所述RAID的地址空间在分组之间是线性的,同一分组内,所述RAID的地址按条带依次分布在该分组中的各RAIDlet上。
请一并参见图5,为本发明实施例提供的另一种块虚拟化阵列的实现装置的结构示意图,该实施例在前述图4所示实施例的基础上,所述装置中分组单元420可以包括:确定子单元421和分组子单元422;其中:
确定子单元421,用于根据所述RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量;
分组子单元422,用于按照所述RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
在可选实施例中,所述确定子单元421,可以具体用于以在同一分组内RAIDlet包括的Chunklet分布在所述存储池内所有磁盘情况下,同一分组内RAIDlet包括同一磁盘上的两个或两个以上Chunklet的概率最低为原则,确定各分组中RAIDlet的目标数量。
在可选实施例中,所述确定子单元421,可以具体若所述RAID对应的RAID策略为N+M,所述存储池内磁盘总数为Z,则根据以下公式确定各分组中RAIDlet的目标数量G:
G≥Z/(M+N)
G-1<Z/(M+N)
其中,N、M、Z、G均为正整数。
请一并参见图6,为本发明实施例提供的另一种块虚拟化阵列的实现装置的结构示意图,该实施例在前述图4或5所示实施例的基础上(图6以在图4所示实施例的基础上进行优化为例),所述装置还可以包括:
读写单元430,用于当接收到顺序读写业务时,确定待读写数据对应的目标条带,并对所述目标条带进行顺序读写。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过在创建RAID之后,按照RAIDlet的索引编号顺序对RAIDlet进行分组,其中,该分组的数量小于RAIDlet的数量,RAID的地址空间在分组之间是线性的,且同一分组内RAID的地址按条带依次分布在该分组中的各RAIDlet上,由于RAIDlet分组中至少存在一个分组包括两个连续的RAIDlet,该两个连续的RAIDlet与单个RAIDlet相比,包括的Chunklet分布在更多的磁盘上,当接收到顺序读写业务时,可以下发到同时下发到更多的磁盘上,从而,提高了顺序读写时磁盘利用率,并提高了顺序读写性能。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (6)
1.一种块虚拟化阵列的实现方法,其特征在于,包括:
创建独立冗余磁盘阵列RAID,所述RAID包括多个逻辑磁盘RAIDlet;
按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组;其中,所述分组的数量小于所述RAIDlet的数量,所述RAID的地址空间在分组之间是线性的,同一分组内,所述RAID的地址按条带依次分布在该分组中的各RAIDlet上;
其中,所述按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组,包括:
根据所述RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量,具体包括:以在同一分组内RAIDlet包括的数据块分布在所述存储池内所有磁盘情况下,同一分组内RAIDlet包括同一磁盘上的两个或两个以上数据块的概率最低为原则,确定各分组中RAIDlet的目标数量;
按照所述RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
2.根据权利要求1所述的方法,其特征在于,所述根据所述RAID对应的RAID策略以及所述存储池内磁盘总数,确定各分组中RAIDlet的目标数量,包括:
若所述RAID对应的RAID策略为N+M,所述存储池内磁盘总数为Z,则根据以下公式确定各分组中RAIDlet的目标数量G:
G≥Z/(M+N)
G-1<Z/(M+N)
其中,N、M、Z、G均为正整数。
3.根据权利要求1-2任一项所述的方法,其特征在于,所述按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组之后,还包括:
当接收到顺序读写业务时,确定待读写数据对应的目标条带,并对所述目标条带进行顺序读写。
4.一种块虚拟化阵列的实现装置,其特征在于,包括:
创建单元,用于创建独立冗余磁盘阵列RAID,所述RAID包括多个逻辑磁盘RAIDlet;
分组单元,用于按照所述RAIDlet的索引编号顺序对所述RAIDlet进行分组;其中,所述分组的数量小于所述RAIDlet的数量,所述RAID的地址空间在分组之间是线性的,同一分组内,所述RAID的地址按条带依次分布在该分组中的各RAIDlet上;
其中,所述分组单元包括:
确定子单元,用于根据所述RAID对应的RAID策略以及存储池内磁盘总数,确定各分组中RAIDlet的目标数量,具体包括:用于以在同一分组内RAIDlet包括的数据块分布在所述存储池内所有磁盘情况下,同一分组内RAIDlet包括同一磁盘上的两个或两个以上数据块的概率最低为原则,确定各分组中RAIDlet的目标数量;
分组子单元,用于按照所述RAIDlet的索引编号顺序,依次将目标数量个RAIDlet划分为一个分组。
5.根据权利要求4所述的装置,其特征在于,
所述确定子单元,具体用于若所述RAID对应的RAID策略为N+M,所述存储池内磁盘总数为Z,则根据以下公式确定各分组中RAIDlet的目标数量G:
G≥Z/(M+N)
G-1<Z/(M+N)
其中,N、M、Z、G均为正整数。
6.根据权利要求4-5任一项所述的装置,其特征在于,所述装置还包括:
读写单元,用于当接收到顺序读写业务时,确定待读写数据对应的目标条带,并对所述目标条带进行顺序读写。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510713556.XA CN105224261B (zh) | 2015-10-28 | 2015-10-28 | 一种块虚拟化阵列的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510713556.XA CN105224261B (zh) | 2015-10-28 | 2015-10-28 | 一种块虚拟化阵列的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105224261A CN105224261A (zh) | 2016-01-06 |
CN105224261B true CN105224261B (zh) | 2019-06-11 |
Family
ID=54993267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510713556.XA Active CN105224261B (zh) | 2015-10-28 | 2015-10-28 | 一种块虚拟化阵列的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105224261B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562380A (zh) * | 2017-08-28 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种raid2.0的数据块分配方法及装置 |
CN109491613B (zh) * | 2018-11-13 | 2021-11-02 | 深圳龙岗智能视听研究院 | 一种持续数据保护存储系统及其使用该系统的存储方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880428A (zh) * | 2012-08-20 | 2013-01-16 | 华为技术有限公司 | 分布式独立磁盘冗余阵列的创建方法及装置 |
CN104375784A (zh) * | 2014-11-17 | 2015-02-25 | 浙江宇视科技有限公司 | 一种降低虚拟磁盘管理复杂度的方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI357562B (en) * | 2007-12-20 | 2012-02-01 | Infortrend Technology Inc | Io processor |
CN101976179B (zh) * | 2010-08-19 | 2011-10-26 | 北京同有飞骥科技股份有限公司 | 一种垂直型分组并行分布校验的磁盘阵列的构建方法 |
CN101976175B (zh) * | 2010-08-19 | 2011-12-14 | 北京同有飞骥科技股份有限公司 | 一种水平型分组并行集中校验的磁盘阵列的构建方法 |
-
2015
- 2015-10-28 CN CN201510713556.XA patent/CN105224261B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880428A (zh) * | 2012-08-20 | 2013-01-16 | 华为技术有限公司 | 分布式独立磁盘冗余阵列的创建方法及装置 |
CN104375784A (zh) * | 2014-11-17 | 2015-02-25 | 浙江宇视科技有限公司 | 一种降低虚拟磁盘管理复杂度的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105224261A (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108776576B (zh) | 用于聚合的网上NVMe装置的聚合存储方法 | |
CN104050045B (zh) | 基于磁盘io的虚拟资源分配方法及装置 | |
US8984085B2 (en) | Apparatus and method for controlling distributed memory cluster | |
CN102096722B (zh) | 文件存储方法和装置 | |
CN104536903B (zh) | 一种按数据属性分类存放的混合存储方法及系统 | |
CN108089814A (zh) | 一种数据存储方法及装置 | |
CN108121601B (zh) | 一种基于权重的应用资源调度装置及方法 | |
CN105138281B (zh) | 一种物理磁盘的共享方法及装置 | |
CN107729536A (zh) | 一种数据存储方法和装置 | |
CN103268202A (zh) | 一种扩容方法和设备 | |
CN105224261B (zh) | 一种块虚拟化阵列的实现方法及装置 | |
CN110245119A (zh) | 一种文件整理方法及存储系统 | |
CN106775470A (zh) | 一种数据存储的方法及系统 | |
CN107291392A (zh) | 一种固态硬盘及其读写方法 | |
US20170185338A1 (en) | Efficient method of combining parity groups for uniform load distribution and maximizing parallelization in parity de-clustered and sliced disk raid architecture | |
Islam et al. | Efficient data access strategies for Hadoop and Spark on HPC cluster with heterogeneous storage | |
US9069471B2 (en) | Passing hint of page allocation of thin provisioning with multiple virtual volumes fit to parallel data access | |
CN105739911B (zh) | 存储数据的分配方法、装置以及存储系统 | |
CN107608914B (zh) | 一种多路存储设备的访问方法、装置及移动终端 | |
CN109460185B (zh) | 组建分块组ckg的方法、装置、虚拟存储池及存储介质 | |
CN107247741A (zh) | 一种集群式文本化海量敏感数据处理方法及系统 | |
CN103064926A (zh) | 数据处理方法和装置 | |
US11245607B2 (en) | Dynamic data movement between cloud and on-premise storages | |
CN105843562A (zh) | 数据重建的方法及装置 | |
Huang et al. | Resource provisioning with QoS in cloud storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |