CN111984460B - 元数据的恢复方法及装置 - Google Patents
元数据的恢复方法及装置 Download PDFInfo
- Publication number
- CN111984460B CN111984460B CN201910425620.2A CN201910425620A CN111984460B CN 111984460 B CN111984460 B CN 111984460B CN 201910425620 A CN201910425620 A CN 201910425620A CN 111984460 B CN111984460 B CN 111984460B
- Authority
- CN
- China
- Prior art keywords
- target data
- metadata
- information
- metadata information
- storage position
- 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
- 238000011084 recovery Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013507 mapping Methods 0.000 claims abstract description 106
- 230000004048 modification Effects 0.000 claims description 57
- 238000012986 modification Methods 0.000 claims description 57
- 238000010200 validation analysis Methods 0.000 claims description 43
- 238000012545 processing Methods 0.000 claims description 15
- 239000000758 substrate Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 16
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种元数据的恢复方法及装置,该方法包括:接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系;并对元数据信息进行解析,获得目标数据与存储位置之间的映射关系;这样在主节点设备不可用时,可以直接根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
Description
技术领域
本申请涉及数据存储技术领域,尤其涉及一种元数据的恢复方法及装置。
背景技术
分布式储存系统中,为了保证数据的可靠性,会将数据采用多副本的方式写入不同的备节点设备,多副本数据的写入通常是由一个被选举出来的主节点设备发起。若该主节点设备发生异常,则无法从该主节点设备读取数据,此时需要从其它备节点设备读取数据。
在备节点设备读取数据时,需要先获取到数据对应的元数据,因此,需要先恢复元数据。现有技术中,通常是通过实时镜像的方式或备节点设备重新加载元数据的方式对元数据进行恢复。采用实时镜像的方式对元数据进行恢复时,主节点设备需要实时将元数据的修改和映射实时镜像到备节点设备,这样会增加额外的开销,并且会产生一定的时延;采用备节点设备重新加载元数据的方式对元数据进行恢复时,由于需要读取的数据量较大,使得元数据恢复的时延较大。
因此,采用现有的恢复方式,使得在元数据恢复的过程中,恢复时延较大。
发明内容
本申请提供一种元数据的恢复方法及装置,在元数据恢复的过程中,降低了恢复时延。
第一方面,本申请实施例提供了一种元数据的恢复方法,该元数据的恢复方法可以包括;
接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系;
对元数据信息进行解析,获得目标数据与存储位置之间的映射关系;
在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息。
由此可见,在本申请实施例中,备节点设备在接收到主节点设备发送的目标数据对应的元数据信息之后,由于元数据信息指示了目标数据与存储位置之间的映射关系,使得备节点设备在接收到该元数据信息之后,就可以直接根据对该元数据信息进行解析,获得目标数据与存储位置之间的映射关系,这样在主节点设备不可用时,备节点设备就可以直接根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
在一种可能的实现方式中,对元数据信息进行解析,获得目标数据与存储位置之间的映射关系,可以包括:
对元数据信息进行解析,获得目标数据、对目标数据的修改时间和存储位置之间的映射关系;
根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,包括:
根据元数据事务生效信息中包括的M个时间点的事务生效信息,在述目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;
将M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为有效的元数据信息;其中,最新时间点为M个时间点中,对目标数据修改成功的时间点中最新的时间点。
在一种可能的实现方式中,元数据信息中包括反向引用信息,对元数据信息进行解析,得到目标数据与存储位置之间的映射关系,可以包括:
对元数据信息进行解析,得到反向引用信息,反向引用信息用于指示目标数据与存储位置之间的映射关系,使得备节点设备在接收到主节点设备发送的元数据信息之后,可以对该元数据信息进行解析,并根据解析得到的反向引用信息构建得到目标数据与存储位置之间的映射关系,这样在主节点设备不可用时,备节点设备就可以直接根据目标数据对应的元数据事务生效信息,及反向引用信息指示的目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
在一种可能的实现方式中,元数据信息存储在数据块CK中,反向引用信息设置在数据块的尾部。此外,元数据信息中还可以包括TP信息,TP信息用于表示元数据的事务信息,反向引用信息指示目标数据与存储位置之间的映射关系。
在一种可能的实现方式中,该元数据的恢复方法还可以包括:
若对目标数据修改成功,则根据对目标数据修改成功的时间点,对目标数据对应的元数据事务生效信息进行更新,从而可以保证元数据事务生效信息的一致性和准确性。
在一种可能的实现方式中,该元数据的恢复方法还可以包括:
对目标数据对应的元数据信息进行写操作处理,以通过备节点设备实现对元数据信息的备份,从而保证数据的可靠性。
第二方面,本申请实施例还提供一种元数据的恢复装置,该元数据的恢复装置可以包括;
接收单元,用于接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系;
解析单元,用于对元数据信息进行解析,获得目标数据与存储位置之间的映射关系;
处理单元,用于在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息。
在一种可能的实现方式中,解析单元,具体用于对元数据信息进行解析,获得目标数据、对目标数据的修改时间和存储位置之间的映射关系;
对应的,处理单元,具体用于根据元数据事务生效信息中包括的M个时间点的事务生效信息,在述目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;并将M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为有效的元数据信息;其中,最新时间点为M个时间点中,对目标数据修改成功的时间点中最新的时间点。
在一种可能的实现方式中,元数据信息中包括反向引用信息,解析单元,具体用于对元数据信息进行解析,得到反向引用信息,反向引用信息用于指示目标数据与存储位置之间的映射关系。
在一种可能的实现方式中,元数据信息存储在数据块CK中,反向引用信息设置在数据块的尾部。
在一种可能的实现方式中,该元数据的恢复装置还可以包括更新单元;
更新单元,用于若对目标数据修改成功,则根据对目标数据修改成功的时间点,对目标数据对应的元数据事务生效信息进行更新。
在一种可能的实现方式中,处理单元,还用于对目标数据对应的元数据信息进行写操作处理。
第三方面,本申请实施例还提供一种元数据的恢复装置,该元数据的恢复装置可以包括收发器和处理器,其中,收发器和处理器通过通信总线连接;
收发器,用于接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系;
处理器,用于对元数据信息进行解析,获得目标数据与存储位置之间的映射关系;并在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息。
在一种可能的实现方式中,处理器,具体用于对元数据信息进行解析,获得目标数据、对目标数据的修改时间和存储位置之间的映射关系;并根据元数据事务生效信息中包括的M个时间点的事务生效信息,在述目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;之后再将M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为有效的元数据信息;其中,最新时间点为M个时间点中,对目标数据修改成功的时间点中最新的时间点。
在一种可能的实现方式中,元数据信息中包括反向引用信息,处理器,具体用于对元数据信息进行解析,得到反向引用信息,反向引用信息用于指示目标数据与存储位置之间的映射关系。
在一种可能的实现方式中,元数据信息存储在数据块CK中,反向引用信息设置在数据块的尾部。
在一种可能的实现方式中,处理器,还用于若对目标数据修改成功,则根据对目标数据修改成功的时间点,对目标数据对应的元数据事务生效信息进行更新。
在一种可能的实现方式中,处理器,还用于对目标数据对应的元数据信息进行写操作处理。
第四方面,本申请实施例还提供一种元数据的恢复装置,该元数据的恢复装置可以包括存储器及处理器,其中,
所述存储器用于存储程序指令;
所述处理器用于读取所述存储器中的程序指令,并根据所述存储器中的程序指令执行上述第一方面任一种可能的实现方式所述的元数据的恢复方法。
第五方面,本申请实施例还提供一种计算机存储介质,包括指令,当所述指令由一个或多个处理器运行时,使得元数据的恢复装置执行上述第一方面任一种可能的实现方式所述的元数据的恢复方法。
第六方面,本申请实施例还提供一种芯片,芯片上存储有计算机程序,在计算机程序被处理器执行时,执行上述第一方面任一种可能的实现方式所述的元数据的恢复方法。
本申请实施例提供的元数据的恢复方法及装置,备节点设备先接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系;由于元数据信息指示了目标数据与存储位置之间的映射关系,使得备节点设备在接收到该元数据信息之后,就可以直接根据对该元数据信息进行解析,获得目标数据与存储位置之间的映射关系,这样在主节点设备不可用时,备节点设备就可以直接根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
附图说明
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的一种元数据的恢复方法的示意图;
图3为本申请实施例提供的一种系统图;
图4为本申请实施例提供的一种元数据信息的写入示意图;
图5为本申请实施例提供的一种元数据信息恢复的示意图;
图6为本申请实施例提供的一种元数据的恢复方法的示意图;
图7为本申请实施例提供的一种元数据的恢复装置的结构示意图;
图8为本申请实施例提供的另一种元数据的恢复装置的结构示意图;
图9为本申请实施例提供的又一种元数据的恢复装置的结构示意图。
具体实施方式
图1为本申请实施例提供的一种应用场景示意图,示例的,请参见图1所示,本申请实施例可应用于数据存储与数据恢复系统中,该数据存储与数据恢复系统可以包括一个主节点设备和多个备节点设备,为了保证数据的可靠性,主节点设备可以通过多个备节点设备对数据进行备份,这样在主节点设备不可用时,可以通过备节点设备对元数据进行恢复。其中,主节点设备不可用,可以理解为主节点设备发生故障导致需要更换新的主节点设备;也可以理解为需要切换至新的主节点设备。需要说明的是,在未来可能出现的系统中,主节点设备和备节点设备的名称可能发生变化,但这并不影响本申请实施例方案的实施。
在元数据恢复的过程中,为了降低元数据的恢复时延,本申请实施例提供了一种元数据的恢复方法,备节点设备先接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系;由于元数据信息指示了目标数据与存储位置之间的映射关系,使得备节点设备在接收到该元数据信息之后,就可以直接根据对该元数据信息进行解析,获得目标数据与存储位置之间的映射关系,这样在主节点设备不可用时,备节点设备就可以直接根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
可以理解的是,在本申请实施例中,当主节点设备通过多个备节点设备对进行备份时,该多个备节点设备中的每一个备节点设备都可以接收到主节点设备发送的目标数据对应的元数据信息,并对该元数据信息进行解析,从而获得目标数据与存储位置之间的映射关系。但是,在得到目标数据与存储位置之间的映射关系之后,进行元数据恢复时,只有即将作为主节点设备的那个备节点设备需要在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,从而得到有效的元数据信息,其它的备节点设备虽无需执行根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息的操作,但可以继续作为备节点设备对元数据信息进行备份,以保证数据的可靠性。
在本申请的实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”一般表示前后关联对象是一种“或”的关系。
下面,将通过详细的实施例对本申请实施例提供的元数据的恢复方法进行详细地说明,示例的,请参见图2所示,图2为本申请实施例提供的一种元数据的恢复方法的示意图,执行该元数据的恢复方法的备节点设备可以为即将作为主节点设备的备节点设备,该元数据的恢复方法可以包括:
S201、备节点设备接收主节点设备发送的目标数据对应的元数据信息。
其中,元数据信息用于指示目标数据与存储位置之间的映射关系,当然,元数据信息也可以包括目标数据的其它信息,在此,本申请实施例只是以元数据信息用于指示目标数据与存储位置之间的映射关系为例进行说明,但并不代表本申请实施例仅局限于此。
当用户对目标数据进行修改操作时,每执行一次修改操作,都会对应向主节点设备发送一个写操作指令,以将元数据信息写入至主节点设备中;主节点设备在接收到该写操作指令后,可以将该目标数据对应的元数据信息发送给多个备节点设备,以通过多个备节点设备对元数据信息进行备份。示例的,在本申请实施例中,主节点设备对元数据信息的写入操作可以通过两种不同的数据块组(Chunk Group,CKG)实现,示例的,请参见图3所示,图3为本申请实施例提供的一种系统图,两种不同的CKG中,一种用于存储元数据信息,记为CKG;一种用于记录元数据事务生效信息,记为Log CKG,其中,CKG是由多个CK组成的,每一个CK均对应分布在不同的备节点设备上。主节点设备在对元数据信息执行写入操作后,为了保证数据的可靠性,也会在多个备节点设备上执行写操作,即将该目标数据对应的元数据信息发送给多个备节点设备,以通过多个备节点设备对元数据信息进行备份。
主节点设备在多个备节点设备上执行写操作之前,示例的,请参见图4所示,图4为本申请实施例提供的一种元数据信息的写入示意图,主节点设备会预先为目标数据分配一个CKG,并对多个备节点设备上执行写操作。示例的,在对多个备节点设备上执行写操作时,主节点设备可以将该目标数据对应的元数据信息写入到CKG中的各CK中,由于每一个CK均对应不同的备节点设备,即主节点设备在将目标数据对应的元数据信息写入到CKG中的各CK中之后,各CK对应的备节点设备就会接收主节点设备发送的目标数据对应的元数据信息。可以理解的是,在多个备节点设备上执行写操作的过程中,是主节点设备负责为目标数据分配CKG,同样的,也是主节点设备负责释放为目标数据分配的CKG。
主节点设备在各备节点设备完成元数据信息的写操作之后,也会通过写入LogCKG完成元数据事务时间点同步,以通过Log CKG记录目标数据对应的元数据事务生效信息。其中,Log CKG采用固定预留的方式。其中,Log CKG采用固定预留的方式可以理解为LogCKG仅保存M个时间点的事务信息即可。在记录事务信息时,只有事务粒度内修改的元数据都写入成功,才会写入元数据的事务信息,相反的,若元数据的CKG写入失败,则Log CKG中不会记录写入失败的事务信息,M为大于或者等于1的整数。需要说明的是,在本申请实施例中,M小于目标数据的修改次数,以M等于2为例,即Log CKG中只保存2个时间点的事务信息即可,在通过Log CKG记录已经生效的元数据的事务号信息时,可以采用日志的方式进行记录,这样可以使得当前的修改不会覆盖已经生效的记录,也就是当前修改的时间点记录是TP M写入的位置不会覆盖之前已经生效的时间点TP N的位置。可以理解的是,Log CKG的CK同样分布到不同的备节点设备上。
需要说明的是,在本申请实施例中,Log CKG采用固定预留的方式,使得在进行元数据恢复时,只需要读取Log CKG中记录的M个时间点的事务信息即可,这样可以减少读取的数据量,从而降低了元数据的恢复时延。
S202、对元数据信息进行解析,获得目标数据与存储位置之间的映射关系。
备节点设备在接收到目标数据对应的元数据信息之后,就可以对该元数据信息进行解析,从而构建得到目标数据与存储位置之间的映射关系。
可选的,元数据信息中可以包括反向引用信息,反向引用信息用于指示目标数据与存储位置之间的映射关系,这样在对元数据信息进行解析之后,就可以得到该反向引用信息,从而根据该反向引用信息确定目标数据与存储位置之间的映射关系。示例的,在本申请实施例中,反向引用信息可以通过反向引用(Reverse reference,RF)信息表示,即RF信息用于指示目标数据与存储位置之间的映射关系。
需要说明的是,在本申请实施例中,在通过元数据信息中的RF信息指示目标数据与存储位置之间的映射关系时,可选的,若元数据信息存储在数据块CK中,则反向引用信息设置在数据块的尾部,从而通过CK尾部的RF信息得到目标数据与存储位置之间的映射关系,即当前的元数据单元对应元数据表的什么位置,从而进行元数据恢复。可以理解的是,反向引用信息也可以设置在数据块的头部或者数据块的其它位置,在本申请实施例中,只是以反向引用信息设置在数据块的尾部为例进行说明,但并不代表本申请实施例仅局限于此。
可以理解的是,在本申请实施例中,元数据信息中还可以包括时间点(TimePoint,TP)信息,TP信息用于表示元数据的事务信息,例如元数据的事务号,元数据的事务号可以对事务进行标识,从而实现对事务的区分。在对元数据信息进行解析之后,可以得到目标数据与存储位置之间的映射关系,同时也可以记录相应的元数据的TP信息。类似的,该TP信息也可以设置在数据块的尾部。
S203、在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息。
通过上述S202的操作,对于各备节点设备而言,通过对元数据信息进行解析,已经构建得到了目标数据与存储位置之间的映射关系,但是在进行元数据恢复时,由于元数据的修改需要保证事务的一致性,因此,单纯根据目标数据与存储位置之间的映射关系不能实现对元数据的恢复,还需要扫描Log CKG,从Log CKG中读取其记录的元数据事务生效信息,这样在主节点设备不可用时,即将作为主节点设备的备节点设备就可以根据预先构建的目标数据与存储位置之间的映射关系,以及Log CKG中记录的元数据事务生效信息,对元数据进行恢复,从而得到有效的元数据信息。
在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息的一种可能的实现方式可以如下所示:
示例的,请参见图5所示,图5为本申请实施例提供的一种元数据信息恢复的示意图,由于元数据信息中还可以包括TP信息,因此,对元数据信息进行解析之后,可以获得目标数据、对目标数据的修改时间和存储位置之间的映射关系;再根据元数据事务生效信息中包括的M个时间点的事务生效信息,在预先得到的目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找M个时间点对应的目标数据以及存储位置;之后,再将M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为有效的元数据信息;其中,最新时间点为M个时间点中,对目标数据修改成功的时间点中最新的时间点。M为大于或者等于1的整数。
由此可见,在本申请实施例中,备节点设备在接收到主节点设备发送的目标数据对应的元数据信息之后,由于元数据信息指示了目标数据与存储位置之间的映射关系,使得备节点设备在接收到该元数据信息之后,就可以直接根据对该元数据信息进行解析,获得目标数据与存储位置之间的映射关系,这样在主节点设备不可用时,备节点设备就可以直接根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
基于上述图2所示的实施例,可选的,若后续再对目标数据进行修改操作,且对该目标数据修改成功,则可以根据对目标数据修改成功的时间点,对目标数据对应的元数据事务生效信息进行更新,从而可以保证元数据事务生效信息的一致性和准确性。
为了更清楚地说明本申请实施例提供的元数据的恢复方法的技术方案,下面,将通过一个详细的例子对本申请实施例提供的元数据的恢复方法进行说明。示例的,请参见图6所示,图6为本申请实施例提供的一种元数据的恢复方法的示意图,以目标数据为五张照片为例,用户对该五张照片每执行一次修改操作,均会向主节点设备发送一次写操作指令,例如,若用户在8点时对五张照片进行了修改,将五张照片存储在C位置,则用户在修改后会向备节点设备发送第一写操作指令,以将第一写操作指令对应的元数据信息写入至主节点设备中,主节点设备在接收到该第一写操作指令后,可以将该目标数据对应的元数据信息发送给备节点设备1、备节点设备2及备节点设备3,备节点设备1、备节点设备2及备节点设备3在接收到元数据信息后,对元数据信息进行解析,可以获得五张照片、对五张照片的修改时间8点和存储位置C位置之间的映射关系;若用户在10点时对五张照片进行了修改,将五张照片存储在D位置,则用户在修改后会向备节点设备发送第二写操作指令,以将第二写操作指令对应的元数据信息写入至主节点设备中,主节点设备在接收到该第二写操作指令后,可以将该目标数据对应的元数据信息发送给备节点设备1、备节点设备2及备节点设备3,备节点设备1、备节点设备2及备节点设备3在接收到元数据信息后,对元数据信息进行解析,可以获得五张照片、对五张照片的修改时间10点和存储位置D位置之间的映射关系;若用户在12点时对五张照片进行了修改,将五张照片存储在E位置,则用户在修改后会向备节点设备发送第三写操作指令,以将第三写操作指令对应的元数据信息写入至主节点设备中,主节点设备在接收到该第三写操作指令后,可以将该目标数据对应的元数据信息发送给备节点设备1、备节点设备2及备节点设备3,备节点设备1、备节点设备2及备节点设备3在接收到元数据信息后,对元数据信息进行解析,可以获得五张照片、对五张照片的修改时间12点和存储位置E位置之间的映射关系,此时,对于备节点设备1、备节点设备2及备节点设备3而言,其均以构建得到了五张照片、对五张照片的修改时间8点和存储位置C位置之间的映射关系,对五张照片的修改时间10点和存储位置D位置之间的映射关系,及对五张照片的修改时间12点和存储位置E位置之间的映射关系;需要说明的是,在这三次修改操作中,只有10点和12点对五张照片修改成功,则对应的Log CKG中存储的时间点包括10点和12点,而不是每一次的修改时间点均包括,这样在主节点设备不可用时,即将作为主节点设备的备节点设备,例如备节点设备1即将作为主节点设备,则只有备节点设备1根据元数据事务生效信息中包括的10点和12点这两个时间点的事务生效信息,在上述构建的目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找10点和12点这两个时间点对应的五张照片以及存储位置,查找得到10点五张照片的存储位置为D位置,12点五张照片的存储位置为E位置,则将10点和12点这两个时间点对应的五张照片以及存储位置中,最新时间点12点对应的五张照片的存储位置E位置确定为有效元数据信息,从而实现了对元数据信息的恢复,且在恢复过程中,由于元数据信息指示了目标数据与存储位置之间的映射关系,使得备节点设备1在接收到该元数据信息之后,就可以直接根据对该元数据信息进行解析,获得目标数据与存储位置之间的映射关系,这样在主节点设备不可用时,备节点设备1就可以直接根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息,而不是在主节点设备不可用时才去恢复目标数据与存储位置之间的映射关系,从而降低了元数据的恢复时延。
图7为本申请实施例提供的一种元数据的恢复装置70的结构示意图,示例的,请参见图7所示,该元数据的恢复装置70可以包括:
接收单元701,用于接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系。
解析单元702,用于对元数据信息进行解析,获得目标数据与存储位置之间的映射关系。
处理单元703,用于在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息。
可选的,解析单元702,具体用于对元数据信息进行解析,获得目标数据、对目标数据的修改时间和存储位置之间的映射关系。
对应的,处理单元703,具体用于根据元数据事务生效信息中包括的M个时间点的事务生效信息,在述目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;并将M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为有效的元数据信息;其中,最新时间点为M个时间点中,对目标数据修改成功的时间点中最新的时间点。
可选的,元数据信息中包括反向引用信息,解析单元702,具体用于对元数据信息进行解析,得到反向引用信息,反向引用信息用于指示目标数据与存储位置之间的映射关系。
可选的,元数据信息存储在数据块CK中,反向引用信息设置在数据块的尾部。
可选的,该元数据的恢复装置70还包括更新单元704。
更新单元704,用于若对目标数据修改成功,则根据对目标数据修改成功的时间点,对目标数据对应的元数据事务生效信息进行更新。
可选的,处理单元703,还用于对目标数据对应的元数据信息进行写操作处理。
本申请实施例所示的元数据的恢复装置70,可以执行上述图2-图6所示的实施例中的元数据的恢复方法的技术方案,其实现原理以及有益效果与元数据的恢复方法的实现原理及有益效果类似,此处不再进行赘述。
图8为本申请实施例提供的另一种元数据的恢复装置80的结构示意图,示例的,请参见图8所示,该元数据的恢复装置80可以包括收发器801和处理器802,其中,收发器801和处理器802通过通信总线连接。
收发器801,用于接收主节点设备发送的目标数据对应的元数据信息;其中,元数据信息用于指示目标数据与存储位置之间的映射关系。
处理器802,用于对元数据信息进行解析,获得目标数据与存储位置之间的映射关系;并在主节点设备不可用时,根据目标数据对应的元数据事务生效信息,及目标数据与存储位置之间的映射关系,得到有效的元数据信息。
可选的,处理器802,具体用于对元数据信息进行解析,获得目标数据、对目标数据的修改时间和存储位置之间的映射关系;并根据元数据事务生效信息中包括的M个时间点的事务生效信息,在述目标数据、对目标数据的修改时间和存储位置之间的映射关系中,分别查找M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;之后再将M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为有效的元数据信息;其中,最新时间点为M个时间点中,对目标数据修改成功的时间点中最新的时间点。
可选的,元数据信息中包括反向引用信息,处理器802,具体用于对元数据信息进行解析,得到反向引用信息,反向引用信息用于指示目标数据与存储位置之间的映射关系。
可选的,元数据信息存储在数据块CK中,反向引用信息设置在数据块的尾部。
可选的,处理器802,还用于若对目标数据修改成功,则根据对目标数据修改成功的时间点,对目标数据对应的元数据事务生效信息进行更新。
可选的,处理器802,还用于对目标数据对应的元数据信息进行写操作处理。
本申请实施例所示的元数据的恢复装置80,可以执行上述图2-图6所示的实施例中的元数据的恢复方法的技术方案,其实现原理以及有益效果与元数据的恢复方法的实现原理及有益效果类似,此处不再进行赘述。
图9为本申请实施例提供的又一种元数据的恢复装置90的结构示意图,示例的,请参见图9所示,该元数据的恢复装置90可以包括存储器902及处理器901,其中,
所述存储器902用于存储程序指令;
所述处理器901用于读取所述存储器902中的程序指令,并根据所述存储器902中的程序指令执行上述任一实施例所述的元数据的恢复方法,其实现原理以及有益效果与元数据的恢复方法的实现原理及有益效果类似,此处不再进行赘述。
本申请实施例还提供一种计算机存储介质,包括指令,当所述指令由一个或多个处理器运行时,使得元数据的恢复装置执行上述任一实施例所述的元数据的恢复方法,其实现原理以及有益效果与元数据的恢复方法的实现原理及有益效果类似,此处不再进行赘述。
本申请实施例还提供一种芯片,芯片上存储有计算机程序,在计算机程序被处理器执行时,执行上述任一实施例所述的元数据的恢复方法,其实现原理以及有益效果与元数据的恢复方法的实现原理及有益效果类似,此处不再进行赘述。
上述各个实施例中处理器可以是通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的指令,结合其硬件完成上述方法的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
Claims (12)
1.一种元数据的恢复方法,其特征在于,包括;
接收主节点设备发送的目标数据对应的元数据信息;其中,所述元数据信息用于指示所述目标数据与存储位置之间的映射关系;
对所述元数据信息进行解析,获得所述目标数据与存储位置之间的映射关系;
在所述主节点设备不可用时,根据所述目标数据对应的元数据事务生效信息,及所述目标数据与存储位置之间的映射关系,得到有效的元数据信息;
所述对所述元数据信息进行解析,获得所述目标数据与存储位置之间的映射关系,包括:
对所述元数据信息进行解析,获得所述目标数据、对所述目标数据的修改时间和存储位置之间的映射关系;
所述根据所述目标数据对应的元数据事务生效信息,及所述目标数据与存储位置之间的映射关系,得到有效的元数据信息,包括:
根据所述元数据事务生效信息中包括的M个时间点的事务生效信息,在所述述目标数据、对所述目标数据的修改时间和存储位置之间的映射关系中,分别查找所述M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;
将所述M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为所述有效的元数据信息;其中,所述最新时间点为M个时间点中,对所述目标数据修改成功的时间点中最新的时间点。
2.根据权利要求1所述的方法,其特征在于,所述元数据信息中包括反向引用信息,所述对所述元数据信息进行解析,得到所述目标数据与存储位置之间的映射关系,包括:
对所述元数据信息进行解析,得到所述反向引用信息,所述反向引用信息用于指示所述目标数据与存储位置之间的映射关系。
3.根据权利要求2所述的方法,其特征在于,
所述元数据信息存储在数据块CK中,所述反向引用信息设置在所述数据块的尾部。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
若对所述目标数据修改成功,则根据对所述目标数据修改成功的时间点,对所述目标数据对应的元数据事务生效信息进行更新。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
对所述目标数据对应的元数据信息进行写操作处理。
6.一种元数据的恢复装置,其特征在于,包括;
接收单元,用于接收主节点设备发送的目标数据对应的元数据信息;其中,所述元数据信息用于指示所述目标数据与存储位置之间的映射关系;
解析单元,用于对所述元数据信息进行解析,获得所述目标数据与存储位置之间的映射关系;
处理单元,用于在所述主节点设备不可用时,根据所述目标数据对应的元数据事务生效信息,及所述目标数据与存储位置之间的映射关系,得到有效的元数据信息;
所述解析单元,具体用于对所述元数据信息进行解析,获得所述目标数据、对所述目标数据的修改时间和存储位置之间的映射关系;
对应的,所述处理单元,具体用于根据所述元数据事务生效信息中包括的M个时间点的事务生效信息,在所述述目标数据、对所述目标数据的修改时间和存储位置之间的映射关系中,分别查找所述M个时间点对应的目标数据以及存储位置;M为大于或者等于1的整数;并将所述M个时间点对应的目标数据以及存储位置中,最新时间点对应的目标数据以及存储位置确定为所述有效的元数据信息;其中,所述最新时间点为M个时间点中,对所述目标数据修改成功的时间点中最新的时间点。
7.根据权利要求6所述的装置,其特征在于,所述元数据信息中包括反向引用信息,所述解析单元,具体用于对所述元数据信息进行解析,得到所述反向引用信息,所述反向引用信息用于指示所述目标数据与存储位置之间的映射关系。
8.根据权利要求7所述的装置,其特征在于,
所述元数据信息存储在数据块CK中,所述反向引用信息设置在所述数据块的尾部。
9.根据权利要求6-8任一项所述的装置,其特征在于,所述装置还包括更新单元;
所述更新单元,用于若对所述目标数据修改成功,则根据对所述目标数据修改成功的时间点,对所述目标数据对应的元数据事务生效信息进行更新。
10.根据权利要求6-8任一项所述的装置,其特征在于,
所述处理单元,还用于对所述目标数据对应的元数据信息进行写操作处理。
11.一种元数据的恢复装置,其特征在于,包括存储器及处理器,其中,
所述存储器用于存储程序指令;
所述处理器用于读取所述存储器中的程序指令,并根据所述存储器中的程序指令执行上述权利要求1-5中任一项所述的元数据的恢复方法。
12.一种计算机存储介质,包括指令,其特征在于,
当所述指令由一个或多个处理器运行时,使得元数据的恢复装置执行上述权利要求1-5中任一项所述的元数据的恢复方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910425620.2A CN111984460B (zh) | 2019-05-21 | 2019-05-21 | 元数据的恢复方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910425620.2A CN111984460B (zh) | 2019-05-21 | 2019-05-21 | 元数据的恢复方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111984460A CN111984460A (zh) | 2020-11-24 |
CN111984460B true CN111984460B (zh) | 2023-11-24 |
Family
ID=73437098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910425620.2A Active CN111984460B (zh) | 2019-05-21 | 2019-05-21 | 元数据的恢复方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111984460B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8504529B1 (en) * | 2009-06-19 | 2013-08-06 | Netapp, Inc. | System and method for restoring data to a storage device based on a backup image |
CN104202387A (zh) * | 2014-08-27 | 2014-12-10 | 华为技术有限公司 | 一种元数据恢复方法及相关装置 |
US9021303B1 (en) * | 2012-09-24 | 2015-04-28 | Emc Corporation | Multi-threaded in-memory processing of a transaction log for concurrent access to data during log replay |
US9430503B1 (en) * | 2013-06-28 | 2016-08-30 | Emc Corporation | Coalescing transactional same-block writes for virtual block maps |
CN106155921A (zh) * | 2015-04-03 | 2016-11-23 | 联想(北京)有限公司 | 一种信息处理方法和电子设备 |
CN106354840A (zh) * | 2016-08-31 | 2017-01-25 | 北京小米移动软件有限公司 | 文件处理方法、装置及分布式文件系统 |
CN107153671A (zh) * | 2016-03-02 | 2017-09-12 | 阿里巴巴集团控股有限公司 | 一种在分布式系统中实现多文件副本读写的方法与设备 |
US9921918B1 (en) * | 2013-08-30 | 2018-03-20 | Ca, Inc. | Cloud-based data backup and management |
CN109165117A (zh) * | 2018-06-29 | 2019-01-08 | 华为技术有限公司 | 数据处理的方法和系统 |
CN109522154A (zh) * | 2015-09-10 | 2019-03-26 | 华为技术有限公司 | 数据恢复方法及相关设备与系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8880480B2 (en) * | 2007-01-03 | 2014-11-04 | Oracle International Corporation | Method and apparatus for data rollback |
US8924360B1 (en) * | 2010-09-30 | 2014-12-30 | Axcient, Inc. | Systems and methods for restoring a file |
CN107220142B (zh) * | 2016-03-22 | 2020-10-09 | 阿里巴巴集团控股有限公司 | 执行数据恢复操作的方法及装置 |
-
2019
- 2019-05-21 CN CN201910425620.2A patent/CN111984460B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8504529B1 (en) * | 2009-06-19 | 2013-08-06 | Netapp, Inc. | System and method for restoring data to a storage device based on a backup image |
US9021303B1 (en) * | 2012-09-24 | 2015-04-28 | Emc Corporation | Multi-threaded in-memory processing of a transaction log for concurrent access to data during log replay |
US9430503B1 (en) * | 2013-06-28 | 2016-08-30 | Emc Corporation | Coalescing transactional same-block writes for virtual block maps |
US9921918B1 (en) * | 2013-08-30 | 2018-03-20 | Ca, Inc. | Cloud-based data backup and management |
CN104202387A (zh) * | 2014-08-27 | 2014-12-10 | 华为技术有限公司 | 一种元数据恢复方法及相关装置 |
CN106155921A (zh) * | 2015-04-03 | 2016-11-23 | 联想(北京)有限公司 | 一种信息处理方法和电子设备 |
CN109522154A (zh) * | 2015-09-10 | 2019-03-26 | 华为技术有限公司 | 数据恢复方法及相关设备与系统 |
CN107153671A (zh) * | 2016-03-02 | 2017-09-12 | 阿里巴巴集团控股有限公司 | 一种在分布式系统中实现多文件副本读写的方法与设备 |
CN106354840A (zh) * | 2016-08-31 | 2017-01-25 | 北京小米移动软件有限公司 | 文件处理方法、装置及分布式文件系统 |
CN109165117A (zh) * | 2018-06-29 | 2019-01-08 | 华为技术有限公司 | 数据处理的方法和系统 |
Non-Patent Citations (1)
Title |
---|
主从式云计算平台高可用性研究;邓鹏;《中国优秀硕士学位论文全文数据库 信息科技辑》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111984460A (zh) | 2020-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12117911B2 (en) | Remote data replication method and system | |
US9367598B2 (en) | Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation | |
KR101602312B1 (ko) | 데이터 송신 방법, 데이터 수신 방법, 및 저장 장치 | |
US9229970B2 (en) | Methods to minimize communication in a cluster database system | |
CN109542682B (zh) | 一种数据备份方法、装置、设备和存储介质 | |
CN111125040B (zh) | 管理重做日志的方法、装置及存储介质 | |
CN108319617B (zh) | 确定数据库主从差异的方法、装置及切换控制方法、装置 | |
CN107329859B (zh) | 一种数据保护方法及存储设备 | |
US20190317872A1 (en) | Database cluster architecture based on dual port solid state disk | |
US9436554B2 (en) | Information processing apparatus and data repairing method | |
CN112015591A (zh) | 一种日志管理方法、服务器和数据库系统 | |
CN110121712B (zh) | 一种日志管理方法、服务器和数据库系统 | |
WO2021082925A1 (zh) | 一种交易处理的方法及装置 | |
CN112988880B (zh) | 数据同步方法、装置、电子设备及计算机存储介质 | |
CN109165117B (zh) | 数据处理的方法和系统 | |
CN111984460B (zh) | 元数据的恢复方法及装置 | |
US11803317B2 (en) | Interrupted replicated write recognition | |
US20180239535A1 (en) | Replicating Data in a Data Storage System | |
CN109254870B (zh) | 数据备份的方法和装置 | |
US9727426B2 (en) | Using an overinclusive write record to track and write changes to a storage system | |
CN113806316B (zh) | 一种文件同步方法、设备及存储介质 | |
CN114461453A (zh) | 从副本节点的数据恢复方法、装置、电子设备和可读介质 | |
US20220083533A1 (en) | Performing Operations based on Distributedly Stored Data | |
US20200110760A1 (en) | Database server, database management method, and storage medium | |
CN117891657A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220209 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |