CN105912425A - 快照映像建立、回滚方法以及装置 - Google Patents

快照映像建立、回滚方法以及装置 Download PDF

Info

Publication number
CN105912425A
CN105912425A CN201610219303.1A CN201610219303A CN105912425A CN 105912425 A CN105912425 A CN 105912425A CN 201610219303 A CN201610219303 A CN 201610219303A CN 105912425 A CN105912425 A CN 105912425A
Authority
CN
China
Prior art keywords
source
mapping
space
lun
snapshot
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
CN201610219303.1A
Other languages
English (en)
Other versions
CN105912425B (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.)
Macrosan Technologies Co Ltd
Original Assignee
Macrosan Technologies 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 Macrosan Technologies Co Ltd filed Critical Macrosan Technologies Co Ltd
Priority to CN201610219303.1A priority Critical patent/CN105912425B/zh
Publication of CN105912425A publication Critical patent/CN105912425A/zh
Application granted granted Critical
Publication of CN105912425B publication Critical patent/CN105912425B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种快照映像建立、回滚方法以及装置,其中该快照映像建立方法包括:当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;若所述映射状态为全部未映射状态,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。进而无需由快照LUN分配相应空间来存储源LUN中全部未映射状态的源空间的数据,避免了快照LUN空间的浪费。

Description

快照映像建立、回滚方法以及装置
技术领域
本申请涉及网络存储技术领域,尤其涉及快照映像建立、回滚方法以及装置。
背景技术
快照是灾备技术中的一种,备份某一时刻的完全可用的数据映像,之后当源LUN第一次收到数据写入请求时,需要先将原数据拷贝到其他地方(例如快照LUN),这就是首写拷贝。若快照映像创建后,源LUN(Logical Unit Number,逻辑单元号)上的数据因为人为或者客观因素而遭到破坏,可以将数据回退到之前完全可用的数据映像,减少数据丢失,从而使得应用可以继续提供服务。
现有技术中,在建立快照映像时,对于全部映射状态的源空间的原数据进行首写拷贝时,则可以将源空间对应的源地址、目的地址的对应关系添加至快照元数据表,再将原数据拷贝至快照LUN上对应的目的地址即可;对于未映射状态的源空间的原数据进行首写拷贝时,通常是将源空间对应的源地址、目的地址的对应关系添加至快照元数据表,并将未映射状态的地址空间的数据当作全0写入快照LUN。
然而,由于现有技术中未映射状态的地址空间并没有数据,却仍当作全0写入快照LUN,相应地,就需要在快照LUN中分配相应大小的空间存储这部分全0数据,在对未映射状态对应的地址空间进行数据写入频繁的情况下,快照LUN需要多次分配空间来存储全0数据。由此,对于快照LUN空间是极大的浪费,并且由于磁盘处理速度远远小于CPU对数据写入的逻辑处理速度,因此还极大地影响了数据写入的处理性能。
发明内容
有鉴于此,本申请提供了快照映像建立、回滚方法以及装置,具体地,本申请是通过如下技术方案实现的:
本申请提供一种快照映像建立方法,应用于源逻辑单元号LUN,该方法包括:
当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;
若所述映射状态为全部未映射状态,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。
本申请还提供一种快照映像回滚方法,应用于快照逻辑单元号LUN,该方法包括:
当对快照LUN上目的空间的原数据进行回滚时,依次查找快照元数据表中的映射标识;
若当前查找到的映射标识为已映射标识,获取与所述已映射标识对应的目的地址、源地址以及映射长度,根据所述目的地址以及映射长度查找对应的原数据;
将所述原数据、所述映射长度以及所述源地址发送至所述源LUN,以使所述源LUN将所述原数据根据所述映射长度写入所述源地址对应的源空间。
本申请还提供一种快照映像建立装置,应用于源逻辑单元号LUN,该装置包括:
检查单元,用于当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;
添加单元,用于在所述映射状态为全部未映射状态时,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。
本申请还提供一种快照映像回滚装置,应用于快照逻辑单元号LUN,该装置包括:
查找单元,用于当对快照LUN上目的空间的原数据进行回滚时,依次查找快照元数据表中的映射标识;
获取单元,用于在当前查找到的映射标识为已映射标识时,获取与所述已映射标识对应的目的地址、源地址以及映射长度,根据所述目的地址以及映射长度查找对应的原数据;
发送单元,用于将所述原数据、所述映射长度以及所述源地址发送至所述源LUN,以使所述源LUN将所述原数据根据所述映射长度写入所述源地址对应的源空间。
由以上描述可以看出,本申请提供的快照映像建立、回滚方法以及装置中的快照LUN无需分配相应空间来存储源LUN中全部未映射状态的源空间的数据,避免了快照LUN空间的浪费,对于未映射状态对应的地址空间进行数据写入频繁的情况下,还大幅提高了整体数据的写入处理性能。并且在将快照映像回滚到之前完全可用的数据映像时,通过回收源LUN的物理空间,使得后端存储有更多空间进行分配。
附图说明
图1是本申请一示例性实施例示出的一种快照映像建立、回滚方法所应用的网络环境示意图;
图2是本申请一示例性实施例示出的一种快照映像建立方法流程图;
图3是本申请一示例性实施例示出的一种快照映像建立方法流程图;
图4是本申请一示例性实施例示出的一种快照映像回滚方法流程图;
图5是本申请一示例性实施例示出的一种快照映像回滚方法流程图;
图6是本申请一示例性实施例示出的一种快照映像建立装置所在源LUN或者一种快照映像回滚装置所在快照LUN的基础硬件结构示意图;
图7是本申请一示例性实施例示出的一种快照映像建立装置的结构示意图;
图8是本申请一示例性实施例示出的一种快照映像回滚装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
参见图1,为本申请快照映像建立方法所应用的网络环境示意图。包括源LUN以及快照LUN,源LUN是一个映像关系中的源资源,快照LUN则是存放原数据以及其快照元数据表的标准LUN,是一个映像关系中的目的资源。
参见图2,为本申请快照映像建立方法的一个实施例流程图,应用于源LUN,该实施例对快照映像建立过程进行描述。
步骤201,当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;
LUN可以包括标准LUN以及精简LUN,快照通常作为一种高级数据保护功能套件作用于标准LUN和精简LUN上,以保护这两种LUN在某个时刻的数据映像,本发明以源LUN以及快照LUN均为精简LUN为例进行描述。
在对源LUN创建了某时刻的快照数据映像后第一次接收到数据写入请求时,则需要进行首写拷贝,本发明中所述的当源LUN首次接收到具有待写入数据的数据写入请求时即为需要进行首写拷贝时。
在需要进行首写拷贝时,可以首先检查为该数据写入请求中的待写入数据分配的源空间的映射状态。该映射状态可以包括全部映射状态、部分映射状态以及全部未映射状态。
步骤202,若所述映射状态为全部未映射状态,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。
其中,该快照元数据表记录了原数据在首写拷贝前后的地址(拷贝前源地址、拷贝后目的地址)及原数据所在源空间的映射长度等信息。
当确定该源空间的映射状态为全部未映射状态时,说明该源空间并未有数据写入,可以将该源空间标记未映射标识,例如该未映射标识为0。同时,获取该源空间全部未映射状态的映射长度,并根据源空间的源地址、映射长度以及未映射标识“0”生成对应关系表项添加至预设的快照元数据表中。
需要说明的是,本示例实施方式中并不将全部未映射状态的源空间的数据当作全0拷贝至快照LUN中。如此一来,快照LUN则不需要分配相应空间来存储全部未映射状态的源空间的数据,避免了快照LUN空间的浪费。
当确定该源空间的映射状态为全部映射状态时,可以将该源空间添加已映射标识,例如该已映射标识为1,并将源空间的原数据发送到快照LUN对应的目的空间。同时,获取该源空间全部映射状态的映射长度,根据源空间的源地址、目的空间的目的地址、映射长度以及已映射标识“1”生成对应关系表项添加预设的至快照元数据表中。
当确定该源空间的映射状态为部分映射状态时,说明该源空间的一部分为已映射状态,一部分为未映射状态。可以分别计算源空间中为已映射状态的第一映射长度,以及为未映射状态的第二映射长度。
对于已映射状态的部分源空间(下称第一空间),将与第一映射长度对应的第一空间添加已映射标识,并将第一空间的原数据复制到快照LUN的目的空间,根据第一空间的源地址、目的空间的目的地址、第一映射长度以及已映射标识生成对应关系表项添加至快照元数据表中;而对于未映射状态的部分源空间(下称第二空间),将与第二映射长度对应的第二空间添加未映射标识,根据第二空间的源地址、第二映射长度以及未映射标识生成对应关系表项添加至快照元数据表中。
在将源空间的原数据拷贝至快照LUN之后,即完成了对源LUN上数据快照映射的建立,可以根据接收的数据写入请求将其中携带的待写入数据写入源LUN上对应的源空间,进而完成源空间的写数据处理。
以下结合图3对本发明进行进一步举例说明。
假设,源LUN的源空间A、B、C的映射状态分别为:源空间A为全部映射状态;源空间B为部分映射状态;源空间C为全部未映射状态。
在对源LUN上的数据建立快照映像后,假设源空间A、B、C分别首次接收到携带有待写入数据DataD、DataE以及DataF数据写入请求,分别对于源空间A、B、C的快照映像建立如下:
对于全部映射状态的源空间A,可以计算出源空间A的映射长度,例如是LEN(A),将源空间A添加已映射标识“1”,并将源空间A的原数据(例如是DataA)拷贝至源LUN对应的目的空间(例如是G),并根据源空间A的源地址A、目的空间的目的地址G、已映射标识“1”以及源空间的映射长度生成对应关系表项添加至快照元数据表中。
对于源空间B,由于其映射状态为部分映射状态,因此源空间B的一部分空间(例如为源空间B’)为已映射状态,另一部分为未映射状态。
对于已映射状态的源空间B’,可以计算出源空间B’的映射长度,例如是LEN(H’),将源空间B’添加已映射标识“1”,并将源空间B’的原数据(例如是DataB’)拷贝至源LUN对应的目的空间(例如是H’),并根据源空间B’的源地址B’、目的空间的目的地址H’、已映射标识“1”以及源空间的映射长度生成对应关系表项添加至快照元数据表中。
对于源空间B上未映射状态的部分空间,例如源地址为B+LEN(H’),可以计算出其映射长度,例如是LEN(B)-LEN(H’),将未映射状态的部分空间B+LEN(H’)添加未映射标识“0”,并根据源地址B+LEN(H’)、未映射标识“0”以及源空间的映射长度LEN(B)-LEN(H’)生成对应关系表项添加至快照元数据表中。
对于全部未映射状态的源空间C,可以计算出源空间C的映射长度,例如是LEN(C),将源空间C添加未映射标识“0”,并根据源地址C、未映射标识“0”以及源空间的映射长度LEN(C)生成对应关系表项添加至快照元数据表中。例如,将源空间A、B、C中已映射状态的原数据拷贝至快照LUN之后的快照元数据表如表1所示:
源地址 目的地址 映射长度 映射标识
A G LEN(A) 1
B H’ LEN(H’) 1
B+LEN(H’) NULL LEN(B)-LEN(H’) 0
C NULL LEN(C) 0
表1
表1示出了快照元数据表,仅是为进一步理解本发明的示例,并不用于限制本发明实施例中快照元数据表的具体内容。
在将源空间A、B、C中已映射状态的原数据拷贝至快照LUN之后,即完成了对源LUN上数据快照映射的建立。可以根据接收的数据写入请求将其中携带的待写入数据DataD、DataE以及DataF写入源LUN上对应的源空间A、B、C,进而完成源空间A、B、C的写数据处理。
由于本示例实施方式中并不将全部未映射状态的源空间的数据当作全0拷贝至快照LUN中,快照LUN则不需要分配相应空间来存储全部未映射状态的源空间的数据,避免了快照LUN空间的浪费。对于未映射状态对应的地址空间进行数据写入频繁的情况下,还大幅提高了整体数据的写入处理性能。
本申请快照映像回滚方法所应用的网络环境示意图仍可以参见图1所示,包括源LUN以及快照LUN,源LUN是一个映像关系中的源资源,快照LUN则是存放原数据以及其快照元数据表的标准LUN,是一个映像关系中的目的资源。
参见图4,为本申请快照映像回滚方法的实施例流程图,应用于快照LUN,该实施例对快照映像回滚过程进行描述。
步骤401,当对快照LUN上目的空间的原数据进行回滚时,依次查找快照元数据表中的映射标识;
在快照映像创建后,若源LUN上的数据因为人为或者客观因素而遭到破坏,本示例实施方式可以通过对快照映像的回滚将源LUN上的数据回退到之前完全可用的数据映像,减少数据丢失,从而使得应用可以继续提供服务。
当对快照LUN上目的空间的原数据进行回滚时,可以首先遍历快照元数据表中的对应关系表项。
步骤402,若当前查找到的映射标识为已映射标识,获取与所述已映射标识对应的目的地址、源地址以及映射长度,根据所述目的地址以及映射长度查找对应的原数据;
在遍历快照元数据表中的对应关系表项时,若当前所查询的对应关系表项中的映射标识为已映射标识(例如“1”),则获取该对应关系表项中与该映射标识“1”对应的源地址、目的地址以及映射长度。
接着,根据该目的地址以及映射长度将原数据从快照LUN对应的目的空间读出。
步骤403,将所述原数据、所述映射长度以及所述源地址发送至所述源LUN,以使所述源LUN将所述原数据根据所述映射长度写入所述源地址对应的源空间。
将从快照LUN对应的目的空间读出的原数据、获取的源地址以及映射长度发送至源LUN,以使源LUN根据该映射长度将该原数据写入源地址对应的源空间中。
之后,快照LUN删除快照元数据表中与该已映射标识对应的表项。
然而,在遍历快照元数据表中的对应关系表项时,若当前所查询的对应关系表项中的映射标识为未映射标识(例如“0”),则获取该对应关系表项中与该映射标识“0”对应的源地址以及映射长度。
接着,根据该源地址以及映射长度向源LUN下发UNMAP(取消映射)命令,由源LUN根据该源地址以及映射长度回收该源地址对应源空间的地址映射,以使源LUN可以对回收的源空间进行重新分配。
UNMAP是一种取消精简LUN虚拟空间与物理空间的地址映射关系的命令,用于回收与虚拟空间地址映射的物理空间。
之后,快照LUN删除快照元数据表中与该未映射标识对应的表项。
在遍历完快照元数据表中的对应关系表项后,则完成了快照映射的回滚。
以下结合图5对本发明进行进一步举例说明。
遍历快照元数据表(表1)中的对应关系表项,依次查找快照元数据表中的映射标识。
假设当前查找到的对应关系表项为表1中的第二条表项(即源空间B的已映射状态的部分空间B’),该表项的映射标识为“1”,即已映射标识。那么,获取与该映射标识“1”对应的表项中的源地址B’、目的地址H’以及映射长度LEN(H’)。
接着,根据目的地址H’以及映射长度LEN(H’)将与其对应的目的空间的原数据DataB’读出,并将该DataB’、源地址B’以及映射长度LEN(H’)发送至源LUN,以使源LUN根据源地址B’以及映射长度LEN(H’)将该DataB’写入与源地址B’对应的源空间B’。
之后,清除快照元数据表(表1)中的与该源地址B’对应的表项。
假设当前查找到的对应关系表项为表1中的第三条表项(即源空间B的未映射状态的部分空间),该表项的映射标识为“0”,即未映射标识。那么,获取与该映射标识“0”对应的表项中的源地址B+LEN(H’)、以及映射长度LEN(B)-LEN(H’)。由于该条映射标识为“0”,说明在建立快照映像时,该源空间并没有原数据写入快照LUN,因此,该目的地址为空(NULL),则不能获得与该映射标识对应的目的地址。
接着,根据该源地址B+LEN(H’)以及映射长度LEN(B)-LEN(H’)向源LUN下发UNMAP命令,由源LUN根据该源地址B+LEN(H’)以及映射长度LEN(B)-LEN(H’)回收该源地址B+LEN(H’)对应源空间的地址映射,以使源LUN可以对回收的源空间B+LEN(H’)进行重新分配。
之后,清除快照元数据表(表1)中的与该源地址B+LEN(H’)对应的表项。
在对快照元数据表中的其他表项对应的快照映像进行回滚处理时可参考上述处理流程,在此不再一一赘述。
由此可见,本示例实施方式在将快照映像回滚到之前完全可用的数据映像的同时,通过回收源LUN的物理空间,保持源LUN的自动精简特性,使得后端存储有更多空间分配给应用。
与前述快照映像建立方法的实施例相对应,本申请还提供了快照映像建立装置的实施例,应用于源逻辑单元号LUN。
参照图6根据一示例性实施例示出的快照映像建立装置框图,本公开实施例提供的快照映像建立装置可以包括检查单元601以及添加单元602,其中:
检查单元601,用于当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;
添加单元602,用于在所述映射状态为全部未映射状态时,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。
进一步地,所述添加单元602还可以用于在检查所述待写入数据待写入的源空间的映射状态后,若所述映射状态为全部映射状态,将所述源空间添加已映射标识,并将所述源空间的原数据发送到所述快照LUN的目的空间;根据所述源空间的源地址、所述目的空间的目的地址以及所述已映射标识生成对应关系表项添加至快照元数据表中。
进一步地,所述添加单元602还可以用于在检查所述待写入数据待写入的源地址空间的映射状态后,若所述映射状态为部分映射状态,分别计算所述源空间中为已映射状态的第一映射长度,以及为未映射状态的第二映射长度;将与所述第一映射长度对应的第一空间添加已映射标识,并将所述第一空间的原数据发送到所述快照LUN的目的空间;根据所述第一空间的源地址、所述目的空间的目的地址、第一映射长度以及所述已映射标识生成对应关系表项添加至快照元数据表中;将与所述第二映射长度对应的第二空间添加未映射标识;根据所述第二空间的源地址、所述第二映射长度以及所述未映射标识生成对应关系表项添加至快照元数据表中。
进一步地,所述装置还可以包括写入单元603,用于根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中之后,将所述数据写入请求中携带的待写入数据写入所述源空间。
上述装置中各个单元的功能和作用的实现过程具体详见上述应用于源LUN的快照映像建立方法中对应步骤的实现过程,在此不再赘述。
与前述快照映像回滚方法的实施例相对应,本申请还提供了快照映像回滚装置的实施例,应用于快照LUN。
参照图7根据一示例性实施例示出的快照映像建立装置框图,本公开实施例提供的快照映像建立装置可以包括查找单元701、获取单元702以及发送单元703,其中:
查找单元701,用于当对快照LUN上目的空间的原数据进行回滚时,依次查找快照元数据表中的映射标识;
获取单元702,用于在当前查找到的映射标识为已映射标识时,获取与所述已映射标识对应的目的地址、源地址以及映射长度,根据所述目的地址以及映射长度查找对应的原数据;
发送单元703,用于将所述原数据、所述映射长度以及所述源地址发送至所述源LUN,以使所述源LUN将所述原数据根据所述映射长度写入所述源地址对应的源空间。
进一步地,所述装置还可以包括清除单元704,用于将所述目的地址对应目的空间的原数据、所述映射长度以及所述源地址发送至所述源LUN后,清除所述快照元数据表中与所述已映射标识对应的信息。
进一步地,所述获取单元702还可以用于在当前查找到的映射标识为未映射标识时,获取与所述未映射标识对应的源地址以及映射长度;
所述清除单元还704可以用于根据所述源地址以及映射长度通知所述源LUN回收与所述源地址对应空间的地址映射,清除所述快照元数据表中与所述未映射标识对应的信息。
上述装置中各个单元的功能和作用的实现过程具体详见上述应用于快照LUN的快照映像回滚方法中对应步骤的实现过程,在此不再赘述。
本申请提供的快照映像建立、回滚方法以及装置中的快照LUN无需分配相应空间来存储源LUN中全部未映射状态的源空间的数据,避免了快照LUN空间的浪费,对于未映射状态对应的地址空间进行数据写入频繁的情况下,还大幅提高了整体数据的写入处理性能。并且在将快照映像回滚到之前完全可用的数据映像时,通过回收源LUN的物理空间,使得后端存储有更多空间进行分配。
本申请快照映像建立装置的实施例可以应用在源LUN上,本申请快照映像回滚装置的实施例可以应用在快照LUN上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器运行存储器中对应的计算机程序指令形成的。从硬件层面而言,如图8所示,为本申请快照映像建立装置/快照映像回滚装置所在设备的一种硬件结构图,除了图8所示的处理器、网络接口、以及存储器之外,实施例中装置所在的设备通常根据该设备的实际功能,还可以包括其他硬件,对此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (14)

