CN102722340A - 数据处理方法、装置及系统 - Google Patents
数据处理方法、装置及系统 Download PDFInfo
- Publication number
- CN102722340A CN102722340A CN2012101290746A CN201210129074A CN102722340A CN 102722340 A CN102722340 A CN 102722340A CN 2012101290746 A CN2012101290746 A CN 2012101290746A CN 201210129074 A CN201210129074 A CN 201210129074A CN 102722340 A CN102722340 A CN 102722340A
- Authority
- CN
- China
- Prior art keywords
- data
- mapping relations
- band
- written
- module
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种数据处理方法、装置及系统。其方法包括:将RAID划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储N个数据的校验数据的存储区,N为大于或等于2的正整数;接收主机发出的写请求命令并存储在缓存中,写请求命令中携带待写入的数据;当接收的写请求命令的数目达到N个时,为N个写请求命令中包含的N个待写入的数据分配空闲的第一条带;根据N个待写入的数据计算校验数据;将N个待写入的数据和校验数据写入第一条带中。本发明实施例的技术方案,能够将N个写请求转换为一个写请求来处理,能够有效地提高数据处理效率,降低写惩罚。
Description
技术领域
本发明实施例涉及存储技术领域,尤其涉及一种数据处理方法、装置及系统。
背景技术
独立磁盘冗余阵列(Redundant Arrays of Inexpensive Disks;RAID),也可以称为磁盘阵列(Disk Array),是利用数组方式来作磁盘组,配合数据分散排列的设计,提升数据的安全性。磁盘阵列将数据切割成许多区段,分别存放在各个硬盘上,而且还能利用同位检查(Parity Check)的观念,在数组中任一颗硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。RAID技术主要包含RAID 0~RAID 7等数个规范,它们的侧重点各不相同。其中RAID 5不单独指定的奇偶盘,而是在所有磁盘上交叉地存取数据及奇偶校验信息。在RAID 5上,读/写指针可同时对阵列设备进行操作,提供了更高的数据流量。RAID 6与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。
在类似于RAID 5和RAID 6的RAID技术中,主机下发的写请求命令中的逻辑块地址(Logical Block Addressing;LBA)与RAID中盘片的物理块地址(Physical BlockAddressing;PBA)之间的映射关系为固定的。例如在RAID5技术中,假如磁盘1用于存放主机的第一个写请求命令中包含的数据,磁盘2用于存放第二个写请求命令中包含的数据,磁盘3用于存放第三个写请求命令中包含的数据,磁盘4用于存放第四个写请求命令中包含的IO 4的数据。磁盘5存放该条带的RAID校验数据A。当第一个写请求命令对应的数据需要改写成新数据1’时,操作为将原有第一个写请求命令写入的数据读出与新数据1’计算异或,再将磁盘5上写入的校验数据A读出也与新数据1’计算异或得到新校验A’;然后再重新在磁盘1上写入新数据1’,在磁盘5上写入新校验A’。这样,采用上述技术方案,当要改写一个数据的时候,为了实现数据的冗余,同时需要改写校验数据。
在实现本发明的过程中,发明人发现现有技术中至少存在如下缺点:在类似于RAID 5和RAID 6的RAID中,如上述现有技术所述,一个改写IO操作会变成了2个写操作与2个读操作,假设读写IO开销都相同,写入一个IO就放大了4倍,性能损失严重,处理效率较低。
发明内容
本发明实施例提供一种数据处理方法、装置及系统,用以解决在类似于RAID 5和RAID 6的RAID中,一个改写IO操作会变成了2个写操作与2个读操作,假设读写IO开销都相同,写入一个IO就放大了4倍,性能损失严重,处理效率较低,即写惩罚较高的缺陷。弥补现有技术中未公开UL MIMO技术中的控制信息的传输方式的缺陷,能够有效地提高数据处理效率,降低写惩罚。
一方面,本发明实施例提供一种数据处理方法,包括:
将独立磁盘冗余阵列划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储所述N个数据的校验数据的存储区,N为大于或等于2的正整数;
接收主机发出的写请求命令并存储在缓存中,所述写请求命令中携带待写入的数据;
当接收的所述写请求命令的数目达到N个时,为所述N个写请求命令中包含的N个待写入的数据分配空闲的第一条带;
根据所述N个待写入的数据计算校验数据;
将所述N个待写入的数据和所述校验数据写入所述第一条带中。
另一方面,本发明实施例还提供一种数据处理装置,包括:
划分模块,用于将独立磁盘冗余阵列划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储所述N个数据的校验数据的存储区,N为大于或等于2的正整数;
接收模块,用于接收主机发出的写请求命令并存储在缓存中,所述写请求命令中携带待写入的数据;
分配模块,用于当接收的所述写请求命令的数目达到N个时,为所述N个写请求命令中包含的N个待写入的数据分配空闲的第一条带;
计算模块,用于所述根据N个待写入的数据计算校验数据;
存储模块,用于将所述N个待写入的数据和所述校验数据写入在所述第一条带中。
再一方面,本发明实施例还提供一种数据处理系统,包括缓存、如上所述的数据处理装置和独立磁盘冗余阵列。
本发明实施例的数据处理方法、装置及系统,能够将连续的N个写请求命令中携带的待写入的数据一起存储在一个条带中,这样可以将N个写请求转换为一个写请求来处理,能够有效地提高数据处理效率,降低写惩罚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一数据处理方法的流程图。
图2为本发明实施例提供的另一数据处理方法的流程图。
图3为本发明一实施例提供的数据处理装置的结构示意图。
图4为本发明另一实施例提供的数据处理装置的结构示意图。
图5为本发明实施例提供的数据处理系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一数据处理方法的流程图。如图1所示,本实施例的数据处理方法的执行主体为一数据处理装置,例如该数据处理装置可以为存储系统中的一控制器。
在本发明实施例中,RAID被划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储N个数据的校验数据的存储区,N为大于或等于2的正整数,N个用于存储数据的存储区和用于存储N个数据的校验数据的存储区分别分布在所述RAID的每个磁盘中,并且分布在每个磁盘上的存储区的大小相同。
具体的,本实施例的数据处理方法可以包括如下步骤:
100、数据处理装置接收主机发出的写请求命令并存储在缓存中;
本实施例的写请求命令中携带待写入的数据;该待写入的数据即为将要存入RAID的数据。本实施例中一个写请求命令中携带一个待写入的数据。
101、当接收的写请求命令的数目达到N个时,数据处理装置为N个待写入的数据分配空闲的第一条带;
在本发明实施例中,接收到的各写请求命令中携带的待写入数据大小相同,并且等于每个条带分布在每个磁盘上的空间容量(即条带深度);在其他实施例中,若写请求命令中携带的待写入数据较大,可通过拆分的方式将该写请求命令拆成多个写请求命令,使得其中携带的待写入数据大小相同,并且等于每个条带分布在每个磁盘上的空间容量;若写请求命令中携带的待写入数据较小,可通过合并的方式将多个写请求命令合并成一个写请求命令,使得其中携带的待写入数据大小相同,并且等于每个条带分布在每个磁盘上的空间容量。
本实施例中的第一条带为RAID中多个条带中的其中一个,第一条带在RAID中的每个磁盘中都包括一个存储区;在第一条带中包括N个用于存储待写入的数据对应的存储区和用于存储根据N个待写入的数据计算得到的校验数据的存储区;其中每一个存储区存储一个待写入的数据。N为大于等于2的正整数。当确定连续接收的写请求命令的数目达到N个时,即表示N个待写入的数据,以及根据N个待写入的数据计算的校验数据正好能够存满一个条带。
例如本实施例的技术方案应用在RAID 5中时,根据N个待写入的数据计算得到一个校验数据,此时对应RAID中共包括N+1个磁盘。即每一个条带跨越N+1个磁盘,包括N+1个存储区,共可以存储N个待写入的和一个校验数据。
例如本实施例的技术方案应用在RAID 6中时,根据N个待写入的数据计算得到两个独立的校验数据,此时对应RAID中共包括N+2个磁盘。即每一个条带跨越N+2个磁盘,包括N+1各存储区,共可以存储N个待写入的数据和两个校验数据。
102、数据处理装置根据N个待写入的数据计算校验数据;
例如RAID 5中可以计算得到一个校验数据,RAID 6中可以计算得到两个校验数据。
103、数据处理装置将N个待写入的数据和校验数据写入第一条带中。
本实施例的数据处理方法,通过接收主机发出的写请求命令并存储在缓存中,写请求命令中携带待写入的数据;当确定连续接收的写请求命令的数目达到N个时,为N个待写入的数据分配空闲的第一条带;第一条带在RAID中的每个磁盘中都包括一个存储区;第一条带中包括N个用于存储待写入的数据的存储区和用于存储根据N个待写入的数据计算得到的校验数据的存储区;N为大于等于2的正整数;根据N个待写入的数据计算校验数据;将N个待写入的数据和校验数据写入第一条带中。采用本实施例的技术方案,能够将连续的N个写请求命令中的待写入的数据一起存储在一个条带中,这样可以将N个写请求命令转换为一个请求来处理,能够有效地提高数据处理效率,降低写惩罚。
进一步可选地,在上述图1所示实施例的基础上,上述实施例中的写请求命令中还携带有待写入的LBA,此时步骤101之后,还可以包括如下图2所示的数据处理方法,图2为本发明实施例提供的另一数据处理方法的流程图。如图2所示,该数据处理方法,具体可以包括如下步骤:
200、数据处理装置建立第一条带中每个待写入的数据对应的LBA与待写入的数据存储在第一条带的存储区的第一PBA之间的第一映射关系;
201、数据处理装置将第一映射关系存储在缓存中。
本实施例中具体可以以每一个条带如第一条带为对象,建立该第一条带中每个待写入的数据对应的写数据请求中的LBA与该待写入的数据存储在第一条带的中的存储区的第一PBA之间的第一映射关系。此时对应的第一映射关系可以为一个映射关系表,包括多个LBA与PBA的对应关系。由于校验数据没有LBA,因此该第一映射关系中没有关于校验数据的映射关系。
可选地,本实施例中还可以以每一个待写入的数据为对象,建立相应的写访问请求中的主机的LBA与该待写入的数据被存储在第一条带的存储区的第一PBA之间的映射关系。此时对应的第一映射关系仅为一个LBA与一个PBA之间的对应关系。
本实施例中还需要将建立的第一映射关系保存在缓存中,以保证后续当需要访问该数据时,该数据能够被正常访问。
进一步可选地,在上述技术方案的基础上,步骤201之后,还可以包括如下步骤:
202、数据处理装置判断缓存中的第二映射关系中是否存在第一映射关系中的LBA;当存在时,执行步骤203;否则当不存在时,暂时不执行任何操作。
需要说明的是,本实施例中的第二映射关系在第一映射关系之前建立;第二映射关系为第二条带中存储的数据的LBA与PBA之间的映射关系,且第二映射关系的建立与上述第一映射关系的建立的实现过程完全一样。
203、数据处理装置将第二映射关系中PBA标识为垃圾标识,以表示第二条带中的该PBA对应的数据为垃圾数据。
在本发明实施例中,垃圾标识是指该物理块地址对应的数据已经失效,但是该垃圾数据不能立即去除,因为在同一第二条带上其它数据依然有效,需等其它数据失效或者将有效数据搬移重新组成条带后才能去除。
按照上述步骤202和步骤203的方式,可以对第二映射关系中的所有PBA都标识上垃圾标识。例如在上述步骤203之后,还可以包括如下步骤:
204、数据处理装置判断第二条带对应的第二映射关系中的所有PBA是否全部标识有垃圾标识;当第二映射关系中的所有PBA全部标识为垃圾标识时,执行步骤205;否则暂时不执行任何操作。
205、数据处理装置删除第二条带中存储的数据。
此时表示整个条带都失效,可以删除整个条带上的数据,以回收该条带。
或者在上述步骤203之后,还可以包括如下步骤:
206、数据处理装置判断第二条带对应的第二映射关系中标识垃圾标识的PBA的数目是否达到预设阈值;当第二映射关系中标识垃圾标识的PBA的数目达到预设阈值时,执行步骤207;否则暂时不执行任何操作。
207、数据处理装置读取第二条带中未标识垃圾标识的PBA对应的数据以及未标识垃圾标识的PBA对应的LBA至缓存中,以作为一个新的写请求命令;
208、数据处理装置删除第二条带中存储的数据。
本实施例中的预设阈值可以根据实际需求设置,例如当整个第二条带包括10个存储区,当为RAID 5时,例如第二映射关系为以第二条带为单位存储时,第二映射关系中包括9个LBA与PBA的映射关系,当该条带对应的第二映射关系中标识垃圾标识的PBA的数目为8个,此时可以读取第二条带中未标识垃圾标识的PBA对应的数据以及未标识垃圾标识的PBA对应的LBA至缓存中,以作为一个新的写请求命令;这样继续采用上述实施例的步骤101来存储该数据,在此不再赘述。此时由于第二条带中未标识垃圾标识的PBA对应的数据以及未标识垃圾标识的PBA对应的LBA被作为一个新的写请求命令读取至缓存中,此时对应的第二条带已经全部变为失效数据,可以删除第二条带中的数据,以回收该条带。
本实施例中的预设阈值可以设置为RAID的磁盘总数的60%、70%、80%或者90%,可以根据实际需求来设置。
进一步可选地,在上述实施例的技术方案的基础上,其中在上述实施例中的步骤100之前,具体还可以包括如下步骤:
数据处理装置预先在RAID中设置多个条带,每个条带横跨RAID中的所有磁盘,每个条带在RAID中的每个磁盘中形成一个存储区。
本实施例的数据处理方法,通过采用上述技术方案,能够将连续的N个写请求命令存储的数据一起存储在一个条带中,这样可以将N个写请求命令转换为一个写请求命令来处理,能够有效地提高数据处理效率,降低写惩罚。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图3为本发明一实施例提供的数据处理装置的结构示意图。如图3所示,本实施例的数据处理装置,具体可以包括如下:
本实施例的数据处理装置中包括划分模块10、接收模块11、分配模块12、计算模块13和存储模块14。
其中划分模块10用于将RAID划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储N个数据的校验数据的存储区,N为大于或等于2的正整数,N个用于存储数据的存储区和用于存储N个数据的校验数据的存储区均匀分布在RAID的每个磁盘中;接收模块11用于接收主机发出的写请求命令并存储在缓存中,该写请求命令中携带待写入的数据;分配模块12与分别接收模块11和划分模块10连接连接,用于当确定接收模块11接收的写请求命令的数目达到N个时,从划分模块10划分得到的多个条带中为N个数据分配空闲的第一条带;计算模块13用于根据接收模块11接收的并存储在缓存中的N个待写入的数据计算校验数据;存储模块14分别与分配模块12和计算模块13,存储模块14用于将接收模块11接收的存储在缓存中的N个待写入的数据,和计算模块13计算得到的校验数据存储在分配模块12分配得到的第一条带中。
本实施例的数据处理装置,通过采用上述模块实现数据处理,与上述相关方法实施例的实现机制相同,详细可以参考上述相关方法实施例,在此不再赘述。
本实施例的数据处理装置,通过采用上述模块接收主机发出的写请求命令并存储在缓存中,写请求命令中携带待写入的数据;当确定连续接收的所述写请求命令的数目达到N时,为N个待写入的数据分配空闲的第一条带;第一条带为RAID中一个横跨的所有磁盘的存储带,在RAID中的每个磁盘中都包括一个存储区;第一条带中包括N个用于存储待写入的数据的存储区和用于根据N个待写入的数据计算得到的校验数据的存储区;N为大于等于2的正整数;根据N个待写入的数据计算校验数据;将N个待写入的数据和校验数据存储在第一条带中。采用本实施例的技术方案,能够将连续的N个写请求命令存储的数据一起存储在一个条带中,这样可以将N个写请求命令转换为一个请求来处理,能够有效地提高数据处理效率。
图4为本发明另一实施例提供的数据处理装置的结构示意图。如图4所示,本实施例的数据处理装置在上述图3所示实施例的基础上,进一步还可以包括如下技术方案。
上述图3所示实施例中的接收模块11接收的主机发出的写请求命令请求中还携带待写入的数据对应的LBA。
本实施例的数据处理装置中还可以包括建立模块15。该建立模块15与分配模块12连接,建立模块15用于在分配模块12为N个待写入的数据分配空闲的所第一条带之后,根据分配模块12分配的结果,建立第一条带中的每个数据对应的LBA与数据存储在条带的存储区的第一PBA之间的第一映射关系;存储模块14还与建立模块15连接,存储模块14还用于将建立模块15建立的第一映射关系存储在缓存中。
进一步可选地,在上述技术方案的基础上,本实施例的数据处理装置中还可以包括判断模块16和标识模块17。
判断模块16用于在存储模块14将第一映射关系存储在缓存中之后,判断第二映射关系中是否存在缓存中的第一映射关系中的LBA;第一映射关系建立之前缓存中保存有第二映射关系,第二映射关系为第二条带中存储的数据的LBA与PBA之间的映射关系。标识模块17与判断模块16连接,标识模块17用于根据判断模块16的判断结果,当存在时,将第二映射关系中的PBA标识对应的PBA标识为为垃圾标识,以表示第二条带中的该PBA对应的数据为垃圾数据。
进一步可选地,在上述技术方案的基础上,本实施例的数据处理装置中还包括删除模块18。
判断模块16还用于判断第二映射关系中的所有PBA是否全部标识有垃圾标识;删除模块18与判断模块16连接,删除模块18用于根据判断模块16的判断结果,当第二映射关系中的所有PBA全部标识为垃圾标识时,删除第二条带中存储的数据。
或者进一步可选地,在上述技术方案的基础上,本实施例的数据处理装置中除了包括删除模块18,还包括读取模块19。
判断模块16用于判断第二映射关系中标识垃圾标识的PBA的数目是否达到预设阈值;读取模块19与判断模块16连接,读取模块用于根据判断模块16的判断结果,当第二映射关系中标识垃圾标识的PBA的数目达到预设阈值时,读取第二条带中未标识垃圾标识的PBA对应的数据以及未标识垃圾标识的PBA对应的LBA至缓存中,以作为一个新的写请求命令;删除模块18与读取模块19连接,删除模块18用于在读取模块19读取第二条带中未标识垃圾标识的PBA对应的数据以及未标识垃圾标识的PBA对应的LBA至缓存中之后,删除第二条带中存储的数据。
如图4所示,本实施例的数据处理装置,是以采用上述所有可选技术方案为例介绍本发明的技术方案,实际应用中,上述多个可选技术方案可以采用任意可结合的方式结合,形成本发明的一个可选实施例,详细在此不再赘述。
本实施例的数据处理装置,通过采用上述模块实现数据处理,与上述相关方法实施例的实现机制相同,详细可以参考上述相关方法实施例,在此不再赘述。
本实施例的数据处理装置,通过采用上述模块能够将连续的N个写请求命令存储的数据一起存储在一个条带中,这样可以将N个写请求命令转换为一个请求来处理,能够有效地提高数据处理效率,降低写惩罚。
图5为本发明实施例提供的数据处理系统的结构示意图。如图5所示,本实施例的数据处理系统具体可以包括缓存20、数据处理装置30和RAID40。数据处理装置30分别与缓存20和RAID40连接。
其中数据处理装置30用于将RAID40划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储所述N个数据的校验数据的存储区,N为大于或等于2的正整数;并接收主机发出的写请求命令并存储在缓存30中,该写请求命令中携带待写入的数据;当接收的写请求命令的数目达到N个时,数据处理装置30为N个待写入的数据分配空闲的第一条带;该第一条带为RAID40中一个横跨的所有磁盘的存储带;第一条带中包括N个用于存储待写入的数据对应的存储区和用于存储根据N个待写入的数据计算得到的校验数据的存储区;N为大于等于2的正整数;其中N个写请求命令中的N个待写入的数据和对应的校验数据正好能够占用RAID的一个条带。数据处理装置30用于根据缓存20存储的N个待写入的数据计算校验数据;并将缓存20中的N个待写入的数据和计算得到的校验数据存储在分配得到的RAID40中的第一条带中。
可选地,本实施例的数据处理系统中的数据处理装置30具体可以采用上述图2或者图3所示的数据处理装置,并可以采用上述图1及后续可选实施了的数据处理方法实现数据处理,详细可以参考上述实施例的记载,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (11)
1.一种数据处理方法,其特征在于,包括:
将独立磁盘冗余阵列划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储所述N个数据的校验数据的存储区,N为大于或等于2的正整数;
接收主机发出的写请求命令并存储在缓存中,所述写请求命令中携带待写入的数据;
当接收的所述写请求命令的数目达到N个时,为所述N个写请求命令中包含的N个待写入的数据分配空闲的第一条带;
根据所述N个待写入的数据计算校验数据;
将所述N个待写入的数据和所述校验数据写入所述第一条带中。
2.根据权利要求1所述的方法,其特征在于,所述写请求命令中还携带有待写入的逻辑块地址;所述为所述N个写请求命令中包含的N个待写入的数据分配空闲的第一条带之后,所述方法还包括:
建立第一映射关系,所述第一映射关系包括每个逻辑块地址与所述待写入的数据存储在所述第一条带的第一物理块地址之间的映射关系;
将所述第一映射关系存储在所述缓存中。
3.根据权利要求2所述的方法,其特征在于,在所述第一映射关系建立之前缓存中保存有第二映射关系,所述第二映射关系为第二条带中存储的数据的逻辑块地址与物理块地址之间的映射关系;
在将所述第一映射关系存储在所述缓存中之后,所述方法还包括:
判断所述第二映射关系中是否存在所述第一映射关系中的所述逻辑块地址
当存在时,将所述第二映射关系中的所述逻辑块地址对应的物理块地址标识为垃圾标识,以表示所述第二条带中的所述物理块地址对应的数据为垃圾数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
判断所述第二映射关系中的所有物理块地址是否全部标识有垃圾标识;
当所述第二映射关系中的所有物理块地址全部标识为垃圾标识时,删除所述第二条带中存储的数据。
5.根据权利要求3所述的方法,其特征在于,
判断所述第二映射关系中标识垃圾标识的物理块地址的数目是否达到预设阈值;
当所述第二映射关系中标识所述垃圾标识的所述物理块地址的数目达到所述预设阈值时,读取所述第二条带中未标识所述垃圾标识的物理块地址对应的数据以及所述未标识所述垃圾标识的物理块地址对应的逻辑块地址至所述缓存中,以作为一个新的写请求命令;
删除所述第二条带中存储的数据。
6.一种数据处理装置,其特征在于,包括:
划分模块,用于将独立磁盘冗余阵列划分为多个条带,每个条带中包括N个用于存储数据的存储区和用于存储所述N个数据的校验数据的存储区,N为大于或等于2的正整数;
接收模块,用于接收主机发出的写请求命令并存储在缓存中,所述写请求命令中携带待写入的数据;
分配模块,用于当接收的所述写请求命令的数目达到N个时,为所述N个写请求命令中包含的N个待写入的数据分配空闲的第一条带;
计算模块,用于所述根据N个待写入的数据计算校验数据;
存储模块,用于将所述N个待写入的数据和所述校验数据写入在所述第一条带中。
7.根据权利要求6所述的装置,其特征在于,所述写请求命令中还携带有待写入的逻辑块地址;所述装置还包括建立模块:
所述建立模块,用于在所述分配模块为所述N个写请求命令中包含的N个待写入的数据分配空闲的所述第一条带之后,建立第一映射关系,所述第一映射关系包括每个逻辑块地址与所述待写入的数据存储在所述第一条带的第一物理块地址之间的映射关系;
所述存储模块,还用于将所述第一映射关系存储在所述缓存中。
8.根据权利要求7所述的装置,其特征在于,还包括:
判断模块,用于在所述存储模块将所述第一映射关系存储在所述缓存中之后,判断第二映射关系中是否存在所述第一映射关系中的所述逻辑块地址;所述第一映射关系建立之前缓存中保存有所述第二映射关系,所述第二映射关系为第二条带中存储的数据的逻辑块地址与物理块地址之间的映射关系;
标识模块,用于当所述判断模块确定所述第二映射关系中存在所述第一映射关系中的所述逻辑块地址时,将所述第二映射关系中的所述逻辑块地址对应的所述物理块地址标识为垃圾标识,以表示所述第二条带中的所述物理块地址对应的数据为垃圾数据。
9.根据权利要求8所述的装置,其特征在于,还包括删除模块:
所述判断模块,还用于判断所述第二映射关系中的所有物理块地址是否全部标识有垃圾标识;
所述删除模块,用于当所述判断模块确定所述第二映射关系中的所有物理块地址全部标识为垃圾标识时,删除所述第二条带中存储的数据。
10.根据权利要求8所述的装置,其特征在于,还包括读取模块和删除模块;
判断模块,用于判断所述第二映射关系中标识垃圾标识的物理块地址的数目是否达到预设阈值;
所述读取模块,用于当所述判断模块确定所述第二映射关系中标识所述垃圾标识的所述物理块地址的数目达到所述预设阈值时,读取所述第二条带中未标识所述垃圾标识的物理块地址对应的数据以及所述未标识所述垃圾标识的物理块地址对应的逻辑块地址至所述缓存中,以作为一个新的写请求命令;
删除模块,用于删除所述第二条带中存储的数据。
11.一种数据处理系统,其特征在于,包括缓存、独立磁盘冗余阵列以及如上权利要求6-10任一所述的数据处理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101290746A CN102722340A (zh) | 2012-04-27 | 2012-04-27 | 数据处理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101290746A CN102722340A (zh) | 2012-04-27 | 2012-04-27 | 数据处理方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102722340A true CN102722340A (zh) | 2012-10-10 |
Family
ID=46948126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012101290746A Pending CN102722340A (zh) | 2012-04-27 | 2012-04-27 | 数据处理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102722340A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104102724A (zh) * | 2014-07-22 | 2014-10-15 | 浪潮电子信息产业股份有限公司 | 一种基于视频监控数据的写入方法 |
CN104516679A (zh) * | 2013-09-30 | 2015-04-15 | 杭州宏杉科技有限公司 | 一种raid数据处理方法及装置 |
WO2015096496A1 (zh) * | 2013-12-24 | 2015-07-02 | 华为技术有限公司 | 存储数据的方法及存储装置 |
CN107122261A (zh) * | 2017-04-18 | 2017-09-01 | 杭州宏杉科技股份有限公司 | 一种存储设备的数据读写方法及装置 |
CN107239234A (zh) * | 2017-05-27 | 2017-10-10 | 郑州云海信息技术有限公司 | 一种基于全闪存阵列的随机io顺序化方法及装置 |
WO2018107828A1 (zh) * | 2016-12-13 | 2018-06-21 | 杭州海康威视数字技术股份有限公司 | 一种信息处理方法及装置 |
CN108932176A (zh) * | 2017-05-27 | 2018-12-04 | 杭州海康威视数字技术股份有限公司 | 数据降级存储方法及装置 |
US10157000B2 (en) | 2013-11-07 | 2018-12-18 | Huawei Technologies Co., Ltd. | Data operation method and device |
CN111949434A (zh) * | 2019-05-17 | 2020-11-17 | 华为技术有限公司 | 磁盘冗余阵列raid管理方法、raid控制器和系统 |
CN112214175A (zh) * | 2020-10-21 | 2021-01-12 | 重庆紫光华山智安科技有限公司 | 数据处理方法、装置、数据节点及存储介质 |
CN112558876A (zh) * | 2020-12-14 | 2021-03-26 | 杭州宏杉科技股份有限公司 | Lun销毁方法及存储设备 |
CN113176858A (zh) * | 2021-05-07 | 2021-07-27 | 锐捷网络股份有限公司 | 数据处理方法、存储系统及存储设备 |
CN115543871A (zh) * | 2022-11-29 | 2022-12-30 | 苏州浪潮智能科技有限公司 | 数据存储方法及相关设备 |
WO2023024656A1 (zh) * | 2021-08-23 | 2023-03-02 | 华为技术有限公司 | 数据访问方法、存储系统及存储节点 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1617110A (zh) * | 2003-11-12 | 2005-05-18 | 华为技术有限公司 | 磁盘阵列结构中进行回写的方法 |
US20080040553A1 (en) * | 2006-08-11 | 2008-02-14 | Ash Kevin J | Method and system for grouping tracks for destaging on raid arrays |
CN101625880A (zh) * | 2009-08-14 | 2010-01-13 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列之间数据复制的控制方法和装置 |
CN101727299A (zh) * | 2010-02-08 | 2010-06-09 | 北京同有飞骥科技有限公司 | 连续数据存储中面向raid5的写操作优化设计方法 |
CN102096558A (zh) * | 2011-01-20 | 2011-06-15 | 杭州华三通信技术有限公司 | 一种数据的存储方法和装置 |
-
2012
- 2012-04-27 CN CN2012101290746A patent/CN102722340A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1617110A (zh) * | 2003-11-12 | 2005-05-18 | 华为技术有限公司 | 磁盘阵列结构中进行回写的方法 |
US20080040553A1 (en) * | 2006-08-11 | 2008-02-14 | Ash Kevin J | Method and system for grouping tracks for destaging on raid arrays |
CN101625880A (zh) * | 2009-08-14 | 2010-01-13 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列之间数据复制的控制方法和装置 |
CN101727299A (zh) * | 2010-02-08 | 2010-06-09 | 北京同有飞骥科技有限公司 | 连续数据存储中面向raid5的写操作优化设计方法 |
CN102096558A (zh) * | 2011-01-20 | 2011-06-15 | 杭州华三通信技术有限公司 | 一种数据的存储方法和装置 |
Non-Patent Citations (1)
Title |
---|
王晨阳 等: "《浅析RAID5小写问题的改进方案》", 《科技资讯》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104516679A (zh) * | 2013-09-30 | 2015-04-15 | 杭州宏杉科技有限公司 | 一种raid数据处理方法及装置 |
CN104516679B (zh) * | 2013-09-30 | 2017-10-17 | 杭州宏杉科技股份有限公司 | 一种raid数据处理方法及装置 |
US10157000B2 (en) | 2013-11-07 | 2018-12-18 | Huawei Technologies Co., Ltd. | Data operation method and device |
WO2015096496A1 (zh) * | 2013-12-24 | 2015-07-02 | 华为技术有限公司 | 存储数据的方法及存储装置 |
CN104102724A (zh) * | 2014-07-22 | 2014-10-15 | 浪潮电子信息产业股份有限公司 | 一种基于视频监控数据的写入方法 |
WO2018107828A1 (zh) * | 2016-12-13 | 2018-06-21 | 杭州海康威视数字技术股份有限公司 | 一种信息处理方法及装置 |
CN107122261A (zh) * | 2017-04-18 | 2017-09-01 | 杭州宏杉科技股份有限公司 | 一种存储设备的数据读写方法及装置 |
CN107122261B (zh) * | 2017-04-18 | 2020-04-07 | 杭州宏杉科技股份有限公司 | 一种存储设备的数据读写方法及装置 |
CN107239234B (zh) * | 2017-05-27 | 2020-08-04 | 苏州浪潮智能科技有限公司 | 一种基于全闪存阵列的随机io顺序化方法及装置 |
CN107239234A (zh) * | 2017-05-27 | 2017-10-10 | 郑州云海信息技术有限公司 | 一种基于全闪存阵列的随机io顺序化方法及装置 |
CN108932176A (zh) * | 2017-05-27 | 2018-12-04 | 杭州海康威视数字技术股份有限公司 | 数据降级存储方法及装置 |
CN108932176B (zh) * | 2017-05-27 | 2021-09-21 | 杭州海康威视数字技术股份有限公司 | 数据降级存储方法及装置 |
CN111949434A (zh) * | 2019-05-17 | 2020-11-17 | 华为技术有限公司 | 磁盘冗余阵列raid管理方法、raid控制器和系统 |
WO2020233177A1 (zh) * | 2019-05-17 | 2020-11-26 | 华为技术有限公司 | 磁盘冗余阵列raid管理方法、raid控制器和系统 |
CN112214175A (zh) * | 2020-10-21 | 2021-01-12 | 重庆紫光华山智安科技有限公司 | 数据处理方法、装置、数据节点及存储介质 |
CN112558876B (zh) * | 2020-12-14 | 2022-03-18 | 杭州宏杉科技股份有限公司 | Lun销毁方法及存储设备 |
CN112558876A (zh) * | 2020-12-14 | 2021-03-26 | 杭州宏杉科技股份有限公司 | Lun销毁方法及存储设备 |
CN113176858A (zh) * | 2021-05-07 | 2021-07-27 | 锐捷网络股份有限公司 | 数据处理方法、存储系统及存储设备 |
WO2023024656A1 (zh) * | 2021-08-23 | 2023-03-02 | 华为技术有限公司 | 数据访问方法、存储系统及存储节点 |
CN115543871A (zh) * | 2022-11-29 | 2022-12-30 | 苏州浪潮智能科技有限公司 | 数据存储方法及相关设备 |
CN115543871B (zh) * | 2022-11-29 | 2023-03-10 | 苏州浪潮智能科技有限公司 | 数据存储方法及相关设备 |
WO2024113702A1 (zh) * | 2022-11-29 | 2024-06-06 | 苏州元脑智能科技有限公司 | 数据存储方法及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102722340A (zh) | 数据处理方法、装置及系统 | |
CN107484427B (zh) | 用于处理存储设备中分条的方法和存储设备 | |
CN103049222B (zh) | 一种raid5的写io优化处理方法 | |
US8819338B2 (en) | Storage system and storage apparatus | |
US5315602A (en) | Optimized stripe detection for redundant arrays of disk drives | |
CN103761053B (zh) | 一种数据处理方法和装置 | |
US8843704B2 (en) | Stride based free space management on compressed volumes | |
US20050166085A1 (en) | System and method for reorganizing data in a raid storage system | |
EP2899626B1 (en) | Method and system for service-aware data placement in a storage system | |
CN102024059B (zh) | 一种文件系统内实现独立磁盘冗余阵列保护的方法及装置 | |
CN103064765A (zh) | 数据恢复方法、装置及集群存储系统 | |
CN104636266B (zh) | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 | |
CN102207895B (zh) | 一种独立磁盘冗余阵列数据重建方法和装置 | |
CN101727299A (zh) | 连续数据存储中面向raid5的写操作优化设计方法 | |
CN101866307A (zh) | 一种基于镜像技术的数据存储方法及装置 | |
CN102185929A (zh) | 一种基于san资源的视频监控数据存储方法及其装置 | |
US10365845B1 (en) | Mapped raid restripe for improved drive utilization | |
CN103699457A (zh) | 基于条带化的磁盘阵列修复方法及装置 | |
KR20110087272A (ko) | 볼륨 조각 할당 방법, 볼륨 조각 할당 시스템 및 raid | |
US7062605B2 (en) | Methods and structure for rapid background initialization of a RAID logical unit | |
CN103221925A (zh) | 数据处理方法和存储设备 | |
CN101984400A (zh) | 一种raid控制方法、装置及系统 | |
CN103019623A (zh) | 存储盘处理方法及装置 | |
CN107562377A (zh) | 一种存储系统硬盘扩容实现方法 | |
US20210216403A1 (en) | Dynamically adjusting redundancy levels of storage stripes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20121010 |