CN105068896B - 基于raid备份的数据处理方法及装置 - Google Patents
基于raid备份的数据处理方法及装置 Download PDFInfo
- Publication number
- CN105068896B CN105068896B CN201510621570.7A CN201510621570A CN105068896B CN 105068896 B CN105068896 B CN 105068896B CN 201510621570 A CN201510621570 A CN 201510621570A CN 105068896 B CN105068896 B CN 105068896B
- Authority
- CN
- China
- Prior art keywords
- data
- backup
- array
- raid
- failure
- 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)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种基于RAID备份的数据处理方法,包括:设定至少一个RAID阵列作为备份阵列;当向业务RAID阵列发送数据处理命令时,判断所述数据处理命令对应的RAID条带是否失效,在失效的情况下查找所述失效的RAID条带到所述备份阵列中数据块的映射关系,并在找到所述映射关系后在备份阵列的对应数据块中执行数据处理命令。本发明还公开了对应方法的一种数据处理装置。本发明基于RAID备份的方法及装置优点在于,系统中所有的RAID共享相同的备份空间,备份空间可根据需要进行配置,可以是可以一个或多个RAID阵列,能够提高备份空间的利用率。
Description
技术领域
本发明涉及存储技术领域,尤其涉及基于RAID备份的数据处理方法及装置。
背景技术
RAID(Redundant Arrays of Independent Disks,独立冗余磁盘阵列)阵列在长时间使用时,会因振动、腐蚀或磁盘本身的机械故障等影响,出现磁盘无法被识别,或者出现无法容错的介质故障,导致阵列失效。阵列失效的时候,该阵列上的业务完全中断,对业务连续性要求较高的应用来说,这是不可接受的。业务中断,对用户的影响可能非常大,甚至带来很大的损失。
业界有很多的技术来提供阵列失效的备份,保证业务的连续性,如镜像、复制软件等基于业务层面的N+M备份等。
镜像软件进行的备份方式为,当需要通过LUN(Logical Unit Number,逻辑单元号)层向业务RAID阵列写入数据时,在LUN层就将接收到的数据进行镜像,在LUN层配置一个大小完全相同的镜像副本实现数据的备份。复制软件进行的备份方式则是配置一个跟原LUN层完全相同大小的本地或远端LUN,业务写入的时候,原LUN会将数据同时复制到本地或远程LUN。
在必须使用与业务RAID阵列相同大小的RAID阵列/逻辑资源作为备份空间进行镜像、复制,对备份阵列的大小要求严格,同时只有故障的RAID阵列会用到备份空间,没有故障的RAID阵列的备份空间是闲置的,不能被共享,造成存储资源的浪费。
因此,现有的备份技术存在备份空间利用率低下的问题。
发明内容
为了解决现有技术备份存在的利用率低下的问题,本发明提供了一种基于RAID层面备份的数据处理方法。
一种基于RAID备份的数据处理方法,包括:
设定至少一个RAID阵列作为备份阵列;
当向业务RAID阵列发送数据处理命令时,判断所述数据处理命令对应的RAID条带是否失效,在失效的情况下查找所述失效的RAID条带到所述备份阵列中数据块的映射关系,并在找到所述映射关系后在备份阵列的对应数据块中执行数据处理命令。
业务RAID阵列为用于业务处理的非备份RAID阵列。失效的RAID条带根据映射关系映射到备份空间中,多个业务RAID阵列通过建立映射关系可共享一个备份阵列,对备份阵列的大小没有严格限制,只有失效的RAID条带会将数据备份在备份阵列中,其他正常的RAID条带可正常使用,因此极大地提高了备份空间的利用率;且上层下发的对失效的RAID条带进行的数据处理命令可直接在备份空间中进行,上层不会感知,不需要进行上层的处理。
在建立映射关系后,需要将失效RAID条带与备份阵列中的数据块之间的映射关系进行保存,以便进行失效RAID条带对应的数据块的查找。
进一步而言,所述失效RAID条带与对应数据块的映射关系存于映射关系表中,每个具有失效RAID条带的业务RAID阵列对应一张映射关系表。
映射关系表记录原失效RAID条带和备份阵列数据块的对应关系。备份阵列与失效阵列不是一一对应的,可能只有部分RAID条带失效需要重新映射,没有失效的条带还是在原阵列中提供数据访问,失效条带重新映射到备份空间,从备份空间中访问。映射关系表位于内存中,可以通过LBA地址为索引进行查找。
进一步而言,所述数据处理命令为数据写入命令,在查找所述映射关系时,如果所述映射关系不存在,则先在所述备份阵列中查找空闲的数据块,再建立所述失效RAID条带与所述空闲数据块之间的映射关系。
如果映射关系表中不存在失效RAID条带对应的备份阵列数据块,则表明当前数据写入命令为当前RAID条带失效后首次进行数据写入,因此此时要去备份阵列中寻找空闲的数据块并建立对应的映射关系存入映射关系表中。其中映射关系表保存在内存中,每次内存掉电重启都会丢失内容,因此,每次在映射关系表中增加映射关系后,均对备份阵列的头部信息更新保存相应的映射关系。在内存上电重启后,均进行备份阵列的头部信息扫描以重新生成映射关系表。
进一步而言,与失效RAID条带具有映射关系的数据块被划分为多个空间,对应地,所述映射关系表包含:失效RAID条带的起始LBA地址、备份阵列中对应失效RAID条带的数据块起始LBA地址以及对应数据块各空间的比特位,每个比特位用于表示对应的数据块空间是否被占用。
映射关系表中包含了失效RAID条带及其对应数据块两者的LBA地址,且通过表示各空间的比特位将数据块的占用情况进行记录保存。由于每个数据块被划分为若干个空间,因此从下发的数据处理命令中存在的失效RAID条带中的LBA地址中,可以根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小,得到在数据块中对应的数据块空间位置(相当于对应数据处理命令中LBA地址的数据块LBA地址),从而进行相应位置的数据写入。并且由于数据块空间由各比特位表示,因此易于知道各空间的占用情况。
进一步而言,所述数据写入命令包括待写入数据的LBA地址,向对应失效RAID条带的数据块执行数据写入命令的方法包括:
根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待写入数据在备份阵列中所在数据块空间的位置;
如果待写入的数据块为空闲数据块,则在写入数据后将对应的比特位状态从未占用更改为已占用;如果待写入的数据块已写入数据时,根据比特位状态判断待写入数据的数据块空间是否已被占用:如果是,则用待写入数据更新已写入的数据;否则,将待写入数据写入到数据块空间中并在写入数据后将对应的比特位状态从未占用更改为已占用。
如果待写入的数据块是新建立的空闲数据块,则各数据块空间未被占用,比特位均为未占用状态,直接写入即可,并在写入以后更改比特位状态为已占用;如果映射关系在先前已经建立,则表示已有数据写入的命令,数据块中存在被占用的数据,此时,被占用的数据块空间所表示的比特位为已占用状态,如果数据写入命令中对应LBA地址的数据块空间位置为已占用状态,则对应地将待写入的数据用来更新已写入的数据块空间,比特位状态不需要进行更改;如果对应的数据块空间位置未被占用,则与空闲数据块的数据写入方法一样。
进一步而言,在查找所述映射关系时先查找是否存在对应的映射关系表,如果不存在,则在查找到所述空闲数据块并建立所述映射关系时建立所述映射关系表。
映射关系表是保存在内存中的,只有在RAID条带失效并进行数据写入时才进行建立,可以减少内存占用。
进一步而言,所述数据读取命令包括待读取数据的LBA地址,向对应失效RAID条带的数据块执行数据读取命令的方法包括:根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待读取的数据命令在备份阵列中所在数据块空间的对应位置并读取对应位置的数据。
数据读取命令包含LBA地址,在RAID条带失效的情况下直接从映射关系表中找到对应的数据块,根据命令中的LBA地址,通过失效RAID条带起始LBA地址与数据块起始LBA地址的对应关系,换算出所要读取的数据所在数据块位置进行相应的读取,上层也不会感知到读取位置的变化。
本发明还提供了一种数据处理装置,用于实施本发明方法,以解决备份空间利用率低下的问题。
一种基于RAID备份的数据处理装置,包括:
备份阵列设定单元,设定至少一个RAID阵列作为备份阵列;
备份数据处理单元,当向业务RAID阵列发送数据处理命令时,判断所述数据处理命令对应的RAID条带是否失效,在失效的情况下查找所述失效的RAID条带到所述备份阵列中数据块的映射关系,并在找到所述映射关系后在备份阵列的对应数据块中执行数据处理命令。
失效的RAID条带根据映射关系映射到备份空间中,多个业务RAID阵列通过建立映射关系可共享一个备份阵列,对备份阵列的大小没有严格限制,只有失效的RAID条带会将数据备份在备份阵列中,其他正常的RAID条带可正常使用,因此极大地提高了备份空间的利用率;且上层下发的对失效的RAID条带进行的数据处理命令可直接在备份空间中进行,上层不会感知,不需要进行上层的处理。
在建立映射关系后,需要将失效RAID条带与备份阵列中的数据块之间的映射关系进行保存,以便进行失效RAID条带对应的数据块的查找。
进一步而言,备份数据处理单元还包括用于生成映射关系表的映射关系表生成子单元,所述失效RAID条带与对应数据块的映射关系存于映射关系表中,每个具有失效RAID条带的业务RAID阵列对应一张映射关系表。
映射关系表记录原失效RAID条带和备份阵列数据块的对应关系。备份阵列与具有失效RAID条带的业务RAID阵列不是一一对应的,可能只有部分RAID条带失效需要重新映射,没有失效的条带还是在原阵列中提供数据访问,失效条带重新映射到备份空间,从备份空间中访问。映射关系表位于内存中,可以通过LBA地址为索引进行查找。
进一步而言,所述数据处理命令为数据写入命令,所述备份数据处理单元在查找所述映射关系时,如果所述映射关系不存在,则先在所述备份阵列中查找空闲的数据块,再建立所述失效RAID条带与所述空闲数据块之间的映射关系。
进一步而言,与失效RAID条带具有映射关系的数据块被划分为多个空间,对应地,所述映射关系表生成子单元生成的映射关系表包含:失效RAID条带的起始LBA地址、备份阵列中对应失效RAID条带的数据块起始LBA地址以及对应数据块各空间的比特位,每个比特位用于表示对应的数据块空间是否被占用。
映射关系表中包含了失效RAID条带及其对应数据块两者的LBA地址,且通过表示各空间的比特位将数据块的占用情况进行记录保存。由于每个数据块被划分为若干个空间,因此从下发的数据处理命令中存在的失效RAID条带中的LBA地址中,可以根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小,得到在数据块中对应的数据块空间位置(相当于对应数据处理命令中LBA地址的数据块LBA地址),从而进行相应位置的数据写入。并且由于数据块空间由各比特位表示,因此易于知道各空间的占用情况。
进一步而言,所述数据写入命令包括待写入数据的LBA地址,向对应失效RAID条带的数据块执行数据写入命令的方法包括:
根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待写入数据在备份阵列中所在数据块空间的位置;
如果待写入的数据块为空闲数据块,则在写入数据后将对应的比特位状态从未占用更改为已占用;如果待写入的数据块已写入数据时,根据比特位状态判断待写入数据的数据块空间是否已被占用:如果是,则用待写入数据更新已写入的数据;否则,将待写入数据写入到数据块空间中并在写入数据后将对应的比特位状态从未占用更改为已占用。
如果待写入的数据块是新建立的空闲数据块,则各数据块空间未被占用,比特位均为未占用状态,直接写入即可,并在写入以后更改比特位状态为已占用;如果映射关系在先前已经建立,则表示已有数据写入的命令,数据块中存在被占用的数据,此时,被占用的数据块空间所表示的比特位为已占用状态,如果数据写入命令中对应LBA地址的数据块空间位置为已占用状态,则对应地将待写入的数据用来更新已写入的数据块空间,比特位状态不需要进行更改;如果对应的数据块空间位置未被占用,则与空闲数据块的数据写入方法一样。
进一步而言,所述备份数据处理单元在查找所述映射关系时先查找是否存在对应的映射关系表,如果不存在,则在查找到所述空闲数据块并建立所述映射关系时建立所述映射关系表。
映射关系表是保存在内存中的,只有在RAID条带失效并进行数据写入时才进行建立,可以减少内存占用。
进一步而言,所述数据读取命令包括待读取数据的LBA地址,所述备份数据处理单元向对应失效RAID条带的数据块执行数据读取命令的方法包括:根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待读取的数据命令在备份阵列中所在数据块空间的对应位置并读取对应位置的数据。
数据读取命令包含LBA地址,在RAID条带失效的情况下直接从映射关系表中找到对应的数据块,根据命令中的LBA地址,通过失效RAID条带起始LBA地址与数据块起始LBA地址的对应关系,换算出所要读取的数据所在数据块位置进行相应的读取,上层也不会感知到读取位置的变化。
本发明基于RAID备份的数据处理方法及装置具有如下显著效果:1、建立失效的业务RAID阵列与备份阵列之间的映射关系,当数据写入的时候,根据映射关系表,直接写入备份阵列,上层LUN层和Cache层都感知不到,不需要上层有任何改变;2、系统中所有的RAID共享相同的备份空间,备份空间可根据需要进行配置,可以是一个或多个RAID阵列,能够提高备份空间的利用率;3、系统中任何RAID阵列存在失效RAID条带,都可以保证业务的连续性。
附图说明
图1为本发明一个实施例的整体架构图;
图2为图1所示实施例的数据写入流程图;
图3为图1所示实施例的数据读取流程图;
图4为图1所示实施例的具有失效RAID条带的业务RAID阵列与备份阵列对应关系示意图。
具体实施方式
为了使本发明更加详细明了,现结合附图和实施例对本发明进一步地加以解释说明。
本发明方法的一个实施例使用一个或多个RAID阵列作为系统中业务RAID阵列失效时的备份阵列,本发明基于RAID备份的数据处理装置利用当前实施例的方法进行数据处理时所采用的架构图如图1所示,例如当前实施例中用一个RAID阵列作为备份阵列(备份空间)。本发明基于RAID备份的数据处理装置包括备份阵列设定单元以及备份数据处理单元。备份阵列设定单元用于设定RAID阵列作为备份阵列,RAID阵列一旦被设置为备份阵列,则在超级块中做一个标记,标记是备份阵列,重启扫描的时候,扫描到是备份阵列,则将备份阵列中的头部管理信息生成业务RAID阵列与备份阵列的映射关系表,如表1所示,备份阵列的头部管理信息包括:CRC校验码(循环冗余校验码)、失效RAID条带所在业务RAID阵列的UUID(UniversallyUnique ID,全局唯一标识符)、原LBA地址为失效RAID条带在失效RAID中起始LBA地址、偏移地址表示与失效RAID条带对应的数据块在备份空间中的偏移地址或者起始LBA地址;头部管理信息具体结构及在备份阵列中的位置如表1所示,其中表1前三行为头部管理信息具体结构,第四行表示省略的若干头部管理信息。
表1
当前实施例中,执行数据写入命令具体的流程图如图2所示,当Cache层下发数据写入命令到RAID层时,备份数据处理单元先判断业务RAID阵列是否已经失效:如果已经失效,则去查找该业务RAID阵列所对应的映射关系表,每个具有失效RAID条带的业务RAID阵列对应一张映射关系表。
映射关系表是在业务RAID阵列存在失效RAID条带后备份数据处理单元中的映射关系表生成子单元在首次进行数据备份时建立的。如表2所示,映射关系表中存有失效RAID条带的起始LBA地址(LBA地址1至LBA地址n,中间省略若干行)以及失效RAID条带在备份空间中所对应数据块的起始LBA地址或偏移地址,例如偏移地址1至偏移地址n。
表2
结合图4可以看到,数据块被划分为多个空间,当前实施例中每个空间为64KB。图4中,左侧方框表示具有失效RAID条带的业务RAID阵列,右侧方框表示备份阵列,其中左侧方框中的各失效条带LBA地址指示失效RAID条带的起始LBA地址,与右侧方框中的数据块偏移地址相对应,如图4所示,头部管理信息中包含失效RAID条带的起始LBA地址及其对应的备份阵列的偏移地址,各个偏移地址所对应的BIT_MAP均表示大小256MB的数据块空间,每个BIT_MAP有4K比特位,每个比特位表示数据块中64KB的空间,如图4所示,以偏移地址1所对应的BIT_MAP为例,每一个方格表示一个比特位,各方格的箭头表示比特位到偏移地址1所指示的数据块空间的对应关系,每一项的BIT_MAP中,如果比特位为1则表示该数据块空间已经使用,比特位为0则表示是空闲的数据块空间。
在查找映射关系表时,如果不存在映射关系表,说明是在业务RAID阵列产生失效后首次下发写命令,则先去备份空间中查找空闲数据块的LBA地址(或偏移地址),将原失效的业务RAID条带的起始LBA地址与备份空间中对应数据块的起始LBA地址(或偏移地址)建立映射关系,并建立一个映射关系表,将所建立的映射关系存在映射关系表中。如果映射关系表已经存在,则说明在业务RAID条带失效后已进行过写命令,本发明当前实施例的映射关系表中各表项根据RAID条带的LBA地址顺序排列,因此根据命令的LBA地址在内存映射关系表中进行哈希查找,以便更加快速高效地查找到对应地址。由于Cache下发的写入命令中包含业务RAID阵列中的LBA地址,根据失效的RAID条带起始LBA地址、备份阵列中数据块的起始LBA地址(或偏移地址)以及备份阵列中对应的数据块空间的大小,可以推算得到数据写入命令所要执行的失效RAID条带LBA地址在备份阵列中处于第几个数据块空间(即得到在对应数据块中的LBA地址)。
查找到LBA地址之后进行如下判断及处理:如果LBA地址在映射关系表BIT_MAP中对应的比特位为1,则表示该LBA地址在备份空间中对应的LBA地址已被占用,用待写入的数据来更新对应的LBA地址(或偏移地址)所存的数据,否则表示对应的LBA地址为空闲的数据块空间,则将数据写入到备份空间对应的地址,将该失效RAID条带对应的BIT_MAP中比特位置1。
RAID与备份空间的映射关系表在系统重启之后是从备份阵列中提取生成的。如果有多个包含失效RAID条带的业务RAID阵列,则会生成多个映射关系表。多个失效的业务RAID阵列共享备份空间。
在内存掉电重启时,映射关系表中的信息会丢失,因此在映射关系表中的表项进行了修改之后要及时更新备份阵列的头部管理信息,在每次重启后均进行头部管理信息的获取,以重新生成映射关系表中的各表项。
备份空间与业务RAID阵列不是一一对应的,其大小不需要与业务RAID阵列相同,因为可能只有部分RAID条带失效需要重新映射,没有失效的RAID条带还是在原业务RAID阵列中提供数据访问,失效的业务RAID条带则通过映射关系映射到备份空间,从备份空间中进行数据访问。
数据读取的流程比较简单,流程如图3所示,Cache层给业务RAID阵列下发数据读取命令,判断RAID条带是否失效,如果已经失效,则在映射关系表中查找对应的备份空间的LBA地址(或偏移地址),根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待读取的数据命令在备份阵列中所在数据块空间的对应位置并读取对应位置的数据,返回给上层,否则就按照正常流程在原业务RAID阵列中读取数据,返回给上层。
如图1所示客户端下发命令到LUN层,LUN层将命令下发到Cache层,Cache层将命令下发到RAID阵列层时,如果整个业务RAID阵列失效,会自动将数据写到备份空间。从这个架构流程可以看出,业务RAID阵列失效,写到备份空间,上层的LUN和Cache层都感知不到。
本发明基于RAID备份的数据处理方法及装置具有如下显著效果:1、建立失效的业务RAID阵列与备份阵列之间的映射关系,当数据写入的时候,根据映射关系表,直接写入备份阵列,上层LUN层和Cache层都感知不到,不需要上层有任何改变;2、系统中所有的RAID共享相同的备份空间,备份空间可根据需要进行配置,可以是一个或多个RAID阵列,能够提高备份空间的利用率;3、系统中任何RAID阵列存在失效RAID条带,都可以保证业务的连续性。
Claims (14)
1.一种基于RAID备份的数据处理方法,其特征在于,包括:
设定至少一个RAID阵列作为备份阵列;
当向业务RAID阵列发送数据处理命令时,判断所述数据处理命令对应的RAID条带是否失效,在失效的情况下查找所述失效的RAID条带到所述备份阵列中数据块的映射关系,并在找到所述映射关系后在备份阵列的对应数据块中执行数据处理命令。
2.如权利要求1所述数据处理方法,其特征在于,所述失效RAID条带与对应数据块的映射关系存于映射关系表中,每个具有失效RAID条带的业务RAID阵列对应一张映射关系表。
3.如权利要求2所述数据处理方法,其特征在于,所述数据处理命令为数据写入命令,在查找所述映射关系时,如果所述映射关系不存在,则先在所述备份阵列中查找空闲的数据块,再建立所述失效RAID条带与所述空闲数据块之间的映射关系。
4.如权利要求3所述数据处理方法,其特征在于,与失效RAID条带具有映射关系的数据块被划分为多个空间,对应地,所述映射关系表包含:失效RAID条带的起始LBA地址、备份阵列中对应失效RAID条带的数据块起始LBA地址以及对应数据块各空间的比特位,每个比特位用于表示对应的数据块空间是否被占用。
5.如权利要求4所述数据处理方法,其特征在于,所述数据写入命令包括待写入数据的LBA地址,向对应失效RAID条带的数据块执行数据写入命令的方法包括:
根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待写入数据在备份阵列中所在数据块空间的位置;
如果待写入的数据块为空闲数据块,则在写入数据后将对应的比特位状态从未占用更改为已占用;如果待写入的数据块已写入数据时,根据比特位状态判断待写入数据的数据块空间是否已被占用:如果是,则用待写入数据更新已写入的数据;否则,将待写入数据写入到数据块空间中并在写入数据后将对应的比特位状态从未占用更改为已占用。
6.如权利要求4所述数据处理方法,其特征在于,在查找所述映射关系时先查找是否存在对应的映射关系表,如果不存在,则在查找到所述空闲数据块并建立所述映射关系时建立所述映射关系表。
7.如权利要求5所述数据处理方法,其特征在于,还包括数据读取命令,所述数据读取命令包括待读取数据的LBA地址,向对应失效RAID条带的数据块执行数据读取命令的方法包括:根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待读取的数据命令在备份阵列中所在数据块空间的对应位置并读取对应位置的数据。
8.一种基于RAID备份的数据处理装置,其特征在于,包括:
备份阵列设定单元,设定至少一个RAID阵列作为备份阵列;
备份数据处理单元,当向业务RAID阵列发送数据处理命令时,判断所述数据处理命令对应的RAID条带是否失效,在失效的情况下查找所述失效的RAID条带到所述备份阵列中数据块的映射关系,并在找到所述映射关系后在备份阵列的对应数据块中执行数据处理命令。
9.如权利要求8所述数据处理装置,其特征在于,备份数据处理单元还包括用于生成映射关系表的映射关系表生成子单元,所述失效RAID条带与对应数据块的映射关系存于映射关系表中,每个具有失效RAID条带的业务RAID阵列对应一张映射关系表。
10.如权利要求9所述数据处理装置,其特征在于,所述数据处理命令为数据写入命令,所述备份数据处理单元在查找所述映射关系时,如果所述映射关系不存在,则先在所述备份阵列中查找空闲的数据块,再建立所述失效RAID条带与所述空闲数据块之间的映射关系。
11.如权利要求10所述数据处理装置,其特征在于,与失效RAID条带具有映射关系的数据块被划分为多个空间,对应地,所述映射关系表生成子单元生成的映射关系表包含:失效RAID条带的起始LBA地址、备份阵列中对应失效RAID条带的数据块起始LBA地址以及对应数据块各空间的比特位,每个比特位用于表示对应的数据块空间是否被占用。
12.如权利要求11所述数据处理装置,其特征在于,所述数据写入命令包括待写入数据的LBA地址,所述备份数据处理单元向对应失效RAID条带的数据块执行数据写入命令的方法包括:
根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待写入数据在备份阵列中所在数据块空间的位置;
如果待写入的数据块为空闲数据块,则在写入数据后将对应的比特位状态从未占用更改为已占用;如果待写入的数据块已写入数据时,根据比特位状态判断待写入数据的数据块空间是否已被占用:如果是,则用待写入数据更新已写入的数据;否则,将待写入数据写入到数据块空间中并在写入数据后将对应的比特位状态从未占用更改为已占用。
13.如权利要求11所述数据处理装置,其特征在于,所述备份数据处理单元在查找所述映射关系时先查找是否存在对应的映射关系表,如果不存在,则在查找到所述空闲数据块并建立所述映射关系时建立所述映射关系表。
14.如权利要求13所述数据处理装置,其特征在于,还包括数据读取命令,所述数据读取命令包括待读取数据的LBA地址,所述备份数据处理单元向对应失效RAID条带的数据块执行数据读取命令的方法包括:根据失效RAID条带起始LBA地址与备份阵列数据块的起始LBA地址的对应关系,以及被划分的数据块空间大小得到待读取的数据命令在备份阵列中所在数据块空间的对应位置并读取对应位置的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510621570.7A CN105068896B (zh) | 2015-09-25 | 2015-09-25 | 基于raid备份的数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510621570.7A CN105068896B (zh) | 2015-09-25 | 2015-09-25 | 基于raid备份的数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105068896A CN105068896A (zh) | 2015-11-18 |
CN105068896B true CN105068896B (zh) | 2019-03-12 |
Family
ID=54498273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510621570.7A Active CN105068896B (zh) | 2015-09-25 | 2015-09-25 | 基于raid备份的数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105068896B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107870730B (zh) | 2016-09-23 | 2020-11-20 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和系统 |
TWI704451B (zh) * | 2019-01-02 | 2020-09-11 | 慧榮科技股份有限公司 | 用來進行關於容錯式磁碟陣列的動態復原管理之方法與裝置以及依據該方法來運作之儲存系統 |
CN112784101B (zh) * | 2019-11-07 | 2023-03-31 | 浙江宇视科技有限公司 | 视频数据存储方法及装置、数据存储设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6332177B1 (en) * | 1998-10-19 | 2001-12-18 | Lsi Logic Corporation | N-way raid 1 on M drives block mapping |
CN102799533A (zh) * | 2012-07-10 | 2012-11-28 | 浙江宇视科技有限公司 | 一种磁盘损坏扇区屏蔽方法及装置 |
CN103093157A (zh) * | 2013-01-25 | 2013-05-08 | 浪潮电子信息产业股份有限公司 | 一种sas raid卡缓存数据永久性保护方法 |
CN104035830A (zh) * | 2014-06-24 | 2014-09-10 | 浙江宇视科技有限公司 | 一种数据恢复方法和装置 |
CN104166601A (zh) * | 2014-08-14 | 2014-11-26 | 浙江宇视科技有限公司 | 一种存储数据的备份方法和装置 |
-
2015
- 2015-09-25 CN CN201510621570.7A patent/CN105068896B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6332177B1 (en) * | 1998-10-19 | 2001-12-18 | Lsi Logic Corporation | N-way raid 1 on M drives block mapping |
CN102799533A (zh) * | 2012-07-10 | 2012-11-28 | 浙江宇视科技有限公司 | 一种磁盘损坏扇区屏蔽方法及装置 |
CN103093157A (zh) * | 2013-01-25 | 2013-05-08 | 浪潮电子信息产业股份有限公司 | 一种sas raid卡缓存数据永久性保护方法 |
CN104035830A (zh) * | 2014-06-24 | 2014-09-10 | 浙江宇视科技有限公司 | 一种数据恢复方法和装置 |
CN104166601A (zh) * | 2014-08-14 | 2014-11-26 | 浙江宇视科技有限公司 | 一种存储数据的备份方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105068896A (zh) | 2015-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11550675B2 (en) | Remote data replication method and system | |
US10365983B1 (en) | Repairing raid systems at per-stripe granularity | |
US11243706B2 (en) | Fragment management method and fragment management apparatus | |
CN102024044B (zh) | 分布式文件系统 | |
CN103577121B (zh) | 一种基于Nand Flash的高可靠线性文件存取方法 | |
US7089448B2 (en) | Disk mirror architecture for database appliance | |
US8762768B2 (en) | Storage system for restoring data stored in failed storage device | |
CN102594852B (zh) | 数据访问方法、节点及系统 | |
US9477565B2 (en) | Data access with tolerance of disk fault | |
US20100306466A1 (en) | Method for improving disk availability and disk array controller | |
US10120769B2 (en) | Raid rebuild algorithm with low I/O impact | |
CN107729536B (zh) | 一种数据存储方法和装置 | |
US20130103902A1 (en) | Method and apparatus for implementing protection of redundant array of independent disks in file system | |
CN103534688A (zh) | 数据恢复方法、存储设备和存储系统 | |
CN111309245B (zh) | 一种分层存储写入方法和装置、读取方法和装置及系统 | |
CN105068896B (zh) | 基于raid备份的数据处理方法及装置 | |
CN104424052A (zh) | 一种自动冗余的分布式存储系统及方法 | |
CN104166601A (zh) | 一种存储数据的备份方法和装置 | |
US11093339B2 (en) | Storage utilizing a distributed cache chain and a checkpoint drive in response to a data drive corruption | |
CN112379825B (zh) | 基于数据特征分池的分布式数据存储方法及装置 | |
CN104182353A (zh) | 一种采用不同存储介质的数据存储系统 | |
CN109753224B (zh) | 存储结构及存储结构配置方法 | |
CN116009761A (zh) | 一种数据写入方法以及相关设备 | |
CN113051428B (zh) | 一种摄像机前端存储备份的方法及装置 | |
CN116737060A (zh) | 非易失性存储器器件中的基于超级块的写入管理 |
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 |