LUN销毁方法及存储设备转让专利

申请号 : CN202011476459.0

文献号 : CN112558876B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 上官应兰

申请人 : 杭州宏杉科技股份有限公司

摘要 :

本申请提供一种LUN销毁方法及存储设备。该存储设备包括LUN和存放LUN对应数据的RAID。本申请中,LUN直接向RAID下发销毁命令,而无需将销毁数据写入缓存再刷盘到RAID中,因此,可节约缓存资源,提升销毁效率。此外,RAID在执行销毁命令时,若涉及整条带销毁,则针对此次销毁不对该条带执行RAID冗余处理,因此,可节约RAID计算资源,提升销毁效率。

权利要求 :

1.一种LUN销毁方法,其特征在于,应用于存储设备,所述存储设备包括至少一个LUN和至少一个RAID,所述至少一个LUN中的目标LUN的数据存放在至少一个目标RAID,所述目标LUN被划分为多个逻辑空间,所述目标LUN的逻辑空间与目标RAID中的物理空间一一对应且大小相等,所述方法包括:

针对每一个逻辑空间执行如下处理:

所述目标LUN向第一目标RAID下发销毁命令,所述第一目标RAID为与当前逻辑空间对应的目标物理空间所属目标RAID,所述销毁命令包括所述目标物理空间的地址范围以及预设的第一长度的销毁数据;

所述第一目标RAID依据所述目标物理空间的地址范围,确定所述目标物理空间所涉及到的至少一个目标条带;

针对每一个目标条带执行如下销毁处理:如果该目标条带全部落入所述目标物理空间,所述第一目标RAID向该目标条带写入所述销毁数据,且针对该写入操作不对该目标条带执行RAID冗余处理;

如果该目标条带未全部落入所述目标物理空间,所述第一目标RAID向该目标条带落入所述目标物理空间的地址段写入所述销毁数据,并对该目标条带执行RAID冗余处理。

2.如权利要求1所述的方法,其特征在于,所述第一长度小于所述目标物理空间大小。

3.如权利要求1所述的方法,其特征在于,所述销毁命令还包括销毁次数,所述销毁命令包括与所述销毁次数相同数目的第一长度的销毁数据;

所述针对每一个目标条带执行销毁处理,包括:所述第一目标RAID针对每一个目标条带执行所述销毁次数销毁处理,其中,每一次销毁处理使用该次销毁对应的第一长度的销毁数据。

4.如权利要求1所述的方法,其特征在于,所述第一目标RAID包括多个成员盘,所述第一目标RAID向目标条带写入销毁数据,包括:所述第一目标RAID确定所述目标条带中需要写入销毁数据的各目标条块所属目标成员盘;

针对每一个目标成员盘,所述第一目标RAID向该目标成员盘下发写命令,所述写命令包括第二长度的销毁数据,所述第二长度的销毁数据依据所述第一长度的销毁数据生成,所述第二长度为该目标成员盘对应目标条块中待写入销毁数据的地址段的大小。

5.如权利要求1所述的方法,其特征在于,所述存储设备还包括缓存,所述缓存被划分为多个缓存块,所述目标LUN向第一目标RAID下发销毁命令之前,所述方法还包括:所述目标LUN不再下发新的写盘命令,并等待所有已下发写盘命令的返回结果;

在接收到返回结果后,回收所述目标LUN对应的所有缓存块。

6.一种存储设备,其特征在于,所述存储设备包括至少一个LUN和至少一个RAID,所述至少一个LUN中的目标LUN的数据存放在至少一个目标RAID,所述目标LUN被划分为多个逻辑空间,所述目标LUN的逻辑空间与目标RAID中的物理空间一一对应且大小相等;

所述目标LUN,用于针对每一个逻辑区间,向第一目标RAID下发销毁命令,所述第一目标RAID为与当前逻辑空间对应的目标物理空间所属目标RAID,所述销毁命令包括所述目标物理空间的地址范围以及预设的第一长度的销毁数据;

所述第一目标RAID,用于依据所述目标物理空间的地址范围,确定所述目标物理空间所涉及到的至少一个目标条带;针对每一个目标条带,如果该目标条带全部落入所述目标物理空间,向该目标条带写入所述销毁数据,且针对该写入操作不对该目标条带执行RAID冗余处理;如果该目标条带未全部落入所述目标物理空间,向该目标条带落入所述目标物理空间的地址段写入所述销毁数据,并对该目标条带执行RAID冗余处理。

7.如权利要求6所述的设备,其特征在于,所述第一长度小于所述目标物理空间大小。

8.如权利要求6所述的设备,其特征在于,所述销毁命令还包括销毁次数,所述销毁命令包括与所述销毁次数相同数目的第一长度的销毁数据;

所述第一目标RAID,具体用于针对每一个目标条带执行所述销毁次数销毁处理,其中,每一次销毁处理使用该次销毁对应的第一长度的销毁数据。

9.如权利要求6所述的设备,其特征在于,所述第一目标RAID包括多个成员盘;

所述第一目标RAID,具体用于确定所述目标条带中需要写入销毁数据的各目标条块所属目标成员盘;针对每一个目标成员盘,向该目标成员盘下发写命令,所述写命令包括第二长度的销毁数据,所述第二长度的销毁数据依据所述第一长度的销毁数据生成,所述第二长度为该目标成员盘对应目标条块中待写入销毁数据的地址段的大小。

10.如权利要求6所述的设备,其特征在于,所述存储设备还包括缓存,所述缓存被划分为多个缓存块;

所述目标LUN,还用于在向第一目标RAID下发销毁命令之前,不再下发新的写盘命令,并等待所有已下发写盘命令的返回结果;在接收到返回结果后,回收所述目标LUN对应的所有缓存块。

说明书 :

LUN销毁方法及存储设备

技术领域

[0001] 本申请涉及存储技术领域,尤其涉及一种LUN销毁方法及存储设备。

背景技术

[0002] 逻辑单元号(英文:Logical Unit Number,缩写:LUN)销毁是指当LUN中用户数据不再使用时,通过写入销毁数据覆盖已有数据,来确保已有用户数据无法被恢复,保证用户
数据的安全性。
[0003] 现有销毁流程同数据写入流程,即,LUN构造包含需要写入指定地址段的销毁数据的写命令;缓存为该写命令对应销毁数据分配缓存块,并通过后台刷盘命令,将销毁数据发
送给独立冗余磁盘阵列(英文:Redundant Array of Independent Disks,缩写:RAID);
RAID根据RAID算法计算冗余数据,再将销毁数据以及对应冗余数据写入各磁盘。
[0004] 从上述销毁流程可以看出:一方面,LUN销毁需要占用大量资源。比如,占用缓存资源;按照写用户数据的标准在写命令中携带销毁数据,会消耗大量带宽资源;针对销毁数据
的RAID计算,会消耗RAID的计算资源等。另一方面,由于LUN销毁需要执行完整的数据写入
流程,因此,LUN销毁效率不高。

发明内容

[0005] 有鉴于此,本申请提出一种LUN销毁方法及存储设备,用以降低资源消耗,提升销毁效率。
[0006] 为实现上述申请目的,本申请提供了如下技术方案:
[0007] 第一方面,本申请提供一种LUN销毁方法,应用于存储设备,所述存储设备包括至少一个LUN和至少一个RAID,所述至少一个LUN对应的目标LUN的数据存放在至少一个目标
RAID,所述目标LUN被划分为多个逻辑空间,所述目标LUN的逻辑空间与目标RAID中的物理
空间一一对应且大小相等,所述方法包括:
[0008] 针对每一个逻辑空间执行如下处理:
[0009] 所述目标LUN向第一目标RAID下发销毁命令,所述第一目标RAID为与当前逻辑空间对应的目标物理空间所属目标RAID,所述销毁命令包括所述目标物理空间的地址范围以
及预设的第一长度的销毁数据;
[0010] 所述第一目标RAID依据所述目标物理空间的地址范围,确定所述目标物理空间所涉及到的至少一个目标条带;
[0011] 针对每一个目标条带执行如下销毁处理:
[0012] 如果该目标条带全部落入所述目标物理空间,所述第一目标RAID向该目标条带写入所述销毁数据,且针对该写入操作不对该目标条带执行RAID冗余处理;
[0013] 如果该目标条带未全部落入所述目标物理空间,所述第一目标RAID向该目标条带落入所述目标物理空间的地址段写入所述销毁数据,并对该目标条带执行RAID冗余处理。
[0014] 可选的,所述第一长度小于所述目标物理空间大小。
[0015] 可选的,所述销毁命令还包括销毁次数,所述销毁命令包括与所述销毁次数相同数目的第一长度的销毁数据;
[0016] 所述针对每一个目标条带执行销毁处理,包括:
[0017] 所述第一目标RAID针对每一个目标条带执行所述销毁次数销毁处理,其中,每一次销毁处理使用该次销毁对应的第一长度的销毁数据。
[0018] 可选的,所述第一目标RAID包括多个成员盘,所述第一目标RAID向目标条带写入销毁数据,包括:
[0019] 所述第一目标RAID确定所述目标条带中需要写入销毁数据的各目标条块所属目标成员盘;
[0020] 针对每一个目标成员盘,所述第一目标RAID向该目标成员盘下发写命令,所述写命令包括第二长度的销毁数据,所述第二长度的销毁数据依据所述第一长度的销毁数据生
成,所述第二长度为该目标成员盘对应目标条块中待写入销毁数据的地址段的大小。
[0021] 可选的,所述存储设备还包括缓存,所述缓存被划分为多个缓存块,所述目标LUN向第一目标RAID下发销毁命令之前,所述方法还包括:
[0022] 所述目标LUN不再下发新的写盘命令,并等待所有已下发写盘命令的返回结果;
[0023] 在接收到返回结果后,回收所述目标LUN对应的所有缓存块。
[0024] 第二方面,本申请提供一种存储设备,所述存储设备包括至少一个LUN和至少一个RAID,所述至少一个LUN对应的目标LUN的数据存放在至少一个目标RAID,所述目标LUN被划
分为多个逻辑空间,所述目标LUN的逻辑空间与目标RAID中的物理空间一一对应且大小相
等;
[0025] 所述目标LUN,用于针对每一个逻辑区间,向第一目标RAID下发销毁命令,所述第一目标RAID为与当前逻辑空间对应的目标物理空间所属目标RAID,所述销毁命令包括所述
目标物理空间的地址范围以及预设的第一长度的销毁数据;
[0026] 所述第一目标RAID,用于依据所述目标物理空间的地址范围,确定所述目标物理空间所涉及到的至少一个目标条带;针对每一个目标条带,如果该目标条带全部落入所述
目标物理空间,向该目标条带写入所述销毁数据,且针对该写入操作不对该目标条带执行
RAID冗余处理;如果该目标条带未全部落入所述目标物理空间,向该目标条带落入所述目
标物理空间的地址段写入所述销毁数据,并对该目标条带执行RAID冗余处理。
[0027] 可选的,所述第一长度小于所述目标物理空间大小。
[0028] 可选的,所述销毁命令还包括销毁次数,所述销毁命令包括与所述销毁次数相同数目的第一长度的销毁数据;
[0029] 所述第一目标RAID,具体用于针对每一个目标条带执行所述销毁次数销毁处理,其中,每一次销毁处理使用该次销毁对应的第一长度的销毁数据。
[0030] 可选的,所述第一目标RAID包括多个成员盘;
[0031] 所述第一目标RAID,具体用于确定所述目标条带中需要写入销毁数据的各目标条块所属目标成员盘;针对每一个目标成员盘,向该目标成员盘下发写命令,所述写命令包括
第二长度的销毁数据,所述第二长度的销毁数据依据所述第一长度的销毁数据生成,所述
第二长度为该目标成员盘对应目标条块中待写入销毁数据的地址段的大小。
[0032] 可选的,所述存储设备还包括缓存,所述缓存被划分为多个缓存块;
[0033] 所述目标LUN,还用于在向第一目标RAID下发销毁命令之前,不再下发新的写盘命令,并等待所有已下发写盘命令的返回结果;在接收到返回结果后,回收所述目标LUN对应
的所有缓存块。
[0034] 由以上描述可以看出,本申请实施例中,LUN直接向RAID下发销毁命令,而无需将销毁数据写入缓存再刷盘到RAID中,因此,可节约缓存资源,提升销毁效率。此外,RAID在执
行销毁命令时,若涉及整条带销毁,则针对此次销毁不对该条带执行RAID冗余处理,因此,
可节约RAID计算资源,提升销毁效率。

附图说明

[0035] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于
本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
[0036] 图1是本申请实施例示出的一种LUN销毁方法流程图;
[0037] 图2是为本申请实施例示出的第一目标RAID向目标条带写入销毁数据的实现流程。

具体实施方式

[0038] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例
中所描述的实施方式并不代表与本申请相一致的所有实施方式。
[0039] 在本申请实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请实施例。在本申请实施例中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多
数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并
包含一个或多个相关联的列出项目的任何或所有可能组合。
[0040] 应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,
在不脱离本申请实施例范围的情况下,协商信息也可以被称为第二信息,类似地,第二信息
也可以被称为协商信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……
时”或“当……时”或“响应于确定”。
[0041] 为了使本申请实施例的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本申请实施例执行详细描述:
[0042] 参见图1,为本申请实施例示出的一种LUN销毁方法的流程图。该流程应用于存储设备。
[0043] 该存储设备包括至少一个RAID。每一个RAID由多个成员盘组成,提供比单个磁盘更高的存储性能以及数据冗余保护。
[0044] 该存储设备还包括至少一个LUN。每一个LUN被划分为多个逻辑空间,每一个逻辑空间对应RAID中同样大小的一个物理空间。LUN通过维护逻辑空间与物理空间的映射关系,
将用户针对逻辑空间的访问请求转换为针对对应物理空间的读写命令,以实现用户对存储
资源的使用。
[0045] 参见表1,为本申请实施例示出的LUN的逻辑空间与RAID的物理空间之间的映射关系示例。
[0046]
[0047] 表1
[0048] 当LUN中的用户数据不再使用时,可执行图1所示销毁流程,该流程包括以下步骤:
[0049] 步骤101,目标LUN向第一目标RAID下发销毁命令,该销毁命令包括目标物理空间的地址范围以及预设的第一长度的销毁数据。
[0050] 这里,目标LUN可为存储设备中需要销毁的任一LUN;存放目标LUN对应数据的RAID称为目标RAID。可以理解的是,之所以称为目标LUN、目标RAID,只是为便于区分而进行的命
名,并非用于限定。
[0051] 比如,LUN1为待销毁的目标LUN,则表1中所示RAID‑A、RAID‑B、RAID‑C均为LUN1的目标RAID。
[0052] 本申请实施例对目标LUN中每一个逻辑空间执行如下处理:
[0053] 目标LUN向当前待处理逻辑空间对应的物理空间所属的目标RAID下发销毁命令。这里,将当前逻辑空间对应的物理空间所属的目标RAID称为第一目标RAID。可以理解的是,
之所以称为第一目标RAID,只是为便于区分而进行的命名,并非用于限定。
[0054] 比如,当前待处理逻辑空间为LUN1的第1个逻辑空间(起始地址为0、空间大小为1GB),LUN1根据空间映射表(表1),确定该逻辑空间对应物理空间所属RAID为RAID‑A,则向
RAID‑A下发销毁命令。
[0055] 销毁命令中包括目标物理空间的地址范围以及第一长度的销毁数据。这里,目标物理空间为当前待处理逻辑空间对应的物理空间。可以理解的是,之所以称为目标物理空
间、第一长度,只是为便于区分而进行的命名,并非用于限定。
[0056] 仍以LUN1的第1个逻辑空间(起始地址为0、空间大小为1GB)为例,该逻辑空间对应RAID‑A中起始地址为xxxx、空间大小为1GB的物理空间,LUN1向RAID‑A下发的销毁命令中可
包括该物理空间的起始地址(xxxx)、空间大小(1GB)以及第一长度的销毁数据。
[0057] 这里,需要说明的是,该第一长度可小于目标物理空间的大小。比如,第一长度为1个字节。作为示例,该一个字节的销毁数据可以为00000000、11111111或01010101等。
[0058] 可以看出,相较于标准的写命令(携带的数据量与待写入地址段的大小一致),该销毁命令携带的数据量明显减少,因此,可有效降低传输过程中的带宽消耗。
[0059] 步骤102,第一目标RAID依据目标物理空间的地址范围,确定目标物理空间所涉及到的至少一个目标条带。
[0060] RAID中每一个成员盘可按照预设大小划分为多个条块。各成员盘中相同位置的条块构成一个条带。
[0061] 第一目标RAID可根据目标物理空间的地址范围,确定该目标物理空间涉及到的各个条带。这里,将目标物理空间所涉及到的各个条带均称为目标条带。可以理解的是,之所
以称为目标条带,只是为便于区分而进行的命名,并非用于限定。
[0062] 这里,需要说明的是,目标物理空间所涉及到的目标条带包括部分落入目标物理空间的目标条带(比如,目标物理空间的起始地址位于条带的中间,则该条带为该目标物理
空间对应的一个目标条带)和全部落入目标物理空间的目标条带(即,整条带落入目标物理
空间)。
[0063] 第一目标RAID针对每一个目标条带执行如下销毁处理:
[0064] 步骤103,如果该目标条带全部落入目标物理空间,第一目标RAID向该目标条带写入销毁数据,且针对该写入操作不对该目标条带执行RAID冗余处理。
[0065] 如果目标条带整条带落入目标物理空间,说明该目标条带中的所有数据均为目标LUN的数据,需要全部销毁,则向该目标条带整条带写入销毁数据。比如,销毁命令中携带一
个字节的销毁数据,目标条带大小为512KB,则向该目标条带写入512K个销毁数据。
[0066] 由于目标条带整条带写入销毁数据,即,目标条带中已无有效用户数据,因此,针对此次写入操作,可不对该目标条带执行RAID冗余处理,以提升销毁效率。
[0067] 步骤104,如果该目标条带未全部落入目标物理空间,第一目标RAID向该目标条带落入目标物理空间的地址段写入销毁数据,并对该目标条带执行RAID冗余处理。
[0068] 如果目标条带未整条带落入目标物理空间,说明该目标条带仅部分数据(该目标条带落入目标物理空间的地址段中的数据)为目标LUN的数据,则仅向该目标条带落入目标
物理空间的地址段写入销毁数据。比如,目标条带大小为512KB,仅后半条带(256KB)落入目
标物理空间,则向该后256KB地址段写入销毁数据,比如,写入256K个一字节大小的销毁数
据。
[0069] 由于该目标条带中还存在有效的用户数据,因此,此次写入操作,还需要对该目标条带执行RAID冗余处理。
[0070] 至此,完成图1所示流程。
[0071] 通过图1所示流程可以看出,本申请实施例中,LUN直接向RAID下发销毁命令,而无需将销毁数据写入缓存再刷盘到RAID中,可有效节约缓存资源,提升销毁效率。此外,RAID
在执行销毁命令时,若涉及整条带销毁,则针对此次销毁不对该条带执行RAID冗余处理,因
此,可节约RAID计算资源,提升销毁效率。
[0072] 此外,需要补充说明的是,本申请实施例中,可预设销毁命令的最大销毁范围,比如,2GB。当目标物理空间大小大于预设的最大销毁范围时,可将目标物理空间拆分成多个
子目标物理空间,针对每一个子目标物理空间下发销毁命令。
[0073] 比如,表1中第2条映射关系中的物理空间大小为5GB,则可将该5GB物理空间拆分成“起始地址为yyyy,空间大小为2GB”、“起始地址为yyyy+2GB,空间大小为2GB”以及“起始
地址为yyyy+4GB,空间大小为1GB”的3个子物理空间,针对每一个子物理空间下发销毁命
令。即,销毁命令中包括子物理空间的地址范围以及第一长度的销毁数据。后续处理流程相
同,这里,不再赘述。
[0074] 作为一个实施例,为了确保销毁效果,销毁命令中还包括销毁次数。第一目标RAID针对目标条带直接执行销毁次数次销毁处理(步骤103或步骤104)。比如,销毁次数为5,则
第一目标RAID直接对目标条带执行5次销毁处理。
[0075] 由于销毁命令中直接携带销毁次数,因此,相较于下发多个单次销毁命令,可有效节约网络带宽。此外,如果RAID的成员盘为机械盘,直接对同一位置执行多次销毁,可有效
避免基于多个单次销毁命令反复寻址导致销毁效率低的问题。
[0076] 进一步地,该销毁命令中可包括与销毁次数相同数目的第一长度的销毁数据。比如,销毁次数为3,第一长度为一个字节,则作为一个示例,该销毁命令可包括“00000000”、
“11111111”、“01010101”三个销毁数据。
[0077] 第一目标RAID可在每次销毁时,使用不同的销毁数据对目标条带进行销毁处理,比如,第一次写入“00000000”、第二次写入“11111111”、第三次写入“01010101”,以达到更
佳的销毁效果。
[0078] 下面对第一目标RAID向目标条带写入销毁数据的过程进行描述。参见图2,为本申请实施例示出的第一目标RAID向目标条带写入销毁数据的实现流程。
[0079] 如图2所示,该流程可包括以下步骤:
[0080] 步骤201,第一目标RAID确定目标条带中需要写入销毁数据的各目标条块所属目标成员盘。
[0081] 如前所述,目标条带中可能部分数据需要销毁或者全部数据需要销毁。为此,需要确定这些待销毁的数据位于目标条带中的哪些目标条块,以及各目标条块所属目标成员
盘,以便第一目标RAID针对目标成员盘对应目标条块中的待销毁数据进行销毁。
[0082] 这里,目标条块、目标成员盘只是为便于区分而进行的命名,并非用于限定。
[0083] 步骤202,针对每一个目标成员盘,第一目标RAID向该目标成员盘下发写命令。
[0084] 该写命令包括第二长度的销毁数据。其中,第二长度的销毁数据基于第一长度的销毁数据生成。
[0085] 这里,第二长度为目标成员盘对应目标条块中待写入销毁数据的地址段的长度。可以理解的是,之所以称为第二长度,只是为便于区分而进行的命名,并非用于限定。
[0086] 比如,销毁命令携带的销毁数据为“00000000”,该销毁数据长度为1个字节。目标条块中待销毁数据(或者,待写入销毁数据)的长度为256KB,则写命令应携带256KB长度的
销毁数据(256K个“00000000”)。
[0087] 这是由磁盘的写命令格式(携带的数据量等于待写入区域大小)决定的。也就是说,第一目标RAID在执行销毁时,需要将销毁命令(携带少量销毁数据)转换为目标成员盘
所支持的写命令格式向目标成员盘下发写命令,以实现数据销毁。
[0088] 至此,完成图2所示流程。
[0089] 通过图2所示流程实现将销毁数据写入磁盘,完成数据销毁。
[0090] 此外,需要补充说明的是,在执行图1所示销毁流程之前,可将前端IO挂起,不再允许前端服务器访问目标LUN。同时,该目标LUN不再下发新的写盘命令,并等待所有已下发写
盘命令的返回结果,以避免已下发命令处理异常。
[0091] 在接收到返回结果后,可回收该目标LUN对应的所有缓存块。这是由于,目标LUN中的数据已无意义(需要销毁),因此,无需再刷入磁盘,可进一步提升销毁效率。
[0092] 以上对本申请实施例提供的方法进行了描述,下面对本申请实施例提供的存储设备进行描述:
[0093] 该存储设备包括至少一个LUN和至少一个RAID,该至少一个LUN对应的目标LUN的数据存放在至少一个目标RAID,所述目标LUN被划分为多个逻辑空间,所述目标LUN的逻辑
空间与目标RAID中的物理空间一一对应且大小相等;
[0094] 所述目标LUN,用于针对每一个逻辑区间,向第一目标RAID下发销毁命令,所述第一目标RAID为与当前逻辑空间对应的目标物理空间所属目标RAID,所述销毁命令包括所述
目标物理空间的地址范围以及预设的第一长度的销毁数据;
[0095] 所述第一目标RAID,用于依据所述目标物理空间的地址范围,确定所述目标物理空间所涉及到的至少一个目标条带;针对每一个目标条带,如果该目标条带全部落入所述
目标物理空间,向该目标条带写入所述销毁数据,且针对该写入操作不对该目标条带执行
RAID冗余处理;如果该目标条带未全部落入所述目标物理空间,向该目标条带落入所述目
标物理空间的地址段写入所述销毁数据,并对该目标条带执行RAID冗余处理。
[0096] 作为一个实施例,所述第一长度小于所述目标物理空间大小。
[0097] 作为一个实施例,所述销毁命令还包括销毁次数,所述销毁命令包括与所述销毁次数相同数目的第一长度的销毁数据;
[0098] 所述第一目标RAID,具体用于针对每一个目标条带执行所述销毁次数销毁处理,其中,每一次销毁处理使用该次销毁对应的第一长度的销毁数据。
[0099] 作为一个实施例,所述第一目标RAID包括多个成员盘;
[0100] 所述第一目标RAID,具体用于确定所述目标条带中需要写入销毁数据的各目标条块所属目标成员盘;针对每一个目标成员盘,向该目标成员盘下发写命令,所述写命令包括
第二长度的销毁数据,所述第二长度的销毁数据依据所述第一长度的销毁数据生成,所述
第二长度为该目标成员盘对应目标条块中待写入销毁数据的地址段的大小。
[0101] 作为一个实施例,所述存储设备还包括缓存,所述缓存被划分为多个缓存块;
[0102] 所述目标LUN,还用于在向第一目标RAID下发销毁命令之前,不再下发新的写盘命令,并等待所有已下发写盘命令的返回结果;在接收到返回结果后,回收所述目标LUN对应
的所有缓存块。
[0103] 由以上描述可以看出,本申请实施例中,LUN直接向RAID下发销毁命令,而无需将销毁数据写入缓存再刷盘到RAID中,因此,可节约缓存资源,提升销毁效率。此外,RAID在执
行销毁命令时,若涉及整条带销毁,则针对此次销毁不对该条带执行RAID冗余处理,因此,
可节约RAID计算资源,提升销毁效率。
[0104] 以上所述仅为本申请实施例的较佳实施例而已,并不用以限制本申请,凡在本申请实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护
的范围之内。