1.一种快照映像建立方法,应用于源逻辑单元号LUN,其特征在于,还包括快照LUN,所述方法包括:
当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;
若所述映射状态为全部未映射状态,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。
2.如权利要求1所述的方法,其特征在于,在检查所述待写入数据待写入的源空间的映射状态后,所述方法还包括:
若所述映射状态为全部映射状态,将所述源空间添加已映射标识,并将所述源空间的原数据发送到所述快照LUN的目的空间;
根据所述源空间的源地址、所述目的空间的目的地址以及所述已映射标识生成对应关系表项添加至快照元数据表中。
3.如权利要求1所述的方法,其特征在于,在检查所述待写入数据待写入的源地址空间的映射状态后,所述方法还包括:
若所述映射状态为部分映射状态,分别计算所述源空间中为已映射状态的第一映射长度,以及为未映射状态的第二映射长度;
将与所述第一映射长度对应的第一空间添加已映射标识,并将所述第一空间的原数据发送到所述快照LUN的目的空间;
根据所述第一空间的源地址、所述目的空间的目的地址、第一映射长度以及所述已映射标识生成对应关系表项添加至快照元数据表中;
将与所述第二映射长度对应的第二空间添加未映射标识;
根据所述第二空间的源地址、所述第二映射长度以及所述未映射标识生成对应关系表项添加至快照元数据表中。
4.如权利要求1或3所述的方法,其特征在于,根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中之后,所述方法还包括:
将所述数据写入请求中携带的待写入数据写入所述源空间。
5.一种快照映像回滚方法,应用于快照逻辑单元号LUN,其特征在于,还包括源LUN,所述方法包括:
当对快照LUN上目的空间的原数据进行回滚时,依次查找快照元数据表中的映射标识;
若当前查找到的映射标识为已映射标识,获取与所述已映射标识对应的目的地址、源地址以及映射长度,根据所述目的地址以及映射长度查找对应的原数据;
将所述原数据、所述映射长度以及所述源地址发送至所述源LUN,以使所述源LUN将所述原数据根据所述映射长度写入所述源地址对应的源空间。
6.如权利要求5所述的方法,其特征在于,将所述目的地址对应目的空间的原数据、所述映射长度以及所述源地址发送至所述源LUN后,所述方法还包括:
清除所述快照元数据表中与所述已映射标识对应的信息。
7.如权利要求5所述的方法,其特征在于,所述方法还包括:
若当前查找到的映射标识为未映射标识,获取与所述未映射标识对应的源地址以及映射长度;
根据所述源地址以及映射长度通知所述源LUN回收与所述源地址对应空间的地址映射,清除所述快照元数据表中与所述未映射标识对应的信息。
8.一种快照映像建立装置,应用于源逻辑单元号LUN,其特征在于,还包括快照LUN,所述装置包括:
检查单元,用于当源LUN首次接收到具有待写入数据的数据写入请求时,检查所述待写入数据待写入的源空间的映射状态;
添加单元,用于在所述映射状态为全部未映射状态时,将所述源空间添加未映射标识,并根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中。
9.如权利要求8所述的装置,其特征在于,所述添加单元还用于:
在检查所述待写入数据待写入的源空间的映射状态后,若所述映射状态为全部映射状态,将所述源空间添加已映射标识,并将所述源空间的原数据发送到所述快照LUN的目的空间;
根据所述源空间的源地址、所述目的空间的目的地址以及所述已映射标识生成对应关系表项添加至快照元数据表中。
10.如权利要求8所述的装置,其特征在于,所述添加单元还用于:
在检查所述待写入数据待写入的源地址空间的映射状态后,若所述映射状态为部分映射状态,分别计算所述源空间中为已映射状态的第一映射长度,以及为未映射状态的第二映射长度;
将与所述第一映射长度对应的第一空间添加已映射标识,并将所述第一空间的原数据发送到所述快照LUN的目的空间;
根据所述第一空间的源地址、所述目的空间的目的地址、第一映射长度以及所述已映射标识生成对应关系表项添加至快照元数据表中;
将与所述第二映射长度对应的第二空间添加未映射标识;
根据所述第二空间的源地址、所述第二映射长度以及所述未映射标识生成对应关系表项添加至快照元数据表中。
11.如权利要求8或10所述的装置,其特征在于,所述装置还包括:
写入单元,用于根据所述源空间的源地址以及所述未映射标识生成对应关系表项添加至快照元数据表中之后,将所述数据写入请求中携带的待写入数据写入所述源空间。
12.一种快照映像回滚装置,应用于快照逻辑单元号LUN,其特征在于,还包括源LUN,所述装置包括:
查找单元,用于当对快照LUN上目的空间的原数据进行回滚时,依次查找快照元数据表中的映射标识;
获取单元,用于在当前查找到的映射标识为已映射标识时,获取与所述已映射标识对应的目的地址、源地址以及映射长度,根据所述目的地址以及映射长度查找对应的原数据;
发送单元,用于将所述原数据、所述映射长度以及所述源地址发送至所述源LUN,以使所述源LUN将所述原数据根据所述映射长度写入所述源地址对应的源空间。
13.如权利要求12所述的装置,其特征在于,所述装置还包括:
清除单元,用于将所述目的地址对应目的空间的原数据、所述映射长度以及所述源地址发送至所述源LUN后,清除所述快照元数据表中与所述已映射标识对应的信息。
14.如权利要求12所述的装置,其特征在于,所述获取单元还用于:
若当前查找到的映射标识为未映射标识,获取与所述未映射标识对应的源地址以及映射长度;
所述装置还包括清除单元,用于:
根据所述源地址以及映射长度通知所述源LUN回收与所述源地址对应空间的地址映射,清除所述快照元数据表中与所述未映射标识对应的信息。
CN201610219303.1A 2016-04-08 2016-04-08 快照映像建立、回滚方法以及装置 Active CN105912425B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610219303.1A CN105912425B (zh) 2016-04-08 2016-04-08 快照映像建立、回滚方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610219303.1A CN105912425B (zh) 2016-04-08 2016-04-08 快照映像建立、回滚方法以及装置

Publications (2)

Publication Number Publication Date
CN105912425A true CN105912425A (zh) 2016-08-31
CN105912425B CN105912425B (zh) 2019-04-16

Family

ID=56744995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610219303.1A Active CN105912425B (zh) 2016-04-08 2016-04-08 快照映像建立、回滚方法以及装置

Country Status (1)

Country Link
CN (1) CN105912425B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106909514A (zh) * 2017-03-01 2017-06-30 郑州云海信息技术有限公司 一种快照盘地址的定位方法及装置
CN107423233A (zh) * 2017-07-19 2017-12-01 杭州宏杉科技股份有限公司 一种可写快照实现方法和装置
CN109643276A (zh) * 2016-09-01 2019-04-16 华为技术有限公司 创建数据库子集快照的系统及方法
CN109902034A (zh) * 2019-02-25 2019-06-18 杭州宏杉科技股份有限公司 快照创建方法、装置、电子设备及机器可读存储介质
CN110750221A (zh) * 2019-10-30 2020-02-04 杭州宏杉科技股份有限公司 卷克隆方法、装置、电子设备及机器可读存储介质
CN112052217A (zh) * 2020-09-25 2020-12-08 杭州宏杉科技股份有限公司 快照实现方法及装置
CN112230846A (zh) * 2020-09-18 2021-01-15 苏州浪潮智能科技有限公司 一种快照数据同步的加速方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101661415A (zh) * 2009-09-21 2010-03-03 中兴通讯股份有限公司 一种保存快照数据的方法及存储快照系统
CN101840362A (zh) * 2009-10-28 2010-09-22 创新科存储技术有限公司 一种改进的写时拷贝快照的实现方法和装置
CN102130939A (zh) * 2010-12-10 2011-07-20 创新科存储技术有限公司 一种远程复制方法及装置
CN104407935A (zh) * 2014-11-07 2015-03-11 华为数字技术(成都)有限公司 快照回滚方法和存储设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101661415A (zh) * 2009-09-21 2010-03-03 中兴通讯股份有限公司 一种保存快照数据的方法及存储快照系统
CN101840362A (zh) * 2009-10-28 2010-09-22 创新科存储技术有限公司 一种改进的写时拷贝快照的实现方法和装置
CN102130939A (zh) * 2010-12-10 2011-07-20 创新科存储技术有限公司 一种远程复制方法及装置
CN104407935A (zh) * 2014-11-07 2015-03-11 华为数字技术(成都)有限公司 快照回滚方法和存储设备

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109643276A (zh) * 2016-09-01 2019-04-16 华为技术有限公司 创建数据库子集快照的系统及方法
US11249853B2 (en) 2016-09-01 2022-02-15 Huawei Technologies Co., Ltd. System and method for creating a snapshot of a subset of a database
CN106909514A (zh) * 2017-03-01 2017-06-30 郑州云海信息技术有限公司 一种快照盘地址的定位方法及装置
CN106909514B (zh) * 2017-03-01 2021-04-30 郑州云海信息技术有限公司 一种快照盘地址的定位方法及装置
CN107423233A (zh) * 2017-07-19 2017-12-01 杭州宏杉科技股份有限公司 一种可写快照实现方法和装置
CN109902034A (zh) * 2019-02-25 2019-06-18 杭州宏杉科技股份有限公司 快照创建方法、装置、电子设备及机器可读存储介质
CN110750221A (zh) * 2019-10-30 2020-02-04 杭州宏杉科技股份有限公司 卷克隆方法、装置、电子设备及机器可读存储介质
CN110750221B (zh) * 2019-10-30 2023-05-16 杭州宏杉科技股份有限公司 卷克隆方法、装置、电子设备及机器可读存储介质
CN112230846A (zh) * 2020-09-18 2021-01-15 苏州浪潮智能科技有限公司 一种快照数据同步的加速方法及系统
CN112230846B (zh) * 2020-09-18 2023-01-06 苏州浪潮智能科技有限公司 一种快照数据同步的加速方法及系统
CN112052217A (zh) * 2020-09-25 2020-12-08 杭州宏杉科技股份有限公司 快照实现方法及装置
CN112052217B (zh) * 2020-09-25 2023-09-26 杭州宏杉科技股份有限公司 快照实现方法及装置

Also Published As

Publication number Publication date
CN105912425B (zh) 2019-04-16

Similar Documents

Publication Publication Date Title
CN105912425A (zh) 快照映像建立、回滚方法以及装置
CN105027070B (zh) 卷操作的安全性
CN107122131B (zh) 自动精简配置的方法及装置
CN104461390B (zh) 将数据写入叠瓦状磁记录smr硬盘的方法及装置
CN106021016A (zh) 在快照之间的虚拟时间点访问
US8904123B2 (en) Transferring learning metadata between storage servers having clusters via copy services operations on a shared virtual logical unit that stores the learning metadata
CN107533507A (zh) 根据日志结构管理存储装置中的数据
US8688935B1 (en) Storage system and method for snapshot space management
CN102725753A (zh) 优化数据访问的方法及装置、优化数据存储的方法及装置
US9489210B2 (en) Implementing configuration preserving relocation of SRIOV adapter
CN104063344B (zh) 一种存储数据的方法及网络接口卡
CN106055478A (zh) 检测内存泄漏的方法和装置
CN103677674B (zh) 一种数据处理方法及装置
CN110399333B (zh) 删除快照的方法、设备和计算机程序产品
JP5821744B2 (ja) データ有無判定装置、データ有無判定方法及びデータ有無判定プログラム
CN106227674A (zh) 缓存一致性
CN109325011A (zh) 基于区块链的数据存储、处理、分享方法及系统
US10146466B1 (en) Merging mapping metadata to promote reference counting efficiency
US5276878A (en) Method and system for task memory management in a multi-tasking data processing system
CN107368545A (zh) 一种基于MerkleTree变形算法的去重方法及装置
CN106503260A (zh) 一种提高数据库的有效存储空间的方法和装置
CN106775481A (zh) 数据读取方法及设备
CN103699681B (zh) 数据回滚的处理方法和装置
CN106528876B (zh) 分布式系统的信息处理方法及分布式信息处理系统
US10725877B2 (en) System, method and computer program product for performing a data protection operation

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Hangzhou City, Zhejiang Province, Binjiang District West Street 310053 Qianmo Road No. 482 building eleventh layer to the twelfth layer A

Applicant after: Hangzhou Sequoia Polytron Technologies Inc

Address before: Hangzhou City, Zhejiang Province, Binjiang District West Street 310053 Qianmo Road No. 482 building eleventh layer to the twelfth layer A

Applicant before: Hangzhou MacroSAN Technologies Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant