CN117687844A - 定时快照的实现方法、装置、计算机设备及存储介质 - Google Patents

定时快照的实现方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN117687844A
CN117687844A CN202410124591.7A CN202410124591A CN117687844A CN 117687844 A CN117687844 A CN 117687844A CN 202410124591 A CN202410124591 A CN 202410124591A CN 117687844 A CN117687844 A CN 117687844A
Authority
CN
China
Prior art keywords
snapshot
target
sub
bitmap
space
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.)
Granted
Application number
CN202410124591.7A
Other languages
English (en)
Other versions
CN117687844B (zh
Inventor
马杨
马亚辉
蒋米传
王鹏飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202410124591.7A priority Critical patent/CN117687844B/zh
Publication of CN117687844A publication Critical patent/CN117687844A/zh
Application granted granted Critical
Publication of CN117687844B publication Critical patent/CN117687844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及定时快照的实现方法、装置、计算机设备及存储介质,该方法包括:获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及第一预设数量个多个子快照;获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期;根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照;根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,执行从源卷到目标卷空间的拷贝操作。本公开只需要在定时快照之初分配好目标卷空间和位图空间即可,不需要每次定时快照到达定时周期后再去分配,减少了每个定时周期内的任务量。

Description

定时快照的实现方法、装置、计算机设备及存储介质
技术领域
本公开涉及存储灾备领域,具体涉及定时快照的实现方法、装置、计算机设备及存储介质。
背景技术
快照技术是指在某一特定时刻、对某个数据集合的复制。在现有定时快照技术中,大多是通过插件来进行定时策略的管理。每当快照到达定时策略的指定时间,插件就会对存储系统下发创建快照的命令,此时存储系统会首先创建一个和源卷同等大小的目标卷、然后创建源卷到目标卷间的快照映射关系、并分配一块位图空间用于快照管理。如果源卷个数不只一个,则插件在定时策略到达指定时间时需要对每个源卷都执行创建快照的命令,存储系统来执行上述动作。随着卷数量的扩大,定时快照每个定时周期执行的命令就越多,存储系统的执行任务也会越多,任务执行时间也就越长,从而导致快照的生效时间和指定的定时时间差距较大,也耗费了更多的系统资源,无法实现高密度定时快照。
当前业界提供高密度定时快照的功能的技术就是连续数据保护(Continue DataProtection,CDP)技术,但是在CDP技术中,每次源卷有数据变化时,都会生成一张映射表,记录时间戳和新数据的LBA(Logical Block Address,逻辑区块地址),在数据恢复时查找映射表对应时间点的LBA,即可读出该时间点的数据。一张映射表所占用的存储空间相当大,而为了实现高密快照,每个快照的周期间隔内都要生成一张映射表,从而造成了很大的资源浪费。
因此,相关技术在实现高密度定时快照时,存在资源浪费的问题。
发明内容
有鉴于此,本公开提供了一种定时快照的实现方法、装置、计算机设备及存储介质,以解决相关技术在实现高密度定时快照时,存在资源浪费的问题。
第一方面,本公开提供了一种定时快照的实现方法,该方法包括:
获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照;
获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期,其中,快照序号用于表征子快照,快照属性用于指示子快照是否为最新快照,定时周期为存储系统执行快照管理操作时的时间周期;
根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照,其中,目标子快照的快照序号为目标序号,子快照集合内包含多个子快照;
根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,并根据位图数值执行从源卷到目标卷空间的拷贝操作。
在本公开实施例中,通过目标插件设定的定时关联信息,利用创建的目标卷空间、位图空间,对所有快照进行统一管理,并根据每个子快照对应的快照序号、快照属性以及定时器设定的定时周期从子快照集合内选取出目标子快照,然后就可以根据目标子快照确定是否要执行从源卷到目标卷空间的拷贝操作,这样,只需要在定时快照之初分配好目标卷空间和位图空间即可,不需要每次定时快照到达定时周期后再去分配,减少了每个定时周期内的任务量,和传统快照相比,大大缩短了任务执行时间,从而可以支持更短的定时快照周期、更多的卷数量和更准确的快照生效时间,节省资源。
在一种可选的实施方式中,获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照,包括:
获取目标插件设定的定时关联信息,其中,定时关联信息包括源卷的容量大小、源卷待保留的快照个数以及每个快照的管理粒度大小;
根据源卷的容量大小和源卷待保留的快照个数,创建目标卷空间;
根据源卷的容量大小、源卷待保留的快照个数以及管理粒度大小,创建位图空间;
根据源卷待保留的快照个数,创建多个子快照。
在本公开实施例中,根据目标插件设定的一些定时关联信息去创建目标卷空间、位图空间以及子快照,将同个源卷定时快照对应的所有快照进行统一管理,共享同一块位图空间和目标卷空间,因此只需要在定时快照之初分配好一块大的目标卷空间和位图空间即可,不需要每次定时快照到达时间后再去分配,大大缩短了任务执行时间。
在一种可选的实施方式中,获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期,包括:
根据子快照的个数,获取每个子快照对应的快照序号;
获取对每个子快照设置的初始快照属性和定时周期;
根据定时周期更改初始快照属性,得到快照属性。
在本公开实施例中,通过设定子快照的快照序号、快照属性以及定时周期,能够快速定位到最新启动的快照卷,并实现最新启动的快照卷永远保留最新的源卷数据。
在一种可选的实施方式中,根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照,包括:
在当前时间达到定时周期且快照序号不为最后一个子快照的情况下,根据快照属性从子快照集合内选取出目标子快照;
在当前时间达到定时周期且快照序号为最后一个子快照的情况下,将快照序号为目标数值的子快照作为目标子快照。
在本公开实施例中,通过定时周期以及快照序号能够快速地从子快照集合内选取出目标子快照,大大缩短了每个定时周期存储系统的执行任务量。
在一种可选的实施方式中,根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,包括:
根据目标子快照的目标序号和执行目标操作时的源卷中目标数据块的逻辑区块地址,查找目标卷空间中与逻辑区块地址相对应的目标逻辑区块地址;
根据目标逻辑区块地址,确定位图空间中与目标数据块相对应的位图区域地址,得到位图区域地址上位图数值。
在一种可选的实施方式中,根据目标子快照的目标序号和执行目标操作时的源卷中目标数据块的逻辑区块地址,查找目标卷空间中与逻辑区块地址相对应的目标逻辑区块地址,包括:
在源卷接收到目标操作的情况下,获取在源卷中执行目标操作的目标数据块;
获取目标数据块的逻辑区块地址;
根据源卷的容量大小和目标序号以及逻辑区块地址,得到目标卷空间内相对应的目标逻辑区块地址。
在本公开实施例中,在源卷接收到目标操作后,根据目标序号确定源卷中执行目标操作的目标数据块,通过得到目标数据块的逻辑区块地址以及源卷的容量大小和源卷待保留的快照个数得到目标卷空间内相对应的目标逻辑区块地址,从而可以支持更短的定时快照周期、更多的卷数量和更准确的快照生效时间。
在一种可选的实施方式中,获取在源卷中执行目标操作的目标数据块,包括:
根据目标序号确定位于目标卷空间和位图空间中所对应的起始位置和结束位置;
根据起始位置和结束位置确定对应的目标区域;
从目标区域确定在源卷中执行目标操作的目标数据块。
在本公开实施例中,在根据目标序号从源卷中确定执行目标操作的目标数据块时需要先根据目标序号确定出目标区域,进而根据该目标区域确定出目标数据块,缩短任务执行时间。
在一种可选的实施方式中,根据目标逻辑区块地址,确定位图空间中与目标数据块相对应的位图区域地址,包括:
根据目标逻辑区块地址以及管理粒度大小,得到位图空间中与目标数据块相对应的位图区域地址。
在一种可选的实施方式中,根据位图数值执行从源卷到目标卷空间的拷贝操作,包括:
在位图数值为第一预设数值的情况下,执行从源卷到目标卷空间的拷贝操作;或者,方法还包括:
在位图数值为第二预设数值的情况下,跳过定时快照模块,从缓存或硬盘上执行目标操作。
在本公开实施例中,根据位图区域地址上位图数值的具体数值确定后续的执行操作,实现灵活的源卷到目标卷的数据块的写入。
在一种可选的实施方式中,在根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照之前,该方法还包括:
在当前时间未到达定时周期且定时周期处于首次未被执行状态下,将每个子快照的快照属性设置为初始快照属性,跳过定时快照模块,从缓存或硬盘上执行目标操作。
在本公开实施例中,若定时周期对应的定时器未被执行,还处于首次待执行状态下,则直接在缓存或硬盘上执行目标操作,这样节省了每次定时快照到达时间后再去分配目标卷和位图空间的程序。
在一种可选的实施方式中,根据源卷的容量大小和源卷待保留的快照个数,创建目标卷空间,包括:
将源卷的容量大小乘以源卷待保留的快照个数,得到目标卷空间。
在一种可选的实施方式中,根据源卷的容量大小、源卷待保留的快照个数以及管理粒度大小,创建位图空间,包括:
将源卷的容量大小乘以源卷待保留的快照个数,得到目标卷空间;
利用目标卷空间除以管理粒度大小,得到位图空间。
第二方面,本公开提供了一种定时快照的实现装置,该装置包括:
第一获取模块,用于获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照;
第二获取模块,用于获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期,其中,快照序号用于表征子快照,快照属性用于指示子快照是否为最新快照,定时周期为存储系统执行快照管理操作时的时间周期;
选取模块,用于根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照,其中,目标子快照的快照序号为目标序号,子快照集合内包含多个子快照;
确定模块,用于根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,并根据位图数值执行从源卷到目标卷空间的拷贝操作。
第三方面,本公开提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的定时快照的实现方法。
第四方面,本公开提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的定时快照的实现方法。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本公开一些实施例的定时快照的实现方法的流程示意图;
图2是根据本公开一些实施例的定时快照的实现装置的结构框图;
图3是本公开实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
快照技术是指在某一特定时刻、对某个数据集合的复制。定时快照是对已有数据集合按照预先设定的定时策略创建快照的场景。在存储设备中,快照是以卷为单位来进行的,将用于接收主机业务的数据集合称为源卷。快照创建之初会创建一个位图,位图中每个位表示一个数据块,当源卷接收到主机IO时,对应数据块需要进行从源卷到目标卷的写时拷贝(Copy On Write, COW)或写时重定向(Redirect On Write, ROW)操作,数据块如果还没有从源卷拷贝到目标卷,则位图的位值为0,否则为1。
在现有定时快照技术中,大多是通过插件来进行定时策略的管理。每当快照到达定时策略的指定时间,插件就会对存储系统下发创建快照的命令,此时存储系统会首先创建一个和源卷同等大小的目标卷、然后创建源卷到目标卷间的快照映射关系、并分配一块位图空间用于快照管理。如果源卷个数不只一个,则插件在定时策略到达指定时间时需要对每个源卷都执行创建快照的命令,存储系统来执行上述动作。随着卷数量的扩大,定时快照每个定时周期执行的命令就越多,存储系统的执行任务也会越多,任务执行时间也就越长,从而导致快照的生效时间和指定的定时时间差距较大,也耗费了更多的系统资源。存储系统执行任务的资源是有限的,因此在实际应用中,必须限制创建定时快照的源卷数量不能过多、定时周期不能过短,从而保证所有命令都可以在定时快照的一个完整的周期间隔内执行完成。
由上述可知,现有COW或ROW快照技术由于每次实现时需要执行的任务量过多,因此无法实现高密度定时快照,当前相关技术通常通过连续数据保护(Continue DataProtection, CDP)技术来提供高密度定时快照的功能。在CDP技术中,每次源卷有数据变化时,都会生成一张映射表,记录时间戳和新数据的LBA,在数据恢复时查找映射表对应时间点的LBA,即可读出该时间点的数据。一张映射表所占用的存储空间相当大,对于1TB的卷,假设数据块大小为256KB,逻辑地址为64bit,则映射表大小为256MB,而为了实现高密快照,每个快照的周期间隔内都要生成一张映射表,从而造成了很大的资源浪费。
为了解决上述问题,根据本公开实施例,提供了一种定时快照的实现方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种定时快照的实现方法,图1是根据本公开实施例的定时快照的实现方法的流程图,如图1所示,该方法可以应用于存储系统侧,该方法流程包括如下步骤:
步骤S101,获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照。
可选地,本公开实施例中,目标插件会先设定一些定时关联信息,比如源卷的大小,可以记为size_of_source;用户设置的定时周期,可以记为interval;源卷当前待保留的快照个数,可以记为number;快照的管理粒度大小,可以记为grainsize。需要说明的是,上述定时关联信息都是用户可以根据实际情况灵活设置和更改的。
然后利用上述的这些定时关联信息作为创建的一个定时快照的命令,下发给存储系统。存储系统在得到上述定时关联信息后会创建目标卷空间、位图空间以及多个子快照。可以了解的是,子快照是基于快照创建的,它们之间存在层级关系,即子快照是在快照的基础上创建的,所以这里的子快照的数量是由快照决定的。
步骤S102,获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期,其中,快照序号用于表征子快照,快照属性用于指示子快照是否为最新快照,定时周期为存储系统执行快照管理操作时的时间周期。
可选地,存储系统还需要获取到位每个子快照创建的快照序号、快照属性以及定时器设定的定时周期。其中,快照序号用于表征子快照,比如序号1、2等,取值范围为0到number-1;快照属性用于指示子快照是否为最新快照,比如快照属性是true,代表该子快照是最新快照,若快照属性是false,则代表该子快照不是最新快照。需要说明的是,在最初初始化时,快照属性都初始化为false;定时周期为每次定时器被触发的循环时间,代表了存储系统执行快照管理操作时的时间周期,比如每间隔10s作为一个定时周期触发一次快照操作。
步骤S103,根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照,其中,目标子快照的快照序号为目标序号,子快照集合内包含多个子快照。
可选地,由于子快照的数量为多个,所以由多个子快照可以生成一子快照集合,然后根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照即可。其中,每个子快照对应的有自身的快照序号,因此,目标子快照也存在自身的目标序号。
步骤S104,根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,并根据位图数值执行从源卷到目标卷空间的拷贝操作。
可选地,在源卷接收到执行目标操作(比如IO操作)的情况下,根据当前目标子快照的目标序号以及在源卷中执行目标操作的目标数据块的逻辑区块地址以及创建的目标卷空间、位图空间,确定出位图空间中与目标数据块相对应的位图区域地址上位图数值,然后根据位图区域地址上位图数值确定是否执行从源卷到目标卷空间的拷贝操作。这里的拷贝操作就是上述的写时拷贝操作。
在本公开实施例中,通过目标插件设定的定时关联信息,利用创建的目标卷空间、位图空间,对所有快照进行统一管理,并根据每个子快照对应的快照序号、快照属性以及定时器设定的定时周期从子快照集合内选取出目标子快照,然后就可以根据目标子快照确定是否要执行从源卷到目标卷空间的拷贝操作,这样,只需要在定时快照之初分配好目标卷空间和位图空间即可,不需要每次定时快照到达定时周期后再去分配,减少了每个定时周期内的任务量,和传统快照相比,大大缩短了任务执行时间,从而可以支持更短的定时快照周期、更多的卷数量和更准确的快照生效时间,节省资源。
在一些可选的实施方式中,获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照,包括:
获取目标插件设定的定时关联信息,其中,定时关联信息包括源卷的容量大小、源卷待保留的快照个数以及每个快照的管理粒度大小;
根据源卷的容量大小和源卷待保留的快照个数,创建目标卷空间;
根据源卷的容量大小、源卷待保留的快照个数以及管理粒度大小,创建位图空间;
根据源卷待保留的快照个数,创建多个子快照。
可选地,在本公开实施例中,在存储系统接收到目标插件下发的定时关联信息后,根据这些定时关联信息可以创建出目标卷空间、位图空间以及多个子快照。
进一步地,根据定时关联信息中的源卷的容量大小size_of_source和源卷待保留的快照个数number,利用size_of_source×number创建目标卷空间。根据源卷的容量大小size_of_source、源卷待保留的快照个数number以及管理粒度大小grainsize,利用size_of_source ×number/grainsize创建位图空间。根据源卷待保留的快照个数number,也创建number个子快照。
在本公开实施例中,根据目标插件设定的一些定时关联信息去创建目标卷空间、位图空间以及子快照,将同个源卷定时快照对应的所有快照进行统一管理,共享同一块位图空间和目标卷空间,因此只需要在定时快照之初分配好一块大的目标卷空间和位图空间即可,不需要每次定时快照到达时间后再去分配,大大缩短了任务执行时间。
在一些可选的实施方式中,获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期,包括:
根据子快照的个数,获取每个子快照对应的快照序号;
获取对每个子快照设置的初始快照属性和定时周期;
根据定时周期更改初始快照属性,得到快照属性。
可选地,根据子快照的总个数,即number数值,来获取到每个子快照对应的快照序号,其中,快照序号取值范围为0到number-1。可以了解的是,子快照可以按照生成的前后顺序依次排列,进而分配得到对应的快照序号。
由于存储系统会为每个子快照设置初始快照属性,即初始快照属性都为false,同时也会设定执行快照操作的定时周期,所以本公开实施例会根据定时周期去更改初始快照属性,进而得到每个子快照的最新快照属性(即latest属性)。比如,定时器到达首次执行时间(首次执行时间可以设置为0)后,会被触发。此时启动快照序号等于0的子快照,并设置其快照属性为true,其他子快照还保持false快照属性。
在本公开实施例中,通过设定子快照的快照序号、快照属性以及定时周期,能够快速定位到最新启动的快照卷,并实现最新启动的快照卷永远保留最新的源卷数据。
在一些可选的实施方式中,根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照,包括:
在当前时间达到定时周期且快照序号不为最后一个子快照的情况下,根据快照属性从子快照集合内选取出目标子快照;
在当前时间达到定时周期且快照序号为最后一个子快照的情况下,将快照序号为目标数值的子快照作为目标子快照。
可选地,当定时器首次执行完成后,每隔一个定时周期都会被触发一次。此时遍历number个子快照,找到latest属性为true的子快照,记为current_map。获取该current_map对应的快照序号,如果current_map的快照序号等于number-1即最后一个子快照,则将快照序号等于目标数值,即数值0的子快照设置为目标子快照target_map,否则target_map为current_map的下一个子快照。
另外,在确定目标子快照之后需要查询target_map的状态,如果已经启动,则重启target_map,否则启动target_map,使得target_map始终处于一个最新的启动状态。
在本公开实施例中,通过定时周期以及快照序号能够快速地从子快照集合内选取出目标子快照,大大缩短了每个定时周期存储系统的执行任务量。
在一些可选的实施方式中,根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,包括:
根据目标子快照的目标序号和执行目标操作时的源卷中目标数据块的逻辑区块地址,查找目标卷空间中与逻辑区块地址相对应的目标逻辑区块地址;
根据目标逻辑区块地址,确定位图空间中与目标数据块相对应的位图区域地址,得到位图区域地址上位图数值。
可选地,在源卷接收到目标操作(即IO操作)的情况下,获取在源卷中执行目标操作的目标数据块,获取目标数据块的逻辑区块地址,可以用LBA表示,然后根据源卷的容量大小和目标序号以及逻辑区块地址,得到目标卷空间内相对应的目标逻辑区块地址,即目标逻辑区块地址=目标序号×size_of_source+LBA。
根据目标逻辑区块地址和目标子快照的管理粒度大小,利用(目标序号×size_of_source+LBA)/grainsize得到位图空间对应该目标数据块的位图区域地址,查询位图区域地址上的位图数值,根据该位图数值执行源卷到目标卷对应LBA的COW操作。
在本公开实施例中,在源卷接收到目标操作后,根据目标序号确定源卷中执行目标操作的目标数据块,通过得到目标数据块的逻辑区块地址以及源卷的容量大小和源卷待保留的快照个数得到目标卷空间内相对应的目标逻辑区块地址,从而可以支持更短的定时快照周期、更多的卷数量和更准确的快照生效时间。
在一些可选的实施方式中,获取在源卷中执行目标操作的目标数据块,包括:
根据目标序号确定位于目标卷空间和位图空间中所对应的起始位置和结束位置;
根据起始位置和结束位置确定对应的目标区域;
从目标区域确定在源卷中执行目标操作的目标数据块。
可选地,根据目标序号找到目标卷空间和位图空间中对应[目标序号×size_of_source,(目标序号+1)×size_of_source)的区域,称为目标区域,并将该区域内的位图全部置为0。可以理解的是,目标序号×size_of_source为目标序号位于目标卷空间和位图空间中所对应的起始位置,(目标序号+1)×size_of_source为目标序号位于目标卷空间和位图空间中所对应的结束位置。
然后在该目标区域内确定出源卷中执行IO操作时的目标数据块。
在本公开实施例中,在根据目标序号从源卷中确定执行目标操作的目标数据块时需要先根据目标序号确定出目标区域,进而根据该目标区域确定出目标数据块,缩短任务执行时间。
在一些可选的实施方式中,根据位图数值执行从源卷到目标卷空间的拷贝操作,包括:
在位图数值为第一预设数值的情况下,执行从源卷到目标卷空间的拷贝操作;或者,方法还包括:
在位图数值为第二预设数值的情况下,跳过定时快照模块,从缓存或硬盘上执行目标操作。
可选地,查询位图区域地址上对应的位图数值,如果是第一预设数值0,则进行源卷到目标卷对应LBA的COW,然后更新位图区域地址上对应的位图数值为1;如果是第二预设数值1,则直接跳过快照模块,从缓存或盘上读写数据即可。
在本公开实施例中,根据位图区域地址上位图数值的具体数值确定后续的执行操作,实现灵活的源卷到目标卷的数据块的写入。
在一些可选的实施方式中,在根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照之前,该方法还包括:
在当前时间未到达定时周期且定时周期处于首次未被执行状态下,将每个子快照的快照属性设置为初始快照属性,跳过定时快照模块,从缓存或硬盘上执行目标操作。
可选地,若定时快照的定时器还未被首次执行(即当前时间未到达定时周期且定时周期处于首次未被执行状态下),则所有子快照的lastet属性均为false,此时如果源卷接收到读写IO,均直接跳过快照模块,从缓存或盘上读写数据即可。
在本公开实施例中,若定时周期对应的定时器未被执行,还处于首次待执行状态下,则直接在缓存或硬盘上执行目标操作,这样节省了每次定时快照到达时间后再去分配目标卷和位图空间的程序。
在本实施例中还提供了一种定时快照的实现装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种定时快照的实现装置,如图2所示,该装置包括:
第一获取模块201,用于获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及第一预设数量个多个子快照;
第二获取模块202,用于获取每个子快照对应的快照序号、快照属性以及定时器设定的定时周期,其中,快照序号用于表征子快照,快照属性用于指示子快照是否为最新快照,定时周期为存储系统执行快照管理操作时的时间周期;
选取模块203,用于根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照,其中,目标子快照的快照序号为目标序号,子快照集合内包含多个子快照;
确定模块204,用于根据目标子快照的目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及目标卷空间、位图空间,确定目标数据块相对应的位图区域地址上位图数值,并根据位图数值执行从源卷到目标卷空间的拷贝操作。
在一些可选的实施方式中,第一获取模块201包括:
第一获取单元,用于获取目标插件设定的定时关联信息,其中,定时关联信息包括源卷的容量大小、源卷待保留的快照个数以及每个快照的管理粒度大小;
第一创建单元,用于根据源卷的容量大小和源卷待保留的快照个数,创建目标卷空间;
第二创建单元,用于根据源卷的容量大小、源卷待保留的快照个数以及管理粒度大小,创建位图空间;
第三创建单元,用于根据源卷待保留的快照个数,创建多个子快照。
在一些可选的实施方式中,第二获取模块202包括:
第二获取单元,用于根据子快照的个数,获取每个子快照对应的快照序号;
第三获取单元,用于获取对每个子快照设置的初始快照属性和定时周期;
更改单元,用于根据定时周期更改初始快照属性,得到快照属性。
在一些可选的实施方式中,选取模块203包括:
选取单元,用于在当前时间达到定时周期且快照序号不为最后一个子快照的情况下,根据快照属性从子快照集合内选取出目标子快照;
设置单元,用于在当前时间达到定时周期且快照序号为最后一个子快照的情况下,将快照序号为目标数值的子快照作为目标子快照。
在一些可选的实施方式中,确定模块204包括:
查找单元,用于根据目标子快照的目标序号和执行目标操作时的源卷中目标数据块的逻辑区块地址,查找目标卷空间中与逻辑区块地址相对应的目标逻辑区块地址;
确定单元,用于根据目标逻辑区块地址,确定位图空间中与目标数据块相对应的位图区域地址,得到位图区域地址上位图数值。
在一些可选的实施方式中,查找单元包括:
第一获取子模块,用于在源卷接收到目标操作的情况下,获取在源卷中执行目标操作的目标数据块;
第二获取子模块,用于获取目标数据块的逻辑区块地址;
第一得到子模块,用于根据源卷的容量大小和目标序号以及逻辑区块地址,得到目标卷空间内相对应的目标逻辑区块地址。
在一些可选的实施方式中,第一获取子模块包括:
第一确定子单元,用于根据目标序号确定位于目标卷空间和位图空间中所对应的起始位置和结束位置;
第二确定子单元,用于根据起始位置和结束位置确定对应的目标区域;
第三确定子单元,用于从目标区域确定在源卷中执行目标操作的目标数据块。
在一些可选的实施方式中,确定单元包括:
第二得到子模块,用于根据目标逻辑区块地址以及管理粒度大小,得到位图空间中与目标数据块相对应的位图区域地址。
在一些可选的实施方式中,确定模块204包括:
第一操作单元,用于在位图数值为第一预设数值的情况下,执行从源卷到目标卷空间的拷贝操作;或者,方法还包括:
第二操作单元,用于在位图数值为第二预设数值的情况下,跳过定时快照模块,从缓存或硬盘上执行目标操作。
在一些可选的实施方式中,该装置还包括:
设置模块,用于在根据快照序号、快照属性以及定时周期,从子快照集合内选取出目标子快照之前,在当前时间未到达定时周期且定时周期处于首次未被执行状态下,将每个子快照的快照属性设置为初始快照属性,跳过定时快照模块,从缓存或硬盘上执行目标操作。
在一些可选的实施方式中,第一创建单元用于将源卷的容量大小乘以源卷待保留的快照个数,得到目标卷空间。
在一些可选的实施方式中,第二创建单元用于将源卷的容量大小乘以源卷待保留的快照个数,得到目标卷空间;利用目标卷空间除以管理粒度大小,得到位图空间。
本实施例中的定时快照的实现装置是以功能单元的形式来呈现,这里的单元是指ASIC电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本公开实施例还提供一种计算机设备,具有上述图2所示的定时快照的实现装置。
请参阅图3,图3是本公开可选实施例提供的一种计算机设备的结构示意图,如图3所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图3中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。
本公开实施例还提供了一种计算机可读存储介质,上述根据本公开实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本公开的实施例,但是本领域技术人员可以在不脱离本公开的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (15)

1.一种定时快照的实现方法,其特征在于,所述方法包括:
获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照;
获取每个所述子快照对应的快照序号、快照属性以及定时器设定的定时周期,其中,所述快照序号用于表征所述子快照,所述快照属性用于指示所述子快照是否为最新快照,所述定时周期为存储系统执行快照管理操作时的时间周期;
根据所述快照序号、所述快照属性以及所述定时周期,从子快照集合内选取出目标子快照,其中,所述目标子快照的快照序号为目标序号,所述子快照集合内包含多个所述子快照;
根据所述目标子快照的所述目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及所述目标卷空间、所述位图空间,确定所述目标数据块相对应的位图区域地址上位图数值,并根据所述位图数值执行从所述源卷到所述目标卷空间的拷贝操作。
2.根据权利要求1所述的方法,其特征在于,所述获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照,包括:
获取目标插件设定的定时关联信息,其中,所述定时关联信息包括所述源卷的容量大小、所述源卷待保留的快照个数以及每个所述快照的管理粒度大小;
根据所述源卷的容量大小和所述源卷待保留的快照个数,创建所述目标卷空间;
根据所述源卷的容量大小、所述源卷待保留的快照个数以及所述管理粒度大小,创建所述位图空间;
根据所述源卷待保留的快照个数,创建多个所述子快照。
3.根据权利要求1所述的方法,其特征在于,所述获取每个所述子快照对应的快照序号、快照属性以及定时器设定的定时周期,包括:
根据所述子快照的个数,获取每个所述子快照对应的所述快照序号;
获取对每个所述子快照设置的初始快照属性和所述定时周期;
根据所述定时周期更改所述初始快照属性,得到所述快照属性。
4.根据权利要求1所述的方法,其特征在于,所述根据所述快照序号、所述快照属性以及所述定时周期,从子快照集合内选取出目标子快照,包括:
在当前时间达到所述定时周期且所述快照序号不为最后一个子快照的情况下,根据所述快照属性从所述子快照集合内选取出所述目标子快照;
在当前时间达到所述定时周期且所述快照序号为最后一个子快照的情况下,将所述快照序号为目标数值的所述子快照作为所述目标子快照。
5.根据权利要求2所述的方法,其特征在于,所述根据所述目标子快照的所述目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及所述目标卷空间、所述位图空间,确定所述目标数据块相对应的位图区域地址上位图数值,包括:
根据所述目标子快照的所述目标序号和执行目标操作时的源卷中目标数据块的逻辑区块地址,查找所述目标卷空间中与所述逻辑区块地址相对应的目标逻辑区块地址;
根据所述目标逻辑区块地址,确定所述位图空间中与所述目标数据块相对应的位图区域地址,得到所述位图区域地址上位图数值。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标子快照的所述目标序号和执行目标操作时的源卷中目标数据块的逻辑区块地址,查找所述目标卷空间中与所述逻辑区块地址相对应的目标逻辑区块地址,包括:
在所述源卷接收到所述目标操作的情况下,获取在所述源卷中执行所述目标操作的所述目标数据块;
获取所述目标数据块的所述逻辑区块地址;
根据所述源卷的容量大小和所述目标序号以及所述逻辑区块地址,得到所述目标卷空间内相对应的所述目标逻辑区块地址。
7.根据权利要求6所述的方法,其特征在于,所述获取在所述源卷中执行所述目标操作的所述目标数据块,包括:
根据所述目标序号确定位于所述目标卷空间和所述位图空间中所对应的起始位置和结束位置;
根据所述起始位置和所述结束位置确定对应的目标区域;
从所述目标区域确定在所述源卷中执行所述目标操作的所述目标数据块。
8.根据权利要求5所述的方法,其特征在于,所述根据所述目标逻辑区块地址,确定所述位图空间中与所述目标数据块相对应的位图区域地址,包括:
根据所述目标逻辑区块地址以及所述管理粒度大小,得到所述位图空间中与所述目标数据块相对应的位图区域地址。
9.根据权利要求1所述的方法,其特征在于,所述根据所述位图数值执行从源卷到所述目标卷空间的拷贝操作,包括:
在所述位图数值为第一预设数值的情况下,执行从源卷到所述目标卷空间的拷贝操作;或者,所述方法还包括:
在所述位图数值为第二预设数值的情况下,跳过定时快照模块,从缓存或硬盘上执行所述目标操作。
10.根据权利要求1所述的方法,其特征在于,在所述根据所述快照序号、所述快照属性以及所述定时周期,从子快照集合内选取出目标子快照之前,所述方法还包括:
在当前时间未到达所述定时周期且所述定时周期处于首次未被执行状态下,将每个所述子快照的快照属性设置为初始快照属性,跳过定时快照模块,从缓存或硬盘上执行所述目标操作。
11.根据权利要求2所述的方法,其特征在于,所述根据所述源卷的容量大小和所述源卷待保留的快照个数,创建所述目标卷空间,包括:
将所述源卷的容量大小乘以所述源卷待保留的快照个数,得到所述目标卷空间。
12.根据权利要求2所述的方法,其特征在于,所述根据所述源卷的容量大小、所述源卷待保留的快照个数以及所述管理粒度大小,创建所述位图空间,包括:
将所述源卷的容量大小乘以所述源卷待保留的快照个数,得到所述目标卷空间;
利用所述目标卷空间除以所述管理粒度大小,得到所述位图空间。
13.一种定时快照的实现装置,其特征在于,所述装置包括:
第一获取模块,用于获取目标插件设定的定时关联信息,创建目标卷空间、位图空间以及多个子快照;
第二获取模块,用于获取每个所述子快照对应的快照序号、快照属性以及定时器设定的定时周期,其中,所述快照序号用于表征所述子快照,所述快照属性用于指示所述子快照是否为最新快照,所述定时周期为存储系统执行快照管理操作时的时间周期;
选取模块,用于根据所述快照序号、所述快照属性以及所述定时周期,从子快照集合内选取出目标子快照,其中,所述目标子快照的快照序号为目标序号,所述子快照集合内包含多个所述子快照;
确定模块,用于根据所述目标子快照的所述目标序号、执行目标操作时的源卷中目标数据块的逻辑区块地址以及所述目标卷空间、所述位图空间,确定所述目标数据块相对应的位图区域地址上位图数值,并根据所述位图数值执行从所述源卷到所述目标卷空间的拷贝操作。
14.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至12中任一项所述的定时快照的实现方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至12中任一项所述的定时快照的实现方法。
CN202410124591.7A 2024-01-30 2024-01-30 定时快照的实现方法、装置、计算机设备及存储介质 Active CN117687844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410124591.7A CN117687844B (zh) 2024-01-30 2024-01-30 定时快照的实现方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410124591.7A CN117687844B (zh) 2024-01-30 2024-01-30 定时快照的实现方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN117687844A true CN117687844A (zh) 2024-03-12
CN117687844B CN117687844B (zh) 2024-05-03

Family

ID=90128472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410124591.7A Active CN117687844B (zh) 2024-01-30 2024-01-30 定时快照的实现方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN117687844B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9886349B2 (en) * 2015-09-21 2018-02-06 International Business Machines Corporation Point-in-time copy on write for golden image
CN109032507A (zh) * 2018-06-28 2018-12-18 郑州云海信息技术有限公司 一种生成源卷存储快照的方法、系统及相关组件
CN110413565A (zh) * 2019-06-28 2019-11-05 苏州浪潮智能科技有限公司 一种多台存储设备同步快照的方法、设备及介质
CN111240890A (zh) * 2018-11-29 2020-06-05 阿里巴巴集团控股有限公司 数据处理方法、快照处理方法、装置及计算设备
CN114138187A (zh) * 2021-11-12 2022-03-04 苏州浪潮智能科技有限公司 对卷映射拷贝服务插件定时快照卷进行管理的方法和装置
CN114556304A (zh) * 2019-09-27 2022-05-27 亚马逊技术有限公司 网络可访问块级快照
CN114817134A (zh) * 2022-04-30 2022-07-29 苏州浪潮智能科技有限公司 一种快照任务监控方法、装置、设备及介质
CN114942863A (zh) * 2022-04-29 2022-08-26 苏州浪潮智能科技有限公司 一种级联快照处理方法、装置、设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9886349B2 (en) * 2015-09-21 2018-02-06 International Business Machines Corporation Point-in-time copy on write for golden image
CN109032507A (zh) * 2018-06-28 2018-12-18 郑州云海信息技术有限公司 一种生成源卷存储快照的方法、系统及相关组件
CN111240890A (zh) * 2018-11-29 2020-06-05 阿里巴巴集团控股有限公司 数据处理方法、快照处理方法、装置及计算设备
CN110413565A (zh) * 2019-06-28 2019-11-05 苏州浪潮智能科技有限公司 一种多台存储设备同步快照的方法、设备及介质
CN114556304A (zh) * 2019-09-27 2022-05-27 亚马逊技术有限公司 网络可访问块级快照
CN114138187A (zh) * 2021-11-12 2022-03-04 苏州浪潮智能科技有限公司 对卷映射拷贝服务插件定时快照卷进行管理的方法和装置
CN114942863A (zh) * 2022-04-29 2022-08-26 苏州浪潮智能科技有限公司 一种级联快照处理方法、装置、设备及存储介质
WO2023206950A1 (zh) * 2022-04-29 2023-11-02 苏州元脑智能科技有限公司 一种级联快照处理方法、装置、设备及存储介质
CN114817134A (zh) * 2022-04-30 2022-07-29 苏州浪潮智能科技有限公司 一种快照任务监控方法、装置、设备及介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张权;胡晓勤;: "一种基于Linux标准分区的快照方法", 现代计算机(专业版), no. 07, 5 March 2017 (2017-03-05) *
徐渐;舒继武;温冬婵;: "一种新的基于SAN的SNAPSHOT设计与实现", 小型微型计算机系统, no. 06, 21 June 2006 (2006-06-21) *

Also Published As

Publication number Publication date
CN117687844B (zh) 2024-05-03

Similar Documents

Publication Publication Date Title
EP3726364B1 (en) Data write-in method and solid-state drive array
CN106933508B (zh) 应用容器的迁移方法及装置
US8356148B2 (en) Snapshot metadata management in a storage system
US11960749B2 (en) Data migration method, host, and solid state disk
US20170075614A1 (en) Memory system and host apparatus
WO2017050064A1 (zh) 共享内存数据库的内存管理方法及装置
CN103761190A (zh) 数据处理方法及装置
JP2008065445A (ja) 同一データを纏める事で格納領域を節約する計算機システム、ストレージシステム及びそれらの制御方法
CN113568582B (zh) 数据管理方法、装置和存储设备
CN113434470B (zh) 数据分布方法、装置及电子设备
CN115687174A (zh) 一种固态硬盘动态垃圾回收的方法及固态硬盘
CN113641446A (zh) 内存快照创建方法、装置、设备及可读存储介质
CN117687844B (zh) 定时快照的实现方法、装置、计算机设备及存储介质
US9009204B2 (en) Storage system
CN112433669A (zh) 一种分布式存储卷在线迁移的方法、系统、设备及介质
CN113377278A (zh) 固态硬盘、垃圾回收及控制方法、设备、系统及存储介质
CN109739688B (zh) 快照资源空间管理方法、装置、电子设备
CN109508140B (zh) 存储资源管理方法、装置、电子设备及电子设备、系统
CN111930707B (zh) 一种windows云迁移的盘符修正方法及系统
CN111913664B (zh) 一种数据写入方法及装置
CN114328018A (zh) 快照的创建方法、计算设备及存储介质
CN116048377A (zh) 固态硬盘的数据处理方法及相关设备
CN112817749A (zh) 应用于嵌入式系统的存储分区方法、装置及存储介质
CN114020214A (zh) 存储集群的扩容方法、装置、电子设备及可读存储介质
CN112685438B (zh) 数据处理系统、方法、装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant