CN108984343B - 一种基于内容分析的虚拟机备份及存储管理方法 - Google Patents

一种基于内容分析的虚拟机备份及存储管理方法 Download PDF

Info

Publication number
CN108984343B
CN108984343B CN201810750742.4A CN201810750742A CN108984343B CN 108984343 B CN108984343 B CN 108984343B CN 201810750742 A CN201810750742 A CN 201810750742A CN 108984343 B CN108984343 B CN 108984343B
Authority
CN
China
Prior art keywords
virtual machine
backed
data
backup
determining
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
Application number
CN201810750742.4A
Other languages
English (en)
Other versions
CN108984343A (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.)
Shanghai Di'an Technology Co ltd
Original Assignee
Northwestern Polytechnical University
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 Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN201810750742.4A priority Critical patent/CN108984343B/zh
Publication of CN108984343A publication Critical patent/CN108984343A/zh
Application granted granted Critical
Publication of CN108984343B publication Critical patent/CN108984343B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

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

Abstract

本发明提供了一种基于内容分析的虚拟机备份及存储管理方法,方法包括:通过确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机内所需备份的待备份数据,确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件,将待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中,并记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息以便后续进行数据恢复。本发明中,由于在创建虚拟机时镜像库中存储有虚拟机的镜像文件,因此,在进行虚拟机的数据备份时,已经存储在镜像库中的数据可以不用在重复备份到虚拟机备份空间中,从而减少备份数据量,提高备份效率。

Description

一种基于内容分析的虚拟机备份及存储管理方法
技术领域
本发明涉及云计算技术领域,特别涉及一种基于内容分析的虚拟机备份及存储管理方法。
背景技术
随着云计算的发展和普及,大量的企业和个人用户选择使用云计算服务。其中,云计算平台通过为用户分配虚拟机,以满足用户计算、存储等需求。为了保证虚拟机的高可用性,例如,在物理节点发生故障或网络发生故障时虚拟机内的数据不被丢失,以及短时间内虚拟机可被重新访问等,需要对虚拟机的数据进行备份。
传统的备份方法是获取与所需备份虚拟机相关的所有数据,并将所有数据均存储在一个连续的存储空间内,以实现该备份虚拟机的数据备份。对于虚拟机相关的所有数据中,并不是所有数据均需要进行数据备份流程,而现有技术是针对所有数据进行数据备份流程,备份数据量大,备份效率较低。
发明内容
本发明实施例提供了一种基于内容分析的虚拟机备份及存储管理方法,以提高备份效率。
第一方面,本发明提供了一种虚拟机备份方法,应用于虚拟机管理平台,所述方法包括:
步骤01,在接收到备份指令时,根据所述备份指令确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机中所需备份的待备份数据;
步骤02,确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件;
步骤03,针对每一个待备份虚拟机,将其待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中;
步骤04,记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息。
优选地,
在步骤03之前,进一步包括步骤00:针对每一个待备份虚拟机,将其待备份数据按照设定大小划分为若干个待备份数据块,并计算每一个待备份数据块的哈希值;以及,将镜像库中每一个待备份虚拟机对应的镜像文件,按照所述设定大小划分为若干个镜像数据块,并计算每一个镜像数据块的哈希值;
步骤03中所述将其待备份数据中除去相应镜像文件后剩余的数据备份在虚拟机备份空间中,包括:确定当前的待备份虚拟机中的每一个待备份数据块的哈希值以及对应的每一个镜像数据块的哈希值,确定与镜像数据块的哈希值不相同的第一待备份数据块,判断虚拟机备份空间中是否备份有所述第一待备份数据块,若无,则将所述第一待备份数据块备份在虚拟机备份空间中。
优选地,
在步骤03之前,进一步包括:建立映射表,所述映射表至少包括以下内容:虚拟机ID、数据块偏移地址、存储位置、哈希值和备份时间;
所述判断虚拟机备份空间中是否备份有所述第一待备份数据块,包括:确定所述映射表中记录的该待备份虚拟机对应的哈希值中是否有该第一待备份数据块的哈希值,若有,则表征虚拟机备份空间中备份有该第一待备份数据块,若无,则表征虚拟机备份空间中未备份有该第一待备份数据块;
步骤04,包括:根据所述映射表包括的内容,获取每一个待备份虚拟机对应的每一个镜像数据块的备份信息,获取每一个待备份虚拟机中的每一个第一待备份数据块的备份信息,将获取的备份信息记录在所述映射表中。
优选地,
在步骤00之前,进一步包括:建立系统表,以及,针对每一个待备份虚拟机,确定其待备份数据中的元数据和分区数据,将确定元数据和分区数据分别备份在虚拟机备份空间中,将确定的元数据和分区数据的备份信息记录在所述系统表中,并将每一个待备份虚拟机中的待备份数据除去相应元数据和分区数据以外的数据作为待备份数据执行步骤00;
所述系统表至少包括以下内容:虚拟机ID、元数据偏移地址、分区数据偏移地址和备份时间;
所述元数据为用于描述所属待备份虚拟机中文件特征的数据;所述分区数据为用于描述所属待备份虚拟机中的磁盘分区的数据。
优选地,在步骤04之后,进一步包括:在接收到恢复指令时,根据所述恢复指令确定所需恢复的第一虚拟机ID和恢复时间,并根据所述映射表和所述恢复时间确定与所述第一虚拟机ID对应的第一备份信息;根据所述第一备份信息确定备份在虚拟机备份空间中的第一数据以及存储在镜像库中的第一镜像文件,根据所述第一镜像文件和所述第一数据进行数据恢复;其中,所述第一镜像文件的恢复顺序优先于所述第一数据的恢复顺序。
优选地,
进一步包括:建立第一地址表,所述第一地址表至少包括以下内容:镜像文件ID、镜像数据块偏移地址和镜像数据块的哈希值;
在步骤04之后,进一步包括:在接收到针对第二虚拟机的跨站点备份指令时,将所属站点中的所述第一地址表、虚拟机备份空间中针对所述第二虚拟机备份的第二数据、以及所述映射表中记录的所述第二虚拟机的备份信息发送给新站点,以使新站点存储所述第二数据。
优选地,
进一步包括:建立第二地址表,所述第二地址表至少包括以下内容:镜像文件ID、镜像数据块偏移地址和镜像数据块的哈希值;
在步骤04之后,进一步包括:在接收到针对第三虚拟机的跨站点迁移指令时,将所属站点中的所述第二地址表、虚拟机备份空间中针对所述第三虚拟机备份的第三数据、以及所述第三数据的备份信息发送给新站点,并注销所属站点中的所述第三虚拟机,以使新站点根据所述第二地址表中记录的所述第三虚拟机对应镜像文件的信息,在自身镜像库中获取与所述第三虚拟机对应的镜像文件,并根据所述第三虚拟机对应的镜像文件重建所述第三虚拟机,并将所述第三数据恢复到重建后的所述第三虚拟机中。
优选地,步骤01中,所述确定每一个待备份虚拟机中所需备份的待备份数据,包括:针对每一个待备份虚拟机,确定其中存储的所有数据,以及确定其中处于被删除状态、且依然占用存储空间的实际数据,将所有数据中除去相应实际数据之后的剩余数据确定为该待备份虚拟机中所需备份的待备份数据。
第二方面,本发明提供了一种虚拟机管理平台,包括:
接收模块,用于接收备份指令,并在接收到备份指令时触发第一确定模块的操作;
所述第一确定模块,用于根据所述备份指令确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机中所需备份的待备份数据;
第二确定模块,用于确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件;
备份处理模块,用于针对每一个待备份虚拟机,将其中所需备份的待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中;
备份信息记录模块,用于记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息。
第三方面,本发明提供了一种备份系统,包括:至少一个站点,每一个站点包括:如第一方面所述的虚拟机管理平台、镜像库、虚拟机备份空间和至少一个待备份虚拟机;其中,
所述镜像库,用于存储每一个待备份虚拟机对应的镜像文件;
所述虚拟机备份空间,用于备份每一个待备份虚拟机中所需备份的待备份数据中除去相应镜像文件后剩余的数据。
本发明实施例提供了一种基于内容分析的虚拟机备份及存储管理方法,通过确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机内所需备份的待备份数据,确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件,将待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中,并记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息以便后续进行数据恢复。本发明中,由于在创建虚拟机时镜像库中存储有虚拟机的镜像文件,因此,在进行虚拟机的数据备份时,已经存储在镜像库中的数据可以不用在重复备份到虚拟机备份空间中,从而减少备份数据量,提高备份效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种虚拟机备份方法流程图;
图2是本发明实施例二提供的一种虚拟机管理平台结构示意图;
图3是本发明实施例三提供的一种备份系统示意图;
图4是本发明实施例三提供的一种Linux ext4文件系统中虚拟机所有数据分布情况的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
如图1所示,本发明实施例提供了一种虚拟机备份方法,应用于虚拟机管理平台,所述方法包括:
步骤01,在接收到备份指令时,根据所述备份指令确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机中所需备份的待备份数据。
例如,备份指令用于指示对虚拟机1和虚拟机2进行数据备份。
在本实施例中,每一个待备份虚拟机中所需备份的待备份数据为该待备份虚拟机中的所有数据。在获取待备份虚拟机中的所有数据时,可以直接获取将该待备份虚拟机的存储空间中数据,即为所有数据。
在本发明一个实施例中,由于虚拟机存储空间中可能存在一些冗余数据,这些冗余数据是处于被删除状态,但依然占用存储空间的实际数据,由于这些实际数据所对应用于描述其特征状态的元数据被删除,但是实际数据依然会存储在特定文件夹下,对于这些作为冗余数据的实际数据无需进行备份,因此,可以将虚拟机1中所有数据除去相应实际数据之后的剩余数据确定为虚拟机1中所需备份的待备份数据,将虚拟机2中所有数据除去相应实际数据之后的剩余数据确定为虚拟机2中所需备份的待备份数据。如此,进一步减小了备份数据量,提高备份效率。
步骤02,确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件。
在创建虚拟机时,一般镜像库中会存储有虚拟机对应的镜像文件,并且镜像库中存储的镜像文件不会丢失,因此,可以将镜像库中存储的镜像文件作为虚拟机中一部分待备份数据的备份,可以进一步减小备份数据量,提高备份效率。
例如,在镜像库中确定出与虚拟机1对应的镜像文件1,以及与虚拟机2对应的镜像文件2。
步骤03,针对每一个待备份虚拟机,将其待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中。
在本实施例中,针对虚拟机1,可以将虚拟机1中待备份数据除去镜像文件1之后的剩余数据备份在虚拟机备份空间中;以及针对虚拟机2,可以将虚拟机2中待备份数据除去镜像文件2之后的剩余数据备份在虚拟机备份空间中。
为了获取到待备份数据中除去相应镜像文件后的剩余数据,至少可以利用如下两种方式来实现:
(1)直接查找重复文件的方式。该方式需要针对镜像文件在待备份数据中进行遍历,将遍历到镜像文件从待备份数据中摘除,得到剩余数据。此方式中由于镜像文件较大,且可能一个镜像文件的多个数据存储在不同的分区中,因此不容易遍历到。
(2)数据块哈希值比较方式。该方式是将数据划分为设定大小的数据块,通过数据块的哈希值是否相同,来确定剩余数据。
该方式(2)是本实施例中的一个优选方式,具体地,可以在步骤03之前,进一步包括步骤00:针对每一个待备份虚拟机,将其待备份数据按照设定大小划分为若干个待备份数据块,并计算每一个待备份数据块的哈希值;以及,将镜像库中每一个待备份虚拟机对应的镜像文件,按照所述设定大小划分为若干个镜像数据块,并计算每一个镜像数据块的哈希值。
步骤03中所述将其待备份数据中除去相应镜像文件后剩余的数据备份在虚拟机备份空间中,包括:确定当前的待备份虚拟机中的每一个待备份数据块的哈希值以及对应的每一个镜像数据块的哈希值,确定与镜像数据块的哈希值不相同的第一待备份数据块,判断虚拟机备份空间中是否备份有所述第一待备份数据块,若无,则将所述第一待备份数据块备份在虚拟机备份空间中。
例如,以虚拟机1为例,虚拟机1中待备份数据1划分为待备份数据块1、待备份数据块2、……、待备份数据块m,分别对应哈希值,虚拟机1对应的镜像文件1划分为镜像数据块1、镜像数据块2、……、镜像数据块n。其中,m、n均为不小于2的整数。
在哈希值比较过程中,假设待备份数据块1的哈希值与镜像数据块1的哈希值相同,那么表明待备份数据块1与镜像数据块1为相同数据,因此,无需将该待备份数据块1备份到虚拟机备份空间中。假设待备份数据块2的哈希值与将镜像文件1划分成的各个镜像数据块的哈希值均不相同,那么表明待备份数据块2未存储在镜像库中,该待备份数据块2即为第一待备份数据块,需要将该待备份数据块2备份在虚拟机备份空间中。
进一步地,在备份过程中,若该备份为针对该虚拟机的首次备份,那么虚拟机备份空间中尚未存储有该虚拟机对应的待备份数据,而若该备份为针对该虚拟机的再次备份,那么虚拟机备份空间中可能已经备份有该虚拟机的一部分数据,再次备份是针对距离上一次备份之间时间段内更新的数据。因此,在将待备份数据块2备份在虚拟机备份空间之前,还需要判断虚拟机备份空间中是否备份有该待备份数据块2。
为了便于判断虚拟机备份空间中是否备份有该待备份数据块2,可以进一步包括:预先建立映射表。其中,述映射表至少包括以下内容:虚拟机ID、数据块偏移地址、存储位置、哈希值和备份时间。映射表的作用不仅在于哈希值的比对以确定虚拟机备份空间是否备份过数据块,还在于后续数据恢复的指引作用。
具体地,判断虚拟机备份空间中是否备份有所述第一待备份数据块,包括:确定所述映射表中记录的该待备份虚拟机对应的哈希值中是否有该第一待备份数据块的哈希值,若有,则表征虚拟机备份空间中备份有该第一待备份数据块,若无,则表征虚拟机备份空间中未备份有该第一待备份数据块。
在本发明一个实施例中,为了便于虚拟机数据恢复,可以在步骤00之前,进一步包括:建立系统表,以及,针对每一个待备份虚拟机,确定其待备份数据中的元数据和分区数据,将确定元数据和分区数据分别备份在虚拟机备份空间中,将确定的元数据和分区数据的备份信息记录在所述系统表中,并将每一个待备份虚拟机中的待备份数据除去相应元数据和分区数据以外的数据作为待备份数据执行步骤00;
其中,所述系统表至少包括以下内容:虚拟机ID、元数据偏移地址、分区数据偏移地址和备份时间;所述元数据为用于描述所属待备份虚拟机中文件特征的数据;所述分区数据为用于描述所属待备份虚拟机中的磁盘分区的数据。
步骤04,记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息。
本实施例中,对每一个待备份虚拟机对应镜像文件的备份信息以及备份在虚拟机备份空间中数据的备份信息进行记录,目的在于后续虚拟机数据丢失,利用记录的备份信息可以对备份在虚拟机备份空间以及镜像库中的数据进行恢复提供便利。
基于步骤03中预先建立的映射表,可以将备份信息记录在映射表中,以数据被划分为若干个数据块进行备份为例,备份信息为虚拟机ID、数据块偏移地址、存储位置、哈希值和备份时间。具体地,根据所述映射表包括的内容,获取每一个待备份虚拟机对应的每一个镜像数据块的备份信息,获取每一个待备份虚拟机中的每一个第一待备份数据块的备份信息,将获取的备份信息记录在所述映射表中。
本发明,由于在创建虚拟机时镜像库中存储有虚拟机的镜像文件,因此,在进行虚拟机的数据备份时,已经存储在镜像库中的数据可以不用在重复备份到虚拟机备份空间中,从而减少备份数据量,提高备份效率。
实施例二
如图2所示,本发明实施例提供了一种虚拟机管理平台,在本实施例中,虚拟机管理平台可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述虚拟机备份方法。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述虚拟机管理平台在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
接收模块21,用于接收备份指令,并在接收到备份指令时触发第一确定模块22的操作;
所述第一确定模块22,用于根据所述备份指令确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机中所需备份的待备份数据;
第二确定模块23,用于确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件;
备份处理模块24,用于针对每一个待备份虚拟机,将其中所需备份的待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中;
备份信息记录模块25,用于记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息。
实施例三
请参考图3,本发明实施例还提供了一种备份系统,包括:至少一个站点,每一个站点包括:如上述实施例二所述的虚拟机管理平台、镜像库、虚拟机备份空间和至少一个待备份虚拟机;其中,
所述镜像库,用于存储每一个待备份虚拟机对应的镜像文件;
所述虚拟机备份空间,用于备份每一个待备份虚拟机中所需备份的待备份数据中除去相应镜像文件后剩余的数据。
在本实施例中,每一个待备份虚拟机内的数据存储在虚拟机存储空间中。
请参考图4,为本实施例提供的一种Linux ext4文件系统中虚拟机的所有数据分布情况的示意图,其包括:启动区、超级区、块位图、inode位图、文件系统描述、inode和数据区等信息。
启动区存储主引导记录(MBR,Main Boot Record),Linux开机启动后,会首先载入MBR,随后MBR从某个硬盘的启动区加载程序;除了MBR,启动区也存储分区信息。超级区存储文件系统的相关信息,包括文件系统的类型,元数据的数目,数据块的数目,空闲元数据节点和空闲数据块的记录信息。块位图记录已使用和未使用的块号。inode位图记录已使用和未使用的inode号。inode用来描述一个文件的特征的系统数据,也就是元数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode...)。数据区则存储实际数据,包括操作系统的数据和用户写入的数据。每次备份时,我们通过分析元数据,将元数据所指向的数据块占用的空间统称为已使用空间,将所有闲置数据块和处于被删除状态但依然占用存储空间的实际数据称之为未使用空间。因此,将已使用空间中的数据确定为待备份数据。
实施例四
本实施例是以实施例一至实施例三为基础的一种优选实施例。其中,在本实施例中可以包括三个阶段:准备阶段、备份阶段、恢复阶段。下面对这三个阶段分别进行说明。
准备阶段:
步骤01,虚拟机管理平台创建地址表,并将镜像库中各个镜像文件的存储信息写入地址表中。
镜像库中存储有所属站点以及其他站点中虚拟机对应的镜像文件。以一个站点为例,该站点包括虚拟机1和虚拟机2,那么镜像库中存储有虚拟机1对应的镜像文件1和虚拟机2对应的镜像文件2。
为了提高备份效率,虚拟机管理平台可以创建地址表,以记录镜像文件的存储信息。请参考表1,该地址表包括:镜像文件ID、镜像数据块偏移地址和镜像数据块的哈希值。其中,创建的该地址表可以存储在镜像库中。
表1:
Figure BDA0001725471390000111
Figure BDA0001725471390000121
虚拟机管理平台将镜像库中各个镜像文件,按照设定大小分别划分为若干个镜像数据块,并计算每一个镜像数据块的哈希值,根据划分结果和计算结果将镜像文件的存储信息写入地址表中。
其中,镜像数据块偏移地址为该镜像数据块在镜像库中的偏移量。
由于镜像文件不会发生变化,因此,虚拟机管理平台一旦将镜像库中的各个镜像文件对应的存储信息写入表1中之后,以后无需对表1进行更新。
步骤02,虚拟机管理平台建立系统表。
为了便于后续虚拟机的恢复,可以预先建立系统表,用来记录虚拟机的元数据和分区数据,以实现虚拟机的元数据、分区数据与虚拟机其他存储数据的分别存储,在后续虚拟机恢复过程中,可以直接利用该系统表获取到虚拟机对应的元数据、分区数据,便于虚拟机恢复。
其中,元数据为用于描述所属待备份虚拟机中文件特征的数据,例如访问权限、文件拥有者以及文件数据块的分布信息(inode…)等;分区数据为用于描述所属待备份虚拟机中的磁盘分区的数据。
请参考表2,该系统表可以包括以下内容:虚拟机ID、元数据偏移地址、分区数据偏移地址和备份时间。
表2:
虚拟机ID 元数据偏移地址 分区数据偏移地址 备份时间
其中,元数据和分区数据均是备份在虚拟机备份空间中的,因此,元数据偏移地址为元数据在虚拟机备份空间中的偏移量,分区数据偏移地址为分区数据在虚拟机备份空间中的偏移量。
步骤03,虚拟机管理平台建立映射表。
映射表的作用是实现对已备份在虚拟机备份空间中的数据的备份信息进行记录。请参考表3,映射表至少可以包括以下内容:虚拟机ID、数据块偏移地址、存储位置、哈希值和备份时间。
表3:
虚拟机ID 数据块偏移地址 存储位置 哈希值 备份时间
其中,存储位置包括:虚拟机备份空间和镜像库。例如,可以使用0/1表示,0用于表征数据块存储在虚拟机备份空间中,1用于表征数据块存储在镜像库中。
准备阶段结束。
备份阶段:
步骤01,在接收到备份指令时,根据备份指令确定所需备份的待备份虚拟机。
例如,备份指令是对虚拟机1内的数据进行备份,那么待备份虚拟机为虚拟机1。
步骤02,确定待备份虚拟机1中所需备份的待备份数据1。
其中,在对一些数据执行删除操作之后,这些数据被放置在回收站,回收站内的数据存在特定的文件夹下,当回收站被清空后,实际数据依然存储在虚拟机中,只是这些数据的元数据被删除了,因此,对于这些处于被删除状态、且依然占用存储空间的实际数据,可以从待备份虚拟机中存储的所有数据中除去,将除去之后的剩余数据确定为待备份虚拟机中所需备份的待备份数据。
步骤03,确定待备份数据1中的元数据和分区数据,将确定的元数据和分区数据备份在虚拟机备份空间中,并将虚拟机ID、元数据偏移地址、分区数据偏移地址和备份时间写入到系统表中。
在将元数据和分区数据备份到虚拟机备份空间时,可以不需要与以前备份的数据做比较,可以直接进行备份。
步骤04,将待备份数据1中除去相应元数据和分区数据之后得到待备份数据11。
步骤05,将待备份数据11按照设定大小划分为若干个待备份数据块,并计算每一个待备份数据块的哈希值。
该设定大小与镜像库中镜像文件的划分时的设定大小相同。例如,划分成的若干个待备份数据块为:待备份数据块111、待备份数据块112、……
其中,可以建立一个哈希表,将计算的每一个待备份数据块的哈希值记录在哈希表中。
步骤06,确定镜像库中虚拟机1对应的镜像文件1,以及地址表中镜像文件1对应各个镜像数据块的哈希值。
步骤07,针对每一个待备份数据块,确定出与地址表中镜像文件1对应各个镜像数据块的哈希值不相同的第一待备份数据块,并将哈希值相同的各个待备份数据块的备份信息分别插入到映射表中。
例如,待备份数据块111的哈希值与地址表中镜像文件1对应的某个镜像数据块的哈希值相同,那么表明该待备份数据块111是镜像文件,可以不用将其备份到虚拟机备份空间中,而待备份数据块112的哈希值与地址表中镜像文件1对应的所有镜像数据块的哈希值均不相同,那么表明该待备份数据块112是不是镜像文件,需要将其备份到虚拟机备份空间中。
在将待备份数据块111的备份信息插入到映射表中的过程为:确定待备份数据块111的虚拟机ID为虚拟机1,在地址表中确定与该待备份数据块111哈希值相同的镜像数据块的偏移地址将其作为数据块偏移地址,存储位置为镜像库,哈希值也可以根据地址表获得,以及确定当前备份时间,并将确定的信息作为一条待备份数据块111的备份信息插入到映射表中。
在本实施例中,只需将待备份数据块与其所属虚拟机对应镜像文件的哈希值进行比较即可,无需与其他镜像文件的哈希值进行比较,从而可以进一步提高备份效率。
步骤08,确定映射表中记录的虚拟机1对应的哈希值中是否有第一待备份数据块的哈希值,若有,执行步骤09,若无,执行步骤10。
在映射表中记录的虚拟机1对应的哈希值中有该第一待备份数据块的哈希值时,则表征虚拟机备份空间中备份有该第一待备份数据块;
在映射表中记录的虚拟机1对应的哈希值中没有该第一待备份数据块的哈希值时,则表征虚拟机备份空间中未备份有该第一待备份数据块。
在确定虚拟机备份空间中是否备份有第一待备份数据块时,只需根据映射表中记录的虚拟机1对应的哈希值来确定即可,无需与其他虚拟机的哈希值进行比较,从而可以进一步提高备份效率。
步骤09,根据映射表获取第一待备份数据块的偏移地址,并在映射表中插入一条该第一待备份数据块的备份信息。
由于该第一待备份数据块之前已经备份在虚拟机备份空间中了,那么可以在映射表中获取该第第一待备份数据块对应的虚拟机ID、数据块偏移地址、存储位置和哈希值,并确定当前备份时间,将该条备份信息插入到映射表中。
步骤10,将第一待备份数据块备份到虚拟机备份空间中,并获取该第一待备份数据块的备份信息插入到映射表中。
其中,第一待备份数据块的虚拟机ID为虚拟机1,在将第一待备份数据块备份到虚拟机备份空间之后,可以直接读取该第一待备份数据块在虚拟机备份空间中的偏移地址,存储位置为虚拟机备份空间,哈希值可以根据哈希表获得,确定当前备份时间,将确定的信息作为一条第一待备份数据块的备份信息插入到映射表中。
备份阶段结束。
恢复阶段:
步骤01,在接收到恢复指令时,根据恢复指令确定所需恢复的第一虚拟机ID。
例如,恢复指令用于指示对虚拟机1进行恢复,恢复时间为备份时间1时的数据。
步骤02,根据映射表确定与第一虚拟机ID对应的第一备份信息。
由于映射表中记录有虚拟机ID,因此,根据第一虚拟机ID确定备份时间1对应的各条第一备份信息。其中,第一备份信息中记录有备份在虚拟机备份空间中的数据信息,以及备份在镜像库中的数据信息。
步骤03,根据第一备份信息确定备份在虚拟机备份空间中的第一数据以及存储在镜像库中的第一镜像文件。
进一步地,可以在系统表中获取该恢复时间对应第一虚拟机的元数据和分区数据。
步骤04,根据所述第一镜像文件和所述第一数据进行数据恢复;其中,所述第一镜像文件的恢复顺序优先于所述第一数据的恢复顺序。
具体地,先利用第一镜像文件创建该第一虚拟机,并根据元数据和分区数据将第一数据恢复到该创建的第一虚拟机中的指定位置。
恢复阶段结束。
实施例五
本实施例是以实施例四为基础的一种跨站点备份方法,以将站点1中的虚拟机1备份到站点1中为例,该方法包括以下步骤:
步骤01,在站点1中的虚拟机管理平台1接收到针对第二虚拟机的跨站点备份指令时,确定虚拟机备份空间1中针对第二虚拟机存储的第二数据,以及映射表中记录的第二虚拟机的备份信息。
其中,虚拟机备份空间1中针对虚拟机1存储的第二数据可以根据映射表和系统表获取到,另外,将根据映射表中记录的第二虚拟机的备份信息确定映射子表,该映射子表只包括第二虚拟机的备份信息。
进一步地,若包括系统表,则确定系统表以及根据系统表获取虚拟机1的元数据和分区数据。若不包括系统表,则虚拟机1的元数据和分区数据包含在第二数据中。
步骤02,将站点1中镜像库1内的地址表、第二数据以及只记录有第二虚拟机的备份信息的映射子表发送给站点2的虚拟机管理平台2。
若包括系统表,则进一步将系统表和虚拟机1的元数据、分区数据一并发送。
由于每个站点的镜像库内均存储有各个站点内各个虚拟机的镜像文件,因此,站点1中镜像库内的镜像文件无需传输,只传输地址表即可,从而可以提高跨站点备份效率。
步骤03,站点2的虚拟机管理平台2将地址表存储在镜像库2中。
由于各个站点镜像库中存储的镜像文件个数相同、且镜像文件也相同,因此,无需更新地址表中的镜像文件ID。
步骤04,站点2的虚拟机管理平台2将第二数据备份在虚拟机备份空间2中,并建立虚拟机表,根据站点2内虚拟机个数,实现站点1中虚拟机1在站点2中备份后虚拟机ID的对应关系。
由于站点2中也包括有至少一个虚拟机,例如,只有1个,即虚拟机ID为虚拟机1,那么若该站点1中的虚拟机1备份在虚拟机备份空间2中之后,不能与站点2中的虚拟机1混合,因此,可以将站点1中虚拟机1的ID对应为站点2中的虚拟机2。并将该对应关系记录在虚拟机表中。
建立的虚拟机表请参考表4:
表4:
新站点ID 新虚拟机ID 原站点ID 原虚拟机ID
步骤05,站点2的虚拟机管理平台2对映射子表内的偏移地址进行更新,并存储映射子表。
对于存在虚拟机备份空间2中的第二数据,其偏移地址也会发生变化,因此需要对映射表中的偏移地址进行更新。
实施例六
本实施例是以实施例四为基础的一种跨站点迁移方法,以将站点1中的虚拟机1迁移到站点1中为例,该方法包括以下步骤:
步骤01,在站点1中的虚拟机管理平台1接收到针对第三虚拟机的跨站点迁移指令时,确定虚拟机备份空间1中针对第三虚拟机存储的第三数据,以及映射表中记录的第三虚拟机的备份信息。
其中,虚拟机备份空间1中针对虚拟机1存储的第三数据可以根据映射表和系统表获取到,另外,将根据映射表中记录的第三虚拟机的备份信息确定映射子表,该映射子表只包括第三虚拟机的备份信息。
进一步地,若包括系统表,则确定系统表以及根据系统表获取虚拟机1的元数据和分区数据。若不包括系统表,则虚拟机1的元数据和分区数据包含在第三数据中。
步骤02,将站点1中镜像库1内的地址表、第三数据以及只记录有第三虚拟机的备份信息的映射子表发送给站点2的虚拟机管理平台2。
若包括系统表,则进一步将系统表和虚拟机1的元数据、分区数据一并发送。
由于每个站点的镜像库内均存储有各个站点内各个虚拟机的镜像文件,因此,站点1中镜像库内的镜像文件无需传输,只传输地址表即可,从而可以提高跨站点备份效率。
步骤03,注销站点1中的虚拟机1。
步骤04,站点2的虚拟机管理平台2将地址表存储在镜像库2中,并根据地址表确定站点1中虚拟机1的镜像文件。
由于各个站点镜像库中存储的镜像文件个数相同、且镜像文件也相同,因此,无需更新地址表中的镜像文件ID。
例如确定站点1的虚拟机1的镜像文件为镜像文件1。
步骤05,站点2根据镜像文件1创建新的虚拟机,并根据映射子表将第三数据恢复到新创建的虚拟机中。
其中,该步骤05与实施例四中恢复阶段类似,本实施例不在赘述。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (3)

1.一种虚拟机备份方法,其特征在于,应用于虚拟机管理平台,所述方法包括:
步骤01,在接收到备份指令时,根据所述备份指令确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机中所需备份的待备份数据;
步骤02,确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件;
步骤03,针对每一个待备份虚拟机,将其待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中;
步骤04,记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息;
在步骤01中,所述确定每一个待备份虚拟机中所需备份的待备份数据,包括:针对每一个待备份虚拟机,确定其中存储的所有数据,以及确定其中处于被删除状态、且依然占用存储空间的实际数据,将所有数据中除去相应实际数据之后的剩余数据确定为该待备份虚拟机中所需备份的待备份数据;
在步骤03之前,进一步包括步骤00:针对每一个待备份虚拟机,将其待备份数据按照设定大小划分为若干个待备份数据块,并计算每一个待备份数据块的哈希值;以及,将镜像库中每一个待备份虚拟机对应的镜像文件,按照所述设定大小划分为若干个镜像数据块,并计算每一个镜像数据块的哈希值;
步骤03中所述将其待备份数据中除去相应镜像文件后剩余的数据备份在虚拟机备份空间中,包括:确定当前的待备份虚拟机中的每一个待备份数据块的哈希值以及对应的每一个镜像数据块的哈希值,确定与镜像数据块的哈希值不相同的第一待备份数据块,判断虚拟机备份空间中是否备份有所述第一待备份数据块,若无,则将所述第一待备份数据块备份在虚拟机备份空间中;
在步骤03之前,进一步包括:建立映射表,所述映射表至少包括以下内容:虚拟机ID、数据块偏移地址、存储位置、哈希值和备份时间;
所述判断虚拟机备份空间中是否备份有所述第一待备份数据块,包括:确定所述映射表中记录的该待备份虚拟机对应的哈希值中是否有该第一待备份数据块的哈希值,若有,则表征虚拟机备份空间中备份有该第一待备份数据块,若无,则表征虚拟机备份空间中未备份有该第一待备份数据块;
步骤04,包括:根据所述映射表包括的内容,获取每一个待备份虚拟机对应的每一个镜像数据块的备份信息,获取每一个待备份虚拟机中的每一个第一待备份数据块的备份信息,将获取的备份信息记录在所述映射表中;
在步骤00之前,进一步包括:建立系统表,以及,针对每一个待备份虚拟机,确定其待备份数据中的元数据和分区数据,将确定元数据和分区数据分别备份在虚拟机备份空间中,将确定的元数据和分区数据的备份信息记录在所述系统表中,并将每一个待备份虚拟机中的待备份数据除去相应元数据和分区数据以外的数据作为待备份数据执行步骤00;
所述系统表至少包括以下内容:虚拟机ID、元数据偏移地址、分区数据偏移地址和备份时间;
所述元数据为用于描述所属待备份虚拟机中文件特征的数据;所述分区数据为用于描述所属待备份虚拟机中的磁盘分区的数据;
在步骤04之后,进一步包括:在接收到恢复指令时,根据所述恢复指令确定所需恢复的第一虚拟机ID和恢复时间,并根据所述映射表和所述恢复时间确定与所述第一虚拟机ID对应的第一备份信息;根据所述第一备份信息确定备份在虚拟机备份空间中的第一数据以及存储在镜像库中的第一镜像文件,根据所述第一镜像文件和所述第一数据进行数据恢复;其中,所述第一镜像文件的恢复顺序优先于所述第一数据的恢复顺序;
进一步包括:建立第一地址表,所述第一地址表至少包括以下内容:镜像文件ID、镜像数据块偏移地址和镜像数据块的哈希值;
在步骤04之后,进一步包括:在接收到针对第二虚拟机的跨站点备份指令时,将所属站点中的所述第一地址表、虚拟机备份空间中针对所述第二虚拟机备份的第二数据、以及所述映射表中记录的所述第二虚拟机的备份信息发送给新站点,以使新站点存储所述第二数据;
进一步包括:建立第二地址表,所述第二地址表至少包括以下内容:镜像文件ID、镜像数据块偏移地址和镜像数据块的哈希值;
在步骤04之后,进一步包括:在接收到针对第三虚拟机的跨站点迁移指令时,将所属站点中的所述第二地址表、虚拟机备份空间中针对所述第三虚拟机备份的第三数据、以及所述第三数据的备份信息发送给新站点,并注销所属站点中的所述第三虚拟机,以使新站点根据所述第二地址表中记录的所述第三虚拟机对应镜像文件的信息,在自身镜像库中获取与所述第三虚拟机对应的镜像文件,并根据所述第三虚拟机对应的镜像文件重建所述第三虚拟机,并将所述第三数据恢复到重建后的所述第三虚拟机中。
2.一种虚拟机管理平台,其特征在于,该平台使用权利要求1所述方法,平台包括:
接收模块,用于接收备份指令,并在接收到备份指令时触发第一确定模块的操作;
所述第一确定模块,用于根据所述备份指令确定所需备份的待备份虚拟机,以及确定每一个待备份虚拟机中所需备份的待备份数据;
第二确定模块,用于确定镜像库中存储的与每一个待备份虚拟机对应的镜像文件;
备份处理模块,用于针对每一个待备份虚拟机,将其中所需备份的待备份数据中除去相应镜像文件后的剩余数据备份在虚拟机备份空间中;
备份信息记录模块,用于记录每一个待备份虚拟机对应镜像文件的备份信息,以及记录备份在虚拟机备份空间中数据的备份信息。
3.一种备份系统,包括:至少一个站点,每一个站点包括:如权利要求2所述的虚拟机管理平台、镜像库、虚拟机备份空间和至少一个待备份虚拟机;其中,
所述镜像库,用于存储每一个待备份虚拟机对应的镜像文件;
所述虚拟机备份空间,用于备份每一个待备份虚拟机中所需备份的待备份数据中除去相应镜像文件后剩余的数据。
CN201810750742.4A 2018-07-10 2018-07-10 一种基于内容分析的虚拟机备份及存储管理方法 Active CN108984343B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810750742.4A CN108984343B (zh) 2018-07-10 2018-07-10 一种基于内容分析的虚拟机备份及存储管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810750742.4A CN108984343B (zh) 2018-07-10 2018-07-10 一种基于内容分析的虚拟机备份及存储管理方法

Publications (2)

Publication Number Publication Date
CN108984343A CN108984343A (zh) 2018-12-11
CN108984343B true CN108984343B (zh) 2021-12-14

Family

ID=64537614

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810750742.4A Active CN108984343B (zh) 2018-07-10 2018-07-10 一种基于内容分析的虚拟机备份及存储管理方法

Country Status (1)

Country Link
CN (1) CN108984343B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116610498B (zh) * 2023-07-14 2024-04-09 深圳市木浪云科技有限公司 基于对象存储的数据备份恢复方法、系统、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068856A (zh) * 2015-07-16 2015-11-18 武汉噢易云计算有限公司 基于镜像快照的虚拟机备份系统及备份方法
CN105446826A (zh) * 2014-06-30 2016-03-30 国际商业机器公司 虚拟机备份、恢复的方法及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8566640B2 (en) * 2010-07-19 2013-10-22 Veeam Software Ag Systems, methods, and computer program products for instant recovery of image level backups
US8843443B1 (en) * 2011-06-30 2014-09-23 Emc Corporation Efficient backup of virtual data
CN103324552B (zh) * 2013-06-06 2016-01-13 西安交通大学 两阶段单实例去重数据备份方法
CN104199687B (zh) * 2014-08-14 2017-10-20 北京京东尚科信息技术有限公司 一种在虚拟机系统中处理数据的方法和装置
US10282112B2 (en) * 2014-11-04 2019-05-07 Rubrik, Inc. Network optimized deduplication of virtual machine snapshots
CN104461773A (zh) * 2014-11-18 2015-03-25 国云科技股份有限公司 一种虚拟机备份去重的方法
CN105302669B (zh) * 2015-10-23 2019-04-30 浙江工商大学 一种云备份过程中数据去重的方法和系统
CN106446061A (zh) * 2016-09-06 2017-02-22 上海云轴信息科技有限公司 用于存储虚拟机镜像的方法及设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446826A (zh) * 2014-06-30 2016-03-30 国际商业机器公司 虚拟机备份、恢复的方法及设备
CN105068856A (zh) * 2015-07-16 2015-11-18 武汉噢易云计算有限公司 基于镜像快照的虚拟机备份系统及备份方法

Also Published As

Publication number Publication date
CN108984343A (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
US9817835B2 (en) Efficient data synchronization for storage containers
US9183268B2 (en) Partition level backup and restore of a massively parallel processing database
US7257690B1 (en) Log-structured temporal shadow store
US10162555B2 (en) Deduplicating snapshots associated with a backup operation
US20080243860A1 (en) Sequential Media Reclamation and Replication
CN105573859A (zh) 一种数据库的数据恢复方法和设备
US11461140B2 (en) Systems and methods for controller-worker architecture for searching a storage system
US10977143B2 (en) Mirrored write ahead logs for data storage system
CN107330024B (zh) 标签系统数据的存储方法和装置
US11782878B2 (en) Systems and methods for searching deduplicated data
CN111930716A (zh) 一种数据库扩容方法、装置及系统
CN111917834A (zh) 一种数据同步方法、装置、存储介质及计算机设备
US20230394010A1 (en) File system metadata deduplication
CN111638995A (zh) 元数据备份方法、装置及设备、存储介质
CN107506466B (zh) 一种小文件存储方法及系统
CN115840731A (zh) 文件处理方法、计算设备及计算机存储介质
US9483485B1 (en) Restore database from backup system where full and incremental backups are performed simultaneously
CN108984343B (zh) 一种基于内容分析的虚拟机备份及存储管理方法
US11645161B2 (en) Catalog of files associated with snapshots
CN104216792A (zh) 数据备份的方法及内存数据库存储引擎
US10452496B2 (en) System and method for managing storage transaction requests
CN112631826A (zh) 一种备份处理方法、装置及计算机可读存储介质
US20230237020A1 (en) Container-based erasure coding
CN115563073A (zh) 分布式元数据的数据处理的方法、装置及电子设备
US8296336B2 (en) Techniques for efficient dataloads into partitioned tables using swap tables

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
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220628

Address after: 201100 room 13, floor 2, building 4, No. 728, Guanghua Road, Minhang District, Shanghai

Patentee after: SHANGHAI DI'AN TECHNOLOGY Co.,Ltd.

Address before: 710129 Dong Da Jie Dao, Chang'an District, Xi'an City, Shaanxi Province

Patentee before: Northwestern Polytechnical University