一种存储空间分配方法、装置与流程

文档序号:25182318发布日期:2021-05-25 14:57阅读:113来源:国知局
一种存储空间分配方法、装置与流程

本申请涉及存储领域,特别涉及一种存储空间分配方法、装置。



背景技术:

快照是存储设备常用的数据保护特性,其目的是避免软灾难导致的数据丢失,软灾难包括误操作、软件bug等。针对lun启用快照后,可按照预设策略自动创建快照,每个快照用于记录lun对应时间平面的数据,比如每隔1个小时创建一个快照,最多保留128个快照。但随着快照数据变多,快照资源使用率越来越高,当快照资源被写满时,将无法再记录lun新的数据变化,即此时快照功能将失效。

为了保障lun的快照功能的可用性,相关技术中采用阈值触发快照资源的自动扩容,但在扩容时如何给快照资源合理分配存储空间,使得快照资源的扩容更加精细,防止由于扩容步长过大导致快照资源占用过多空闲存储空间,或者由于扩容步长过小导致扩容频繁影响设备性能,是一个亟需解决的问题。



技术实现要素:

本申请公开了一种存储空间分配方法、装置及设备,以实现在扩容时给快照资源合理分配存储空间,使得快照资源的扩容更加精细。

根据本申请实施例的第一方面,提供一种存储空间分配方法,该方法应用于存储设备,包括:

当检测到目标lun对应的快照资源申请扩容,并查询到已记录的所述快照资源的上一次扩容时间的值为指定值时,将当前时间与所述上一次扩容时间之间的时间差与第一预设值、第二预设值分别进行比较,所述第二预设值大于第一预设值;

若时间差小于所述第一预设值,则根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,所述目标lun的工作时段被预先划分为业务繁忙时段和业务空闲时段,该预扩容容量大于已记录的所述快照资源的上一次扩容步长;

若时间差大于所述第二预设值,则根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,该预扩容容量小于已记录的所述快照资源的上一次扩容步长;

当所述预扩容容量大于快照资源的最小扩容量,且小于快照资源的最大扩容量时,将所述预扩容容量确定为所述快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

可选的,所述若时间差小于所述第一预设值,则根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量包括:

若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n1倍;

若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n2倍;

若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的n3倍,其中n1>n2>n3>1。

可选的,所述若时间差大于所述第二预设值,则根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量包括:

若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k1倍;

若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k2倍;

若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的k3倍,其中0<k3<k2<k1<1。

可选的,当查询到已记录的所述快照资源的上一次扩容时间的值为空时,该方法进一步包括:

将已记录的所述快照资源的上一次扩容步长确定为待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

可选的,若所述时间差大于第一预设值,并且小于第二预设值,则该方法进一步包括:

将已记录的所述快照资源的上一次扩容步长确定为预扩容容量,当所述预扩容容量大于最小扩容量,且小于最大扩容量时,将该预扩容容量确定为所述快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

可选的,当所述预扩容容量小于快照资源的最小扩容量时,将所述最小扩容量确定为所述快照资源的待扩容容量;

当所述预扩容容量大于快照资源的最大扩容量时,将所述最大扩容量确定为所述快照资源的待扩容容量。

可选的,所述将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源包括:

将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源后,更新所述上一次扩容时间为当前时间、所述上一次扩容步长为待扩容容量。

根据本申请实施例的第二方面,提供一种存储空间分配装置,该装置应用于存储设备,包括:

时间差比较单元,用于当检测到目标lun对应的快照资源申请扩容,并查询到已记录的所述快照资源的上一次扩容时间的值为指定值时,将当前时间与所述上一次扩容时间之间的时间差与第一预设值、第二预设值分别进行比较,所述第二预设值大于第一预设值;

预扩容容量确定单元,用于在时间差小于所述第一预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,所述目标lun的工作时段被预先划分为业务繁忙时段和业务空闲时段,该预扩容容量大于已记录的所述快照资源的上一次扩容步长;在时间差大于所述第二预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,该预扩容容量小于已记录的所述快照资源的上一次扩容步长;

存储空间分配单元,用于当所述预扩容容量大于快照资源的最小扩容量,且小于快照资源的最大扩容量时,将所述预扩容容量确定为所述快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

可选的,所述预扩容容量确定单元在时间差小于所述第一预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量:

若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n1倍;

若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n2倍;

若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的n3倍,其中n1>n2>n3>1。

可选的,所述预扩容容量确定单元在时间差大于所述第二预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量:

若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k1倍;

若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k2倍;

若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的k3倍,其中0<k3<k2<k1<1。

本申请的实施例提供的技术方案可以包括以下有益效果:

由以上技术方案可知,本申请提供的方案可以通过在检测到目标lun对应的快照资源申请扩容,并查询到已记录的所述快照资源的上一次扩容时间的值为指定值时,依据当前时间与所述上一次扩容时间之间的时间差与第一预设值、第二预设值之间的关系、以及当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,并在所述预扩容容量大于最小扩容量,且小于最大扩容量时,将所述预扩容容量确定为快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。最终实现根据快照资源的扩容记录动态调整分配给快照资源的存储空间,使得快照资源的扩容更加精细。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。

图1是本申请实施例提供的实现存储空间分配的方法流程图;

图2是本申请实施例提供的一种确定预扩容容量的方法流程示意图;

图3是本申请实施例提供的另一种确定预扩容容量的方法流程示意图;

图4是本申请实施例提供的实现存储空间分配的装置示意图;

图5是本申请实施例提供的一种电子设备的硬件结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面先对本申请实施例涉及的快照相关技术,进行简单说明。

快照是存储设备常用的数据保护特性,其目的是避免软灾难导致的数据丢失,软灾难包括误操作、软件bug等。针对lun启用快照后,可按照预设策略自动创建快照,每个快照用于记录对应时间平面的数据,比如每隔1个小时创建一个快照,最多保留128个快照。

至于快照资源是用于保存快照数据,比如cofw(copyonfirstwrite)快照是传统的快照技术,其原理是每次创建一个新快照后,lun的某个地址段第一次写入数据前,把该地址段的已有数据拷贝到快照资源中,然后再写入数据到lun中;该地址段第二次写入数据时,因为新快照对应时刻的数据已经备份,因此新数据可直接写入到lun中。随着快照数据变多,快照资源使用率越来越高,当快照资源被写满时,将无法再记录lun新的数据变化,快照将失效。

可以看出,在使用快照资源的过程中,需要的快照资源大小和快照策略、快照最大数目、数据变化量有关系,因为lun中数据变化量并不是一个稳定的值,而是随着lun上的实际业务量变化的,这也会导致lun的快照数据变化量不稳定,因此配置合理的快照资源容量比较困难。当前的常用做法是快照资源支持自动扩容,即由用户指定快照资源扩容阈值、扩容步长。当快照资源空闲容量低于预设扩容阈值时,根据预设扩容步长自动触发扩容。比如,扩容阈值为10gb,扩容步长为10gb,当快照资源空闲容量低于10gb时,将自动触发扩容10gb空间。

但是,以上相关技术中,一个设备中多个lun的快照资源的预设扩容步长往往是一个固定的值,并不能很好地适应多个lun用于不同场景的生产业务,比如预设扩容步长过大时,若存在多个lun启动快照,可能出现部分lun的快照资源扩容成功,占用了较多空闲容量,导致剩余lun快照资源扩容失败,或者预设扩容步长过小时,可能出现lun频繁扩容快照资源,一方面,可能出现来不及扩容的情况,另一方面,频繁扩容会影响设备的管理性能。因此,本申请针对以上问题,提出了一种给lun的快照资源合理分配存储空间的方法,使得扩容更加精细,避免上述情况的发生。

为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。参见图1,图1为本申请实施例提供的存储空间分配的方法流程图。作为一个实施例,图1所示的流程可以应用于存储设备。

需要说明的是,在图1所示方法流程执行前,本申请实施例需要对存储设备进行以下配置:

首先,可选的,为了实现本申请实施例,将本存储设备中各个lun的工作时段可以被预先划分为业务繁忙时段和业务空闲时段,一般以天为单位进行划分,并且多个lun可以设置不同或相同的业务繁忙时段和业务空闲时段。比如,可以设置lun1的业务繁忙时段为08:00-20:00,业务空闲时段为20:00-08:00,lun2的业务繁忙时段为00:00-24:00,即全天均为业务繁忙时段。

以上对lun的工作时段进行划分还可以依据以往业务实际情况,具体实施时可以设置一个阈值,根据以往lun各个时间段内lun上数据读写的频率,将数据读写的频率大于等于阈值的时间段确定为业务繁忙时段,剩余数据读写的频率小于阈值的时间段确定为业务空闲时段。

以及可以设置各个lun的快照资源的最小扩容容量和最大扩容容量,用于限制快照资源的扩容,具体设置可以由开发人员在代码中指定,比如,最小扩容容量为10gb,最大扩容容量为1tb;也可以设置多个选项,由用户根据目标lun上的业务情况确定最小扩容容量和最大扩容容量。

如图1所示,该流程可以包括以下步骤:

步骤101,检测到目标lun对应的快照资源申请扩容,并查询到已记录的所述快照资源的上一次扩容时间的值为指定值。

在具体实现时,本申请实施例中目标lun即本设备中工作时段被划分为业务繁忙时段和业务空闲时段的多个lun中的一个lun,目标lun对应的快照资源用于保存目标lun对应的快照数据。

以及检测到的目标lun对应的快照资源申请扩容,可以是为了防止目标lun对应的快照资源被快照数据写满,采用阈值用于触发的快照资源的自动扩容。比如可以监测快照资源使用率,当快照资源使用率达到阈值时自动触发快照资源申请扩容;也可以监测快照资源剩余容量,当快照资源剩余容量达到阈值时自动触发快照资源申请扩容。具体由阈值触发快照资源扩容的方法可以参见相关技术方案,此处不再赘述。

另外,本步骤101中的指定值即快照资源上一次进行扩容的时间,该指定值不为空,若所述快照资源的上一次扩容时间为空时,可以表明当前快照资源是本设备开机后第一次申请扩容,本设备开机后第一次申请扩容的具体方案将在下文进行详述。

步骤102,比较当前时间与所述上一次扩容时间之间的时间差是否小于第一预设值。

本申请实施例中,预先设置了两个预设值:第一预设值和第二预设值,其中第二预设值大于第一预设值,比如可以设置第一预设值为30分钟、第二预设值为240分钟。

在当前时间与所述上一次扩容时间之间的时间差小于第一预设值时,即目标lun的快照资源在上一次扩容后,短时间内快照资源所扩容的空间被迅速占用,由于快照资源用于保存目标lun的快照数据,所以当时间差小于第一预设值时,可能是因为当前时间目标lun上的业务量较大,导致目标lun的快照数据增多,使得目标lun的快照资源的扩容频率升高。

而在当前时间与所述上一次扩容时间之间的时间差大于第一预设值时,即目标lun的快照资源在上一次扩容后,很长一段时间内目标lun的快照资源都不需要扩容,这种情况可能是由于上一次扩容步长太大,或者快照资源在上一次扩容后,目标lun上需要处理的业务量减少,使得目标lun的快照数据减少,此时需要控制目标lun此次扩容的步长,防止目标lun占用过多存储设备的空闲存储空间,导致存储设备没有其他空闲存储空间分配给其他lun的快照资源。

基于以上设置的第一预设值和第二预设值,在所述时间差小于第一预设值时,本申请实施例将通过执行步骤103以确定预扩容容量;在所述时间差大于第一预设值时,本申请实施例将通过执行步骤104将时间差与第二预设值进行比较以确定预扩容容量,这里的预扩容容量用来确定此次目标lun的快照资源的扩容步长。

步骤103,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,该预扩容容量大于已记录的所述快照资源的上一次扩容步长。

需要说明的是,本步骤103中,由于当前时间与所述上一次扩容时间之间的时间差小于第一预设值,可能是因为当前时间目标lun上的业务量较大,导致目标lun的快照资源的扩容频率升高,所以,为了防止目标lun的快照资源频繁扩容,此次扩容需要给快照资源分配更多存储空间。

而本申请实施例中预扩容容量用来确定此次目标lun的快照资源的扩容步长,因此本步骤103中确定的预扩容容量可以大于已记录的所述快照资源的上一次扩容步长,这里快照资源的上一次扩容步长就是上一次快照资源扩容时被分配的存储空间的大小。

进一步的,本步骤103中是根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,这里的工作时段可以是上述的业务繁忙时段和业务空闲时段,具体如何确定预扩容容量将在下文参照图2流程详述,这里不再赘述。另外,本步骤确定预扩容容量后,将进一步执行步骤106为快照资源扩容。

步骤104,比较当前时间与所述上一次扩容时间之间的时间差是否大于第二预设值。

作为一个实施例,这里的第二预设值大于上述的第一预设值,当所述时间差大于第二预设值时,本申请实施例将通过执行步骤105以确定预扩容容量。

作为另一个实施例,当时间差小于第二预设值时,此时时间差还大于第一预设值,本申请实施例会将设备中已记录的所述快照资源的上一次扩容步长确定为预扩容容量,并在所述预扩容容量大于最小扩容量,且小于最大扩容量时,将该预扩容容量确定为所述快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

步骤105,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,该预扩容容量小于已记录的所述快照资源的上一次扩容步长。

当所述时间差大于第二预设值时,由于这种情况下可能是因为目标lun的快照资源的上一次扩容步长太大,或者快照资源在上一次扩容后,目标lun上需要处理的业务量减少,此时为了防止目标lun占用过多存储设备的空闲存储空间,不需要再给快照资源分配过多存储空间,因此本步骤105中确定的预扩容容量可以小于已记录的所述快照资源的上一次扩容步长。

至于本步骤105中根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,这里的工作时段可以是上述的业务繁忙时段和业务空闲时段,具体如何确定预扩容容量将在下文参照图3流程详述,这里不再赘述。以及在本步骤确定预扩容容量后,也将进一步执行步骤106为快照资源扩容。

步骤106,当所述预扩容容量大于快照资源的最小扩容量,且小于快照资源的最大扩容量时,将所述预扩容容量确定为所述快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

在通过上述步骤103或者步骤104确定预扩容容量后,本申请实施例将通过预扩容容量、快照资源的最小扩容量和最大扩容量进一步确定快照资源的待扩容容量,这里的待扩容容量即本设备此次扩容要分配给快照资源的存储空间的大小。

本步骤106为预扩容容量大于最小扩容量,且小于最大扩容量时,确定待扩容容量的过程。而当预扩容容量小于快照资源的最小扩容量时,本申请实施例可以将所述最小扩容量确定为所述快照资源的待扩容容量;当预扩容容量大于快照资源的最大扩容量时,本申请实施例可以将所述最大扩容量确定为所述快照资源的待扩容容量。

至此,完成图1所示流程。

通过图1所示的流程可以看出,本实施例中可以通过在检测到目标lun对应的快照资源申请扩容,并查询到已记录的所述快照资源的上一次扩容时间的值为指定值时,依据当前时间与所述上一次扩容时间之间的时间差与第一预设值、第二预设值之间的关系、以及当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,并在所述预扩容容量大于最小扩容量,且小于最大扩容量时,将所述预扩容容量确定为快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。最终实现根据快照资源的扩容记录动态调整分配给快照资源的存储空间,使得快照资源的扩容更加精细。

另外,需要说明的是,作为另一个实施例,在上述步骤101中,若检测到目标lun对应的快照资源申请扩容,但查询到已记录的快照资源的上一次扩容时间的值为空时,此时表明当前快照资源是本设备开机后第一次申请扩容,则将已记录的上一次扩容步长确定为待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源,并更新所述上一次扩容时间为当前时间。

在该实施例中,当设备重启或者关机时,由于不确定关机时间的长短,且关机过程中不能运行业务,因此将重置目标lun的快照资源的上一次扩容时间和上一次扩容步长为初始值,这里可以设置上一次扩容时间的初始值为空,上一次扩容步长的初始值可以为一固定值,比如10gb,由开发人员在代码中确定,或者由用户指定,本申请并不限定。

在一些实施例中,参见图2,步骤103中,当前时间与所述上一次扩容时间之间的时间差小于第一预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,可以通过以下步骤实现:

步骤201,通过步骤103确定当前时间与所述上一次扩容时间之间的时间差小于所述第一预设值。

步骤201,若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n1倍。

步骤202,若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n2倍。

步骤203,若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的n3倍,其中n1>n2>n3>1。

需要说明的是,由于当前时间目标lun处于业务繁忙时段时,目标lun处理的业务量一般会比较多,对快照资源的需求也会随着目标lun上业务数据的增多而变大,所以相比当前时间目标lun处于业务空闲时段时,确定的预扩容容量会较大。而在当前时间目标lun处于业务空闲时段时,由于上一次扩容时间目标lun处于业务繁忙时段时,在上一次扩容时间到当前时间的过程中,目标lun上业务数据也会多于上一次扩容时间目标lun处于业务空闲时段,所以,在本申请实施例中,步骤202~步骤204中的n1、n2、n3之间的关系为n1>n2>n3,另外,这里设置n1、n2、n3都必须大于1,以保证通过图3所示的流程得到的预扩容容量大于快照资源的上一次扩容步长,比如在具体实施时,可以将n1设置为3、n2设置为2、n3设置为1.5。这里的n1、n2、n3只是为了举例以便于理解,并非具体限定本申请。

上面介绍了时间差小于第一预设值时如何确定快照资源的预扩容容量,下面将介绍步骤105中,当前时间与所述上一次扩容时间之间的时间差大于第二预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,可以通过以下步骤实现:

步骤301,确定当前时间与所述上一次扩容时间之间的时间差大于所述第二预设值。

步骤302,若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k1倍。

步骤303,若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k2倍。

步骤304,若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的k3倍,其中0<k3<k2<k1<1。

基于与图2中设置n1、n2、n3之间关系的同样的理由,在本申请实施例中,上述步骤302~步骤304中的k1、k2、k3之间的关系为k1>k2>k3。另外,这里设置k1、k2、k3都必须小于1,以保证通过图3所示的流程得到的预扩容容量小于快照资源的上一次扩容步长,比如在具体实施时,可以将k1设置为0.8、k2设置为0.6、k3设置为0.4。这里的k1、k2、k3只是为了举例以便于理解,并非具体限定本申请。

以上举例只是为了便于理解,本申请实施例并不具体限定。

以上对本申请实施例提供的方法进行了描述。下面对本申请实施例提供的装置进行描述:

参见图4,图4为本申请实施例提供的一种存储空间分配的装置示意图,该装置实施例应用存储设备。该装置包括:

时间差比较单元401,用于当检测到目标lun对应的快照资源申请扩容,并查询到已记录的所述快照资源的上一次扩容时间的值为指定值时,将当前时间与所述上一次扩容时间之间的时间差与第一预设值、第二预设值分别进行比较,所述第二预设值大于第一预设值。

预扩容容量确定单元402,用于在时间差小于所述第一预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,所述目标lun的工作时段被预先划分为业务繁忙时段和业务空闲时段,该预扩容容量大于已记录的所述快照资源的上一次扩容步长;在时间差大于所述第二预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量,该预扩容容量小于已记录的所述快照资源的上一次扩容步长。

可选的,作为一个实施例,所述预扩容容量确定单元402在时间差小于所述第一预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量:若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n1倍;若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的n2倍;若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的n3倍;所述n1>n2>n3>1。

可选的,作为另一个实施例,所述预扩容容量确定单元402在时间差大于所述第二预设值时,根据当前时间和/或所述上一次扩容时间目标lun所处的工作时段确定预扩容容量:若当前时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k1倍;若当前时间目标lun处于业务空闲时段且所述上一次扩容时间目标lun处于业务繁忙时段,则确定预扩容容量为所述上一次扩容步长的k2倍;若当前时间和上一次扩容时间目标lun都处于业务空闲时段,则确定预扩容容量为所述上一次扩容步长的k3倍,其中0<k3<k2<k1<1。

存储空间分配单元403,用于当所述预扩容容量大于快照资源的最小扩容量,且小于快照资源的最大扩容量时,将所述预扩容容量确定为所述快照资源的待扩容容量,将本设备中与所述待扩容容量大小一致的空闲存储空间分配给所述快照资源。

至此,完成图4所示装置实施例的结构图。

以上是对本申请实施例提供的实现存储空间分配的装置实施例的描述,

对应地,本申请实施例还提供了一种电子设备的硬件结构图,具体如图5所示,该电子设备可以为上述实施存储空间分配方法的设备。如图5所示,该硬件结构包括:处理器和存储器。

其中,所述存储器,用于存储机器可执行指令;

所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如上所示的存储空间分配所对应的方法实施例。

作为一个实施例,存储器可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,存储器可以是ram(radomaccessmemory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

至此,完成图5所示电子设备的描述。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1