CN112860479A - 存储数据的方法及云数据中心 - Google Patents

存储数据的方法及云数据中心 Download PDF

Info

Publication number
CN112860479A
CN112860479A CN202110064595.7A CN202110064595A CN112860479A CN 112860479 A CN112860479 A CN 112860479A CN 202110064595 A CN202110064595 A CN 202110064595A CN 112860479 A CN112860479 A CN 112860479A
Authority
CN
China
Prior art keywords
backup
data
server
read
mirror image
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.)
Pending
Application number
CN202110064595.7A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110064595.7A priority Critical patent/CN112860479A/zh
Publication of CN112860479A publication Critical patent/CN112860479A/zh
Pending legal-status Critical Current

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/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • 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
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Abstract

存储数据的方法及云数据中心。本申请实施例提供在云数据中心实现数据转换的方法及备份服务器,可以在创建虚拟机的云磁盘时,缩短备份数据对象的转换时间,并且减少用户在云数据中心的存储成本。方法包括:备份服务器接收块存储服务器发送的读请求,读请求包括待读取的虚拟镜像对象在备份服务器中的URL地址和待读取的虚拟镜像对象中目标数据的地址范围;根据待读取的虚拟镜像对象在备份服务器中的URL地址,获取待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,从存储设备中获取目标数据;向块存储服务器发送目标数据。本申请适用于存储技术领域。

Description

存储数据的方法及云数据中心
技术领域
本申请涉及存储技术领域,尤其涉及在云数据中心中存储数据的方法及云数据中心。
背景技术
在当前的混合云备份中,云下数据中心的虚拟机(Virtual Machine,VM)或者物理机(Physical Machine,PM)的数据,以卷为单位备份到本地或者备份到本地后,再远程复制到云数据中心中价格低廉的存储设备中,并通过云数据中心中的备份服务器,恢复成云数据中心的虚拟机(也可以称作云主机),从而达到容灾和数据备份的目的。
其中,一次备份产生的备份数据称为一个备份副本,备份副本中包括多个备份数据对象。对象是对象存储技术中数据存储的基本单位,一个对象是文件的数据和一组属性信息(元数据,Meta Data)的组合。备份软件在将VM/PM的数据以对象的形式备份到存储设备中时,是以备份副本的形式存储的,而云数据中心可注册的格式类型为镜像对象的数据格式,因此备份服务器需要基于备份副本在存储设备中创建该备份副本对应的云数据中心可注册的镜像对象。这里的镜像是指云数据中心里的镜像,对应英文为image。镜像对象是指在云数据中心中被云数据中心兼容的可用于创建虚拟机和虚拟机的盘的对象。
然而,在云数据中心的存储设备中创建镜像对象的过程中,一方面,由于备份服务器需要先从存储设备中读取备份副本,然后再下发写操作到存储设备中,形成镜像对象,因此在还没有创建虚拟机的云盘之前,就已经因为大量的输入输出(Input-Output,IO)而消耗大量的时间;另一方面,由于在存储设备中创建镜像对象要耗费用户在存储设备中的存储空间,因此会增加用户在云数据中心的存储成本。
发明内容
本申请实施例提供在云数据中心实现数据转换的方法及备份服务器,在创建虚拟机的云盘时,缩短备份数据对象的转换时间,并且减少用户在云数据中心的存储成本。
为达到上述目的,本申请实施例提供如下技术方案:
第一方面,提供一种在云数据中心中实现数据转换的方法,该云数据中心包括备份服务器、块存储服务器和存储设备,备份服务器中存储有该存储设备中的备份副本对应的虚拟镜像对象和该虚拟镜像对象在该备份服务器中的统一资源定位符URL地址,该方法包括:备份服务器接收该块存储服务器发送的读请求,该读请求包括待读取的虚拟镜像对象在该备份服务器中的URL地址和该待读取的虚拟镜像对象中目标数据的地址范围;该备份服务器根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,获取该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径;该备份服务器根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,从该存储设备中获取该目标数据;该备份服务器向该块存储服务器发送该目标数据。基于本申请实施例提供的在云数据中心实现数据转换的方法,一方面,由于本申请实施例中,是由备份服务器虚拟出一个虚拟镜像对象,而不是在存储设备中产生真正的镜像对象,因此可以节省用户在存储设备中的存储空间,从而减少用户在云数据中心的存储成本。另一方面,本申请实施例中,块存储设备可以通过备份服务器直接读取存储设备中的备份数据,而不是备份服务器先从存储设备中读取备份副本,然后再下发写操作到存储设备中,形成镜像对象,再由块存储设备从镜像对象中读取备份数据,因此可以在创建虚拟机的云盘时,消除因为产生真实镜像对象所消耗的读IO和写IO,从而缩短备份数据对象的转换时间。
在一种可能的设计中,在该备份服务器接收块存储服务器发送的读请求之前,还包括:该备份服务器获取该备份副本的标识;该备份服务器根据该备份副本的标识,查询本地数据库,获取该备份副本中的元数据的存储路径;该备份服务器根据该元数据的存储路径,从该存储设备中获取该元数据;该备份服务器根据该元数据,创建待读取的虚拟镜像对象;该备份服务器生成该创建的虚拟镜像对象的URL地址;该备份服务器向镜像服务器发送该创建的虚拟镜像对象的URL地址。通过上述方法,可以在备份服务器中虚拟出一个虚拟镜像对象。
在一种可能的设计中,该备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,获取待该读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,包括:该备份服务器根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,确定该待读取的虚拟镜像对象的标识;该备份服务器根据该待读取的虚拟镜像对象的标识,获取预先存储的该待读取的虚拟镜像对象中的元数据,该元数据包括该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图的存储路径和备份副本中备份数据的存储路径;该备份服务器根据该备份副本中备份数据的地址映射位图的存储路径,从该存储设备中获取该备份副本中备份数据的地址映射位图。即,本申请实施例中,备份服务器可以根据预先存储的该待读取的虚拟镜像对象中的元数据,获取该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径。
在一种可能的设计中,该备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,获取待该读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,包括:该备份服务器根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,确定该待读取的虚拟镜像对象的标识;该备份服务器根据该待读取的虚拟镜像对象的标识,获取预先存储的待该读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径。即,本申请实施例中,虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径在整个虚拟镜像对象的访问过程中可以仅获取一次,然后存储在备份服务器的本地,后续使用时,仅需根据待读取的虚拟镜像对象在备份服务器中URL地址,获取备份服务器中预先存储的待该读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径即可。
在一种可能的设计中,该备份服务器根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,从该存储设备中获取该目标数据,包括:该备份服务器根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,从该存储设备中获取需读取的备份数据;该备份服务器根据需读取的备份数据和该目标数据的地址范围,获取该目标数据。即,本申请实施例中,备份服务器可以首先从存储设备中获取需读取的备份数据,进而根据该需读取的备份数据和该目标数据的地址范围,获取该目标数据。
在一种可能的设计中,该备份服务器根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,从该存储设备中获取需读取的备份数据,包括:该备份服务器根据该目标数据的地址范围和备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据备份副本中备份数据的地址映射位图和存储路径,获取需读取的备份数据在存储设备中的存储路径;进而,备份服务器根据需读取的备份数据在存储设备中的存储路径,为需读取的备份数据创建数据读请求,其中,数据读请求中包括需读取的备份数据在存储设备中的存储路径;然后,该备份服务器向该存储设备发送数据读请求;该备份服务器接收该存储设备发送的需读取的备份数据。通过上述方式,可以从存储设备中获取需读取的备份数据。
在一种可能的设计中,该备份服务器根据该需读取的备份数据和该目标数据的地址范围,获取该目标数据,包括:若该目标数据的地址范围大于备份副本中备份数据对象的地址范围,该备份服务器组合该需读取的备份数据中不同的备份数据对象的数据,得到该目标数据。具体示例可参考具体实施方式部分,此处不再赘述。
在一种可能的设计中,该备份服务器根据该需读取的备份数据和该目标数据的地址范围,获取该目标数据,包括:若该目标数据的地址范围不大于备份副本中备份数据对象的地址范围,该备份服务器从该需读取的备份数据中截取该目标数据的地址范围对应的数据作为该目标数据。具体示例可参考具体实施方式部分,此处不再赘述。
在一种可能的设计中,该备份服务器根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,从该存储设备中获取该目标数据,包括:若该目标数据的地址范围不大于备份副本中备份数据对象的地址范围,该备份服务器根据该目标数据的地址范围和该备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据该备份副本中备份数据的地址映射位图和存储路径,获取该需读取的备份数据在存储设备中的存储路径;该备份服务器根据该需读取的备份数据在该存储设备中的存储路径,为该需读取的备份数据创建数据读请求,该数据读请求中包括该需读取的备份数据在该存储设备中的存储路径和该目标数据的地址范围;该备份服务器向该存储设备发送该数据读请求;该备份服务器接收该存储设备发送的该目标数据。也就是说,本申请实施例中,在从存储设备中读取数据时还可以采用分段读取的方式,或者指定更精细的地址范围。具体示例可参考具体实施方式部分,此处不再赘述。
第二方面,提供一种备份服务器,该备份服务器包括:对象存储呈现模块、输入输出IO截获分析模块和IO转发层;该对象存储呈现模块,用于存储存储设备中的备份副本对应的虚拟镜像对象和该虚拟镜像对象在该备份服务器中的统一资源定位符URL地址;该对象存储呈现模块,还用于接收该块存储服务器发送的读请求,该读请求包括待读取的虚拟镜像对象在该备份服务器中的URL地址和该待读取的虚拟镜像对象中目标数据的地址范围;该对象存储呈现模块,还用于根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,获取该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径;该IO截获分析模块,用于截获该对象存储呈现模块中的该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,并根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,通过该IO转发层从该存储设备中获取该目标数据;该对象存储呈现模块,还用于向该块存储服务器发送该IO截获分析模块获取的该目标数据。
在一种可能的设计中,该备份服务器还包括备份模块;该备份模块,用于在该对象存储呈现模块接收块存储服务器发送的读请求之前,获取该备份副本的标识;该备份模块,还用于根据该备份副本的标识,查询本地数据库,获取该备份副本中的元数据的存储路径;该对象存储呈现模块,还用于根据该备份模块获取的该元数据的存储路径,通过该IO转发层从该存储设备中获取该元数据;该对象存储呈现模块,还用于根据该元数据创建该待读取的虚拟镜像对象,并生成该创建的虚拟镜像对象的URL地址;该备份模块,还用于向镜像服务器发送该对象存储呈现模块创建的该虚拟镜像对象的URL地址。
在一种可能的设计中,该对象存储呈现模块根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,获取该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,包括:根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,确定该待读取的虚拟镜像对象的标识;根据该待读取的虚拟镜像对象的标识,获取该对象存储呈现模块中预先存储的该待读取的虚拟镜像对象中的元数据,该元数据包括该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图的存储路径和该备份副本中备份数据的存储路径;根据该备份副本中备份数据的地址映射位图的存储路径,通过该IO转发层从该存储设备中获取该备份副本中备份数据的地址映射位图。
在一种可能的设计中,该对象存储呈现模块根据该待读取的虚拟镜像对象在该备份服务器中的URL地址,获取该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,包括:根据该待读取的虚拟镜像对象在该备份服务器中URL地址,确定该待读取的虚拟镜像对象的标识;根据该待读取的虚拟镜像对象的标识,获取预先存储的该待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径。
在一种可能的设计中,该IO截获分析模块根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,通过该IO转发层从该存储设备中获取该目标数据,包括:根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,通过该IO转发层从该存储设备中获取需读取的备份数据;根据该需读取的备份数据和该目标数据的地址范围,获取该目标数据。
在一种可能的设计中,该IO截获分析模块根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,通过该IO转发层从该存储设备中获取需读取的备份数据,包括:根据该目标数据的地址范围和该备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据该备份副本中备份数据的地址映射位图和存储路径,获取该需读取的备份数据在该存储设备中的存储路径;根据该需读取的备份数据在该存储设备中的存储路径,为该需读取的备份数据创建数据读请求,其中,该数据读请求中包括该需读取的备份数据在该存储设备中的存储路径;通过该IO转发层向该存储设备发送该数据读请求;通过该IO转发层接收该存储设备发送的该需读取的备份数据。
在一种可能的设计中,该IO截获分析模块根据该需读取的备份数据和该目标数据的地址范围,获取该目标数据,包括:若该目标数据的地址范围大于备份副本中备份数据对象的地址范围,该IO截获分析模块组合该需读取的备份数据中不同的备份数据对象的数据,得到该目标数据。具体示例可参考具体实施方式部分,此处不再赘述。
在一种可能的设计中,该IO截获分析模块根据该需读取的备份数据和该目标数据的地址范围,获取该目标数据,包括:若该目标数据的地址范围不大于备份副本中备份数据对象的地址范围,该IO截获分析模块从该需读取的备份数据中截取该目标数据的地址范围对应的数据作为该目标数据。具体示例可参考具体实施方式部分,此处不再赘述。
在一种可能的设计中,该IO截获分析模块根据该目标数据的地址范围、该备份副本中备份数据的地址映射位图和存储路径,通过该IO转发层从该存储设备中获取该目标数据,包括:若该目标数据的地址范围不大于该备份副本中备份数据对象的地址范围,根据该目标数据的地址范围和该备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据该备份副本中备份数据的地址映射位图和存储路径,获取该需读取的备份数据在该存储设备中的存储路径;根据该需读取的备份数据在该存储设备中的存储路径,为该需读取的备份数据创建数据读请求,该数据读请求中包括该需读取的备份数据在该存储设备中的存储路径和该目标数据的地址范围;通过该IO转发层向该存储设备发送该数据读请求;通过该IO转发层接收该存储设备发送的该目标数据。
第三方面,提供一种备份服务器,包括:处理器、存储器、总线和通信接口;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该备份服务器运行时,该处理器执行该存储器存储的该计算机执行指令,以使该备份服务器执行如上述第一方面中任意一项所述的在云数据中心中实现数据转换的方法。
第四方面,提供一种计算机存储介质,用于储存为上述备份服务器所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。通过执行存储的程序,可以在云数据中心中实现数据转换的方法。
第五方面,提供一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行如上述第一方面中任意一项所述的在云数据中心中实现数据转换的方法。
第六方面,提供一种云数据中心系统,该云数据中心系统包括块存储设备、镜像服务器、存储设备、以及如第二方面或第三方面任意方面所述的备份服务器;其中,该镜像服务器,用于接收并存储该备份服务器发送的该创建的虚拟镜像对象的URL地址;该块存储服务器,用于从该镜像服务器中查询得到该创建的虚拟镜像对象的URL地址,并向该备份服务器发送读请求;该块存储服务器,还用于接收该备份服务器发送的目标数据,并根据目标数据创建虚拟机的云盘。
另外,第二方面至第五方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的混合云备份系统的逻辑框架图;
图2为本申请实施例提供的存储设备中数据对象的示意图;
图3为本申请实施例提供的备份服务器的结构示意图;
图4为本申请实施例提供的数据转换方法的流程示意图一;
图5为本申请实施例提供的数据转换的整体框架示意图;
图6为本申请实施例提供的创建虚拟镜像对象的流程示意图;
图7为本申请实施例提供的创建虚拟镜像对象的整体框架示意图;
图8为本申请实施例提供的备份服务器的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请的描述中,“多个”是指两个或多于两个。
本申请实施例提供一种在云数据中心中实现数据转换的方法,既可以适用于混合云备份系统,即将云下数据中心的数据备份到云数据中心时实现数据转换,也适用于云备份系统,即将云数据中心的数据备份到其他云数据中心时实现数据转换。本申请实施例中以混合云备份系统为例进行说明。
如图1所示,为本申请实施例提供的混合云备份系统的逻辑框架图。该混合云备份系统包括云下数据中心和云数据中心。其中,云下数据中心部署了VM和/或PM、容灾/迁移管理服务器、备份管理服务器和备份服务器1。云数据中心部署了备份服务器2、存储设备、镜像服务器和块存储服务器,其中存储设备是以对象存储的方式存储数据。下面将对云下数据中心和云数据中心的这些设备简要介绍如下:
VM/PM:为用户提供业务服务的机器,如文件服务器、数据库服务器等,可以以VM/PM的形式存在。
容灾/迁移管理服务器:控制整个容灾和数据迁移的流程。
备份管理服务器:用于调度备份相关任务到不同备份服务器的管理服务器。
备份服务器:执行备份相关任务的服务器。备份服务器可以有多个,分布在不同站点,都由同一个备份管理服务器管理。其中,这里的站点包括云下数据中心和云数据中心。如图1所示,备份服务器1分布在云下数据中心,备份服务器2分布在云数据中心。当然,图1中仅是示例性的给出了2个备份服务器,本申请实施例不对备份服务器的数量做具体限定。
存储设备:存储设备部署在云数据中心,采用对象存储的技术来存储数据。可以以对象存储的方式为云下租户提供存储服务,也可以以对象存储的方式为云上服务器提供存储服务。如亚马逊云服务(mazon Web Services,AWS)的S3等。
镜像服务器:用于管理云主机镜像的服务器。其中,云主机镜像是指根据镜像对象,在云数据中心创建虚拟机。而本申请实施例中备份服务器创建一个虚拟镜像对象,对外以对象存储的接口方式呈现。虚拟镜像对象对外呈现出来与镜像对象相同,与镜像对象相比较,虚拟镜像对象中只包含元数据对象,不包含备份数据对象,并且虚拟镜像对象中的元数据对象中的数据对象的存储路径指向存储设备中的备份副本的数据对象。而镜像对象中除了包含元数据对象,还包含备份数据对象,并且元数据对象中的数据对象的存储路径指向镜像对象中的数据对象。因此,本申请实施例中,云主机镜像实际是指根据虚拟镜像对象,在云数据中心创建虚拟机。另外,由于创建虚拟机的核心在于在云数据中心创建虚拟机的云盘,因此本申请实施例中,云主机镜像的核心在于根据虚拟镜像对象,在云数据中心创建虚拟机的云盘。本申请实施例中,该镜像服务器记录了每一个虚拟镜像对象的统一资源定位符(Uniform Resource Locator,URL)地址,如备份-2的虚拟镜像对象的URL地址可以为:http://BackupServer-IP//IMG-objectID-Backup-2。其中,BackupServer-IP是指虚拟了该虚拟镜像对象的备份服务器的IP地址;IMG-objectID-Backup-2是指备份-2的虚拟镜像对象的标识(Identity,ID)。另外,镜像服务器还记录了该虚拟镜像对象的一些元数据信息,比如虚拟镜像对象的标识,虚拟镜像对象的格式,大小等。其中,本申请实施例中,在云数据中心创建虚拟机,特别是虚拟机的云盘时,需要基于虚拟镜像对象创建。所有的虚拟机镜像对象都由镜像服务器管理,它提供镜像对象注册和查询等服务。
块存储服务器:用于创建虚拟机的云盘的服务器。一般是从镜像服务器获取镜像对象的地址,根据镜像对象的地址从存储设备中获取镜像对象的数据来创建虚拟机的盘。本申请实施例中,该镜像对象的地址具体是指虚拟镜像对象的URL地址。
下面将基于上述云下数据中心和云数据中心的设备给出混合云备份系统中创建虚拟机的云盘的流程的简要说明。在本方法实施例中,备份服务器1位于云下数据中心中,备份服务器2位于云数据中心中。具体实现流程如下:
S1、容灾/迁移管理服务器向备份管理服务器发送备份指定VM/PM的请求,请求中携带指定VM/PM的标识及备份的目的地址。其中,本申请实施例中,备份的目的地址实际上是存储设备的URL地址。
S2、备份管理服务器向备份服务器1发送指令,该指令指示备份服务器1根据VM/PM的标识及备份的目的地址,将指定VM/PM的盘数据以对象的形式备份到云数据中心的存储设备中。
S3、备份服务器1将指定VM/PM的盘的数据备份到云数据中心的存储设备中,得到备份副本。其中,该备份副本在存储设备中的格式仅为备份服务器1中的备份软件可识别。备份服务器1会自动产生备份数据对象的名字,并结合存储设备的URL地址得到备份数据对象的存储路径。比如,若存储设备的URL地址为http://IP,备份数据对象的名字为对象(Object)-1,则备份数据对象的存储路径为http://IP/Object-1。
具体的,本申请实施例中,一次备份产生的备份数据称为一个备份副本,一个备份副本中包括多个备份数据对象。比如,备份数据对象包括多个备份数据对象、备份数据的地址映射位图对象(以下简称地址映射位图对象)以及一个备份副本的元数据对象。其中,每个备份数据对象中的数据为备份数据,多个备份数据对象中的备份数据的地址按照数据在原虚拟机或者物理机的盘上的地址位置递增。地址映射位图对象的数据为地址映射位图,元数据对象的数据为元数据。典型的备份数据被分割为若干大小相等的数据块,每个数据块为存储设备中的一个备份数据对象;地址映射位图指明虚拟机某个盘的某次备份要形成完整的盘所需包含哪些备份数据对象;元数据包含了本次备份的虚拟机盘的大小、备份副本时间点和备份副本的存储路径等。其中,这里备份副本的存储路径实际上是存储设备的URL地址,例如可以是http://IP。
如图2所示,以大小为32MB的盘,每4MB被划分为一个对象为例解释虚拟机某个盘备份过程如下:
第一次备份时产生的多个备份数据对象中的备份数据的地址按照数据在原虚拟机或者物理机的盘上的地址位置递增,依次是备份-1-1到备份-1-8。其中,备份-1-1为第一次备份的第一个备份数据对象,保存的是盘的0~4MB范围的数据;备份-1-2为第一次备份的第二个备份数据对象,保存的是盘的5~8MB地址范围的数据,以此类推。经过第一次备份之后,备份数据包括备份-1-1的数据A、备份-1-2的数据B、备份-1-3的数据C、备份-1-4的数据D、备份-1-5的数据F、备份-1-6的数据E、备份-1-7的数据G和备份-1-8的数据H。
第一次备份时产生的地址映射位图也是以对象的方式存储在存储设备中。该地址映射位图中包含了该次备份要形成完整的盘所需包含的所有备份数据对象的名称,并且按照数据在原虚拟机或者物理机的盘上的地址位置,依次存放,如图2中的备份-1-1、备份-1-2、备份-1-3、备份-1-4、备份-1-5、备份-1-6、备份-1-7和备份-1-8。
第二次备份时产生的备份数据对象中只有两个发生了变化,但是第二次备份产生的地址映射位图,仍然包含了形成备份-2时间点完整的盘所需包括的所有备份数据对象的名称,如图2中的备份-2-1、备份-2-2、备份-1-3、备份-1-4、备份-1-5、备份-1-6、备份-1-7和备份-1-8。其中,备份-2-1为第二次备份的第一个备份数据对象,保存的是盘的0~4MB范围的数据,备份-2-2为第二次备份的第二个备份数据对象,保存的是盘的5~8MB范围的数据,以此类推。
由于第二次备份时产生的备份数据对象只有两个发生了变化,因此经过第二次备份之后,备份数据包括备份-2-1的数据A1、备份-2-2的数据B1、备份-1-3的数据C、备份-1-4的数据D、备份-1-5的数据F、备份-1-6的数据E、备份-1-7的数据G和备份-1-8的数据H。
也就是说,在两次的备份过程中,备份数据如图2所示,包括备份-1-1的数据A、备份-1-2的数据B、备份-1-3的数据C、备份-1-4的数据D、备份-1-5的数据F、备份-1-6的数据E、备份-1-7的数据G、备份-1-8的数据H、备份-2-1的数据A1和备份-2-2的数据B1。
根据上述对备份副本的定义,则该示例中的备份副本包括图2中的备份数据对象、地址映射位图对象和元数据对象。
S4、备份服务器1通过备份管理服务器向容灾/迁移管理服务器发送该备份数据对象的路径。
S5、容灾/迁移管理服务器通过备份管理服务器向云数据中心的备份服务器2发送指令,指令中携带备份副本的标识,用于指示备份服务器2对存储设备中该备份副本的备份数据对象进行格式转换,转换为块存储服务器能够识别的镜像对象。
S6、备份服务器2根据选定的备份副本,创建虚拟镜像对象,并通过备份管理服务器向容灾/迁移管理服务器发送该虚拟镜像对象的URL地址。该过程将在本申请的下述虚拟镜像对象的创建过程中重点描述,此处不再赘述。
S7、容灾/迁移管理服务器向镜像服务器发送镜像注册指令,该指令中包含该虚拟镜像对象的URL地址和镜像格式类型,该镜像格式类型例如可以是裸盘(Raw Disk),开放虚拟化格式(Open Virtualization Forma,OVF)、或者开放虚拟化设备(OpenVirtualization Appliance,OVA),等等。其中,本申请实施例中以该镜像格式类型为RawDisk格式为例进行说明,在此进行统一说明,以下不再赘述。
S8、镜像服务器对该虚拟镜像对象进行注册,即记录该虚拟镜像对象的URL地址和类型,并为该虚拟镜像对象分配镜像ID。
S9、镜像服务器向容灾/迁移管理服务器发送为该虚拟镜像对象分配的镜像ID。
S10、容灾/迁移管理服务器向块存储服务器发送创建云盘的指示消息,该指示消息中携带镜像服务器为该虚拟镜像对象分配的镜像ID。
S11、块存储服务器根据该镜像ID,从镜像服务器中查询得到虚拟镜像对象的URL地址,进而创建虚拟机的云盘。该过程将在本申请的下述数据转换方法中重点描述,此处不再赘述。
其中,在上述步骤S11中,如何缩短备份数据对象的转换时间,并且减少用户在云数据中心的存储成本,是本申请实施例需要重点解决的技术问题,下面将对此进行展开说明。
本申请实施例提供的在云数据中心实现数据转换的方法主要通过图1中云数据中心的备份服务器2来实现。如图3所示,为本申请实施例提供的备份服务器30的结构示意图。该备份服务器30包括:备份模块31、对象存储呈现模块32、IO截获分析模块33和IO转发层34。下面分别对各个模块进行简要介绍如下:
备份模块31,用于接收备份管理服务器的备份、恢复等指令,完成备份、恢复任务。另外,在本申请实施例中,备份模块31还参与了创建虚拟镜像对象的任务。
对象存储呈现模块32,用于对外以对象存储的接口方式呈现一个虚拟的存储设备。具体的,该对象存储呈现模块32包括Http服务器组件321、对象存储设备(ObjectStorage Device,OSD)组件322和元数据(MetaData)管理组件323。
其中,元数据管理组件323中存储了虚拟镜像对象的大小、创建时间等元数据。
OSD组件322逻辑上是存储数据的组件,提供的数据访问接口是http接口,存储的数据是对象,不是块或者文件。OSD组件322以具象状态传输(Representational StateTransfer,REST)的接口的PUT/Get方法等,上传或下载对象数据。本申请实施例中,OSD组件322并不真正存储对象数据,主要用于协助IO截获分析模块33进行截获分析。
Http服务器组件321用于响应对象存储访问http客户端341的各种http访问请求,包括上传、下载对象数据的http访问请求。
IO截获分析模块33,用于对读请求的截获和IO范围分析。本申请实施例中的读请求用于读取虚拟镜像对象中的数据。该读请求包括待读取的虚拟镜像对象在备份服务器中的URL地址和待读取的虚拟镜像对象中目标数据的地址范围。如该读请求可以是:对http://BackupServer-IP//IMG-objectID-Backup-2所对应虚拟镜像对象中0~8MB地址的数据进行Get操作。其中,待读取的虚拟镜像对象在备份服务器中的URL地址为http://BackupServer-IP//IMG-objectID-Backup-2,目标数据的地址范围为0~8MB。具体的,该IO截获分析模块33包括IO截获组件331和IO分析组件332。
其中,IO截获组件331用于在OSD组件322获取到读请求后,截获该读请求,将该读请求发送给IO分析组件332。
IO分析组件332,用于分析读请求中目标数据的地址范围,结合备份副本中备份数据的地址映射位图和存储路径,将该读请求分解成一个或多个对存储设备的基于http协议的请求。
另外,IO分析组件332,还用于在接收到存储设备发送的需读取的备份数据之后,根据需读取的备份数据和目标数据的地址范围,获取目标数据,进而将该目标数据发送给IO截获组件331,通过IO截获组件331返回给OSD组件322。其中,IO分析组件332根据需读取的备份数据和目标数据的地址范围,获取目标数据的具体实现可参考图4所示的方法实施例中的描述,此处不再赘述。
或者,IO分析组件332,还用于在接收到存储设备发送的目标数据之后,将该目标数据发送给IO截获组件331,通过IO截获组件331返回给OSD组件322。具体可参考图4所示的方法实施例中的描述,此处不再赘述。
IO转发层34,包含一个对象存储访问http客户端341,用于转发对存储设备的http请求;在获取需读取的备份数据或者目标数据之后,将需读取的备份数据或者目标数据转给IO分析组件332。
下面将基于本申请实施例提供的备份服务器30,给出本申请实施例提供的在云数据中心实现数据转换的方法。其中,备份服务器30中存储有存储设备中的备份副本对应的虚拟镜像对象和虚拟镜像对象在备份服务器中的URL地址。如图4所示,在云数据中心实现数据转换的方法包括如下步骤:
S401、备份服务器接收块存储服务器发送的读请求,该读请求包括待读取的虚拟镜像对象在备份服务器中的URL地址和待读取的虚拟镜像对象中目标数据的地址范围。
其中,如上述步骤S6中所述,本申请实施例中,备份服务器需要根据选定的备份副本,创建虚拟镜像对象,具体创建过程将在下述实施例中描述,此处不再赘述。
其中,块存储服务器中的虚拟镜像对象的URL地址是由块存储服务器在接收到容灾/迁移管理服务器发送的创建云盘的指示消息之后,根据指示消息中携带的镜像服务器为该虚拟镜像对象分配的镜像ID,从镜像服务器中查询得到的(参见上述步骤S11),而镜像服务器中的虚拟镜像对象的URL地址是由备份服务器30生成,并通过备份管理服务器发送给容灾/迁移管理服务器之后,再经过上述步骤S7和S8得到的。比如,若以备份-2的虚拟镜像对象的URL地址为例,该虚拟镜像对象的URL地址可以是Http://BackupServer-IP/IMG-objectID-Backup-2。
其中,目标数据的地址范围指示要传输的镜像对象数据的范围,比如0~8MB地址的数据。
具体的,结合图3所示的备份服务器30,图5给出了备份服务器30在云数据中心实现数据转换的整体框架示意图。其中,备份服务器30中的Http服务器组件321用于支持备份服务器30执行本申请实施例中的步骤S401。
S402、备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,获取待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径。
可选的,备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,获取待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,具体可以包括:备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,确定待读取的虚拟镜像对象的标识;进而,备份服务器根据待读取的虚拟镜像对象的标识,获取预先存储的待读取的虚拟镜像对象中的元数据,该元数据包括待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图的存储路径和备份副本中备份数据的存储路径;进而,备份服务器根据备份副本中备份数据的地址映射位图的存储路径,从存储设备中获取备份副本中备份数据的地址映射位图。
比如,如图5所示,若待读取的虚拟镜像对象的URL地址可以是Http://BackupServer-IP/IMG-objectID-Backup-2,则Http服务器组件321接收到读请求之后,可以从待读取的虚拟镜像对象的URL地址中,分析出待读取的虚拟镜像对象的标识为IMG-objectID-Backup-2,也就是备份-2对应的虚拟镜像对象。进而Http服务器组件321可以向OSD组件322发送数据获取指令,该数据获取指令中携带该待读取的虚拟镜像对象的标识和目标数据的地址范围。OSD组件322在接收到数据获取指令之后,可以根据数据获取指令中携带的待读取的虚拟镜像对象的标识,从元数据管理组件323中获取该待读取的虚拟镜像对象中备份-2的元数据,包括:待读取的虚拟镜像对象对应的备份-2的地址映射位图的存储路径和备份-2的备份数据的存储路径。进而,OSD组件322可以通过对象存储访问http客户端341向真实存储设备发送地址映射位图的获取请求并获取到备份-2的地址映射位图。
需要说明的是,备份副本中备份数据的地址映射位图和存储路径在整个虚拟镜像对象的访问过程中可以仅获取一次,然后存储在备份服务器30的本地,后续使用时,仅需根据待读取的虚拟镜像对象在备份服务器中URL地址,获取备份服务器30中预先存储的待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径即可。
可选的,备份服务器中还可能存储备份副本在存储设备中的URL地址。备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,获取待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,具体可以包括:备份服务器根据待读取的虚拟镜像对象在备份服务器中的URL地址,获得待读取的虚拟镜像对象对应的备份副本在存储设备中的URL地址,根据待读取的虚拟镜像对象对应的备份副本在存储设备中的URL地址,从存储设备中获取待读取的虚拟镜像对象对应的备份副本中的元数据,元数据包括备份数据的地址映射位图的存储路径和备份数据的存储路径。
比如,如图5所示,若待读取的虚拟镜像对象的URL地址可以是Http://BackupServer-IP/IMG-objectID-Backup-2,则Http服务器组件321接收到读请求之后,可以根据待读取的虚拟镜像对象的URL地址,获得待读取的虚拟镜像对象对应的备份副本在存储设备中的URL地址,例如可以是
http://object-storage/objectID-Backup-2,即备份-2在存储设备中的URL地址。进而可以Http服务器组件321可以向OSD组件322发送数据获取指令,该数据获取指令中携带备份-2在存储设备中的URL地址和目标数据的地址范围。OSD组件322在接收到数据获取指令之后,可以根据备份-2在存储设备中的URL地址,通过对象存储访问http客户端341从存储设备中获取备份-2的元数据,元数据包括备份-2的地址映射位图的存储路径和备份-2的备份数据的存储路径。
S403、备份服务器根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,从存储设备中获取目标数据。
一种可能的实现方式中,备份服务器根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,从存储设备中获取目标数据,具体可以包括:备份服务器根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,从存储设备中获取需读取的备份数据;备份服务器根据需读取的备份数据和目标数据的地址范围,获取目标数据。
具体的,如图5所示,IO截获组件331截获OSD组件322向对象存储访问http客户端341发送的数据获取指令,将该数据获取指令发送给IO分析组件332。其中,如上所述,该数据获取指令中携带该虚拟镜像对象的标识和目标数据的地址范围,比如0~8MB地址。进而,IO分析组件332根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,通过对象存储访问http客户端341从存储设备中获取需读取的备份数据,并根据需读取的备份数据和目标数据的地址范围,获取目标数据。
其中,可选的,IO分析组件332根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,通过对象存储访问http客户端341从存储设备中获取需读取的备份数据,包括:IO分析组件332根据目标数据的地址范围和备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据备份副本中备份数据的地址映射位图和存储路径,获取需读取的备份数据在存储设备中的存储路径,进而根据需读取的备份数据在存储设备中的存储路径,为该需读取的备份数据创建数据读请求,其中,该数据读请求中包括需读取的备份数据在存储设备中的存储路径。进而,IO分析组件332通过对象存储访问http客户端341向存储设备发送该数据读请求;并通过对象存储访问http客户端341接收存储设备发送的需读取的备份数据。
示例性的,有一种情况是要获取的目标数据的地址范围大于备份副本中备份数据对象的地址范围,比如,以要获取备份-2的0~8MB的数据为例进行说明。则如图5所示,根据备份-2的地址映射位图,0~8MB的数据在两个不同的备份数据对象中,分别为“备份-2-1”(对应数据为A1),和“备份-2-2”(对应数据为B1),因此IO分析组件332要将数据获取指令拆为两个数据读请求通过对象存储访问http客户端341向存储设备发送,如:对http://object-storage/objectID-Backup-2-1所对应的备份数据对象中的数据进行Get操作;以及,对
http://object-storage/objectID-Backup-2-2所对应的备份数据对象中的数据进行Get操作。进而,备份服务器的IO分析组件332会通过对象存储访问http客户端341接收存储设备发送的“备份-2-1”的数据和“备份-2-2”的数据。
另有一种情况是要获取的目标数据的地址范围不大于备份副本中备份数据对象的地址范围,比如,以要获取备份-2的0~2MB的数据为例进行说明。则如图5所示,根据备份-2的地址映射位图,0~2MB的数据在“备份-2-1”(对应数据为A1)中,因此IO分析组件332通过对象存储访问http客户端341向存储设备发送一个数据读请求,如:对http://object-storage/objectID-Backup-2-1所对应的备份数据对象中的数据进行Get操作。
需要说明的是,在上述要获取的目标数据的地址范围大于备份副本中备份数据对象的地址范围的情况下,可能要获取的目标数据不一定是多个备份数据对象中的全部数据,比如,要获取备份-2的0~6MB的数据,则如图5所示,根据备份-2的地址映射位图,0~6MB的数据在两个不同的备份数据对象中,分别为“备份-2-1”(对应数据为A1),和“备份-2-2”(对应数据为B1),此时IO分析组件332仍要将数据获取指令拆为两个数据读请求进行处理,具体可参考上述第一种情况的实现方式,本申请实施例在此不再赘述。
其中,可选的,IO分析组件332根据需读取的备份数据和目标数据的地址范围,获取目标数据,具体可以包括:若目标数据的地址范围大于备份副本中备份数据对象的地址范围,IO分析组件332组合需读取的备份数据中不同的备份数据对象的备份数据,得到目标数据。
比如,接上述示例,若以要获取备份-2的0~8MB的数据为例进行说明,则如图5所示,IO分析组件332在通过对象存储访问http客户端341接收存储设备发送的“备份-2-1”的数据和“备份-2-2”的数据之后,可以将“备份-2-1”的数据和“备份-2-2”的数据进行组合,得到备份-2的0~8MB的数据,即目标数据。
或者,可选的,IO分析组件332根据需读取的备份数据和目标数据的地址范围,获取目标数据,具体可以包括:若目标数据的地址范围不大于备份副本中备份数据对象的地址范围,IO分析组件332从需读取的备份数据中截取目标数据的地址范围对应的数据作为目标数据。
比如,接上述示例,若以要获取备份-2的0~2MB的数据为例进行说明,则如图5所示,IO分析组件332在通过对象存储访问http客户端341接收存储设备发送的“备份-2-1”的数据,由于“备份-2-1”的数据为备份-2的0~4MB的数据,因此,IO分析组件332可以从“备份-2-1”的数据中截取0~2MB的数据作为目标数据。
需要说明的是,在上述要获取的目标数据的地址范围大于备份副本中备份数据对象的地址范围的情况下,可能要获取的目标数据不一定是多个备份数据对象中的全部数据,比如,要获取备份-2的0-6MB的数据,则如图5所示,IO分析组件332在通过对象存储访问http客户端341接收存储设备发送的“备份-2-1”的数据和“备份-2-2”的数据之后,由于“备份-2-2”的数据为备份-2的5~8MB的数据,因此,若IO分析组件332直接将“备份-2-1”的数据和“备份-2-2”的数据进行组合,得到的是备份-2的0~8MB的数据,此时可以从“备份-2-2”的数据中截取5~6MB的数据之后,再将备份-2的5~6MB的数据与“备份-2-1”的数据进行组合,从而得到备份-2的0~6MB的数据,即目标数据。本申请实施例对该情况不作具体限定,具体可结合上述两种实现方式进行实现。
一种可能的实现方式中,备份服务器根据目标数据的地址范围、备份副本中备份数据的地址映射位图和存储路径,从存储设备中获取目标数据,具体可以包括:若目标数据的地址范围不大于备份副本中备份数据对象的地址范围,备份服务器根据目标数据的地址范围、备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据所述备份副本中备份数据的地址映射位图和存储路径,获取需读取的备份数据在存储设备中的存储路径;进而,备份服务器根据需读取的备份数据在存储设备中的存储路径,为需读取的备份数据创建数据读请求,该数据读请求中包括需读取的备份数据在存储设备中的存储路径和目标数据的地址范围;备份服务器向所述存储设备发送该数据读请求;备份服务器接收存储设备发送的目标数据。
也就是说,本申请实施例中,在从存储设备中读取数据时还可以采用分段读取的方式,或者指定更精细的地址范围。
比如,图5所示,IO截获组件331截获OSD组件322向对象存储访问http客户端341发送的数据获取指令,将该数据获取指令发送给IO分析组件332。其中,如上所述,该数据获取指令中携带该虚拟镜像对象的标识和目标数据的地址范围,比如,以要获取备份-2的0~2MB的数据为例进行说明,则该目标数据的地址范围是0~2MB。进而,IO分析组件332根据图5中备份-2的地址映射位图可以确定0~2MB的数据在“备份-2-1”(对应数据为A1)中,因此IO分析组件332通过对象存储访问http客户端341向存储设备发送一个数据读请求,如:对
http://object-storage/objectID-Backup-2-1所对应的备份数据对象中0~2MB的数据进行Get操作。进而,IO分析组件332可以直接通过对象存储访问http客户端341接收存储设备发送的“备份-2-1”中0~2MB的数据,即目标数据。
S404、备份服务器向块存储服务器发送目标数据。
具体的,IO分析组件332可以将该目标数据发送给IO截获组件331,通过IO截获组件331将该目标数据发送给OSD组件322,进而再通过Http服务器组件321发送给块存储服务器。
需要说明的是,图5所示的备份服务器30中仅是示意出了在云数据中心实现图4所示的实施例提供的数据转换的方法的过程中所需的功能模块和交互关系,显然,这仅仅是图3所示的备份服务器30中的一部分。
如图6所示,在步骤S401之前,还可以包括上述步骤S6中的虚拟镜像对象创建过程,即根据选定的备份副本,最终由备份服务器呈现出一个虚拟的镜像对象的访问路径。如将备份-2转换为一个虚拟镜像对象的访问路径:
Http://BackupServer-IP/IMG-objectID-Backup-2,下面将结合图3所示的备份服务器30说明该虚拟镜像对象的创建过程,过程如下:
S601、备份服务器接收备份管理服务器发送的指令,指令中携带备份副本的标识,如备份-2,该指令用于指示备份服务器对存储设备中该备份副本的备份数据对象进行格式转换,转换为块存储服务器能够识别的镜像对象。
S602、备份服务器根据备份副本的标识,查询本地数据库,获取备份副本中的元数据的存储路径。
具体的,本地数据库一般是备份服务器中的基本配置,通常包括各个备份副本的元数据的存储路径,本申请实施例对此不做详细阐述。
具体的,结合图3所示的备份服务器30,图7给出了在备份服务器30中创建虚拟镜像对象的整体框架示意图。其中,备份服务器30中的备份模块31用于支持备份服务器30执行本申请实施例中的步骤S601和S602。
S603、备份服务器根据元数据的存储路径,从存储设备中获取元数据。
具体的,如图7所示,备份服务器30中的备份模块31将元数据的存储路径发送给元数据管理组件323,进而,元数据管理组件323可以通过对象存储访问http客户端341获取备份副本标识为备份-2的备份副本中的元数据,并存储该元数据。其中,如图7所示,该元数据可以包括磁盘大小、备份副本时间点和备份副本存储路径等。
S604、备份服务器根据元数据创建待读取数据的虚拟镜像对象,并生成该创建的虚拟镜像对象的URL地址。
具体的,如图7所示,备份服务器30中的元数据管理组件323可以根据元数据生成一条虚拟镜像对象记录。该虚拟镜像对象记录的信息可以包括:虚拟镜像对象的标识、大小和URL地址。其中,虚拟镜像对象的标识是元数据管理组件323自行为新对象分配的;待读取数据的虚拟镜像对象的URL地址是元数据管理组件323通过如下方式生成的:
备份服务器30中的元数据管理组件323可以在备份服务器30本地产生一个本地文件,该本地文件中无数据,只用于占位,以辅助元数据管理组件323产生虚拟镜像对象的URL地址。其中,该本地文件可以命名为IMG-objectID-Backup-2,即备份-2的虚拟镜像对象的标识,进而元数据管理组件323可以生成备份-2的虚拟镜像对象的URL地址可以为:Http://BackupServer-IP/IMG-objectID-Backup-2。其中,BackupServer-IP是指虚拟了该虚拟镜像对象的备份服务器的IP地址;
IMG-objectID-Backup-2是指备份-2的虚拟镜像对象的标识。
需要说明的是,本申请实施例中,生成虚拟镜像对象记录的过程就是创建虚拟镜像对象的过程,在此进行统一说明,以下不再赘述。
S605、备份服务器通过备份管理服务器向容灾/迁移管理服务器发送创建的虚拟镜像对象的URL地址。
具体的,如图7所示,在备份服务器30中的元数据管理组件323生成该创建的虚拟镜像对象的URL地址之后,可以将该创建的虚拟镜像对象的URL地址发送给备份模块31,由备份模块31发送给备份管理服务器,进而通过备份管理服务器发送给容灾/迁移管理服务器。
需要说明的是,图7中的备份服务器30中仅是示意出了虚拟机的云磁盘的创建过程中,图6所示的实施例提供的创建虚拟镜像对象的过程中所需的功能模块和交互关系,显然,这仅仅是图3所示的备份服务器30中的一部分。
基于本申请实施例提供的在云数据中心实现数据转换的方法,一方面,由于本申请实施例中,是由备份服务器虚拟出一个虚拟镜像对象,而不是在存储设备中产生真正的镜像对象,因此可以节省用户在存储设备中的存储空间,从而减少用户在云数据中心的存储成本。另一方面,本申请实施例中,块存储设备可以通过备份服务器直接读取存储设备中的备份数据,而不是备份服务器先从存储设备中读取备份副本,然后再下发写操作到存储设备中,形成镜像对象,再由块存储设备从镜像对象中读取备份数据,因此可以在创建虚拟机的云磁盘时,消除因为产生真实镜像对象所消耗的读IO和写IO,从而缩短备份数据对象的转换时间。
上述主要从方法结合软件模块的角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述计算机设备为了实现上述功能,其包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
如图8所示,为本申请实施例提供的一种备份服务器的硬件结构示意图,该备份服务器800包括至少一个处理器801,通信总线802,存储器803以及至少一个通信接口804。
处理器801可以是一个通用中央处理器(Central Processing Unit,CPU),微处理器,特定应用集成电路(Application-Specific Integrated Circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信总线802可包括一通路,在上述组件之间传送信息。
通信接口804,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(Radio Access Network,RAN),无线局域网(Wireless Local AreaNetworks,WLAN)等。
存储器803可以是只读存储器(Read-Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器803用于存储执行本申请方案的应用程序代码,并由处理器801来控制执行。处理器801用于执行存储器803中存储的应用程序代码,从而实现上述实施例中所述的在云数据中心中实现数据转换的方法。
在具体实现中,作为一种实施例,处理器801可以包括一个或多个CPU,例如图8中的CPU0和CPU1。
在具体实现中,作为一种实施例,备份服务器800可以包括多个处理器,例如图8中的处理器801和处理器808。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,备份服务器800还可以包括输出设备805和输入设备806。输出设备805和处理器801通信,可以以多种方式来显示信息。例如,输出设备805可以是液晶显示器(Liquid Crystal Display,LCD),发光二级管(Light Emitting Diode,LED)显示设备,阴极射线管(Cathode Ray Tube,CRT)显示设备,或投影仪(projector)等。输入设备806和处理器801通信,可以以多种方式接受用户的输入。例如,输入设备806可以是鼠标、键盘、触摸屏设备或传感设备等。
上述的备份服务器800可以是一个通用备份服务器或者是一个专用备份服务器。在具体实现中,备份服务器800可以是台式机、便携式电脑、网络服务器、掌上电脑(Personal Digital Assistant,PDA)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备或有图8中类似结构的设备。本申请实施例不限定备份服务器800的类型。
由于本申请实施例提供的备份服务器可用于执行上述在云数据中心中实现数据转换的方法,因此其所能获得的技术效果可参考上述方法实施例,本申请实施例在此不再赘述。
本申请实施例还提供了一种计算机存储介质,用于储存为上述备份服务器所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。通过执行存储的程序,可以在云数据中心中实现数据转换的方法。
本申请实施例还提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行上述方法实施例的流程。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信系统。
本申请是参照本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (16)

1.一种在云数据中心中存储数据的方法,所述云数据中心包括存储设备和备份服务器,其特征在于,
所述存储设备存储数据对象;
当收到备份请求时,所述备份服务器创建源对象的虚拟镜像对象,所述虚拟镜像对象对外以对象存储的接口方式呈现,所述虚拟镜像对象包含元数据对象,不包含数据对象,所述元数据对象指向所述存储设备中的数据对象。
2.根据权1所述的方法,其特征在于,所述云数据中心还包括镜像服务器,所述方法还包括:
所述备份服务器创建所述虚拟镜像对象的URL地址;
所述备份服务器将所述URL地址发送给所述镜像服务器;
所述镜像服务器存储所述URL地址。
3.根据权2所述的方法,其特征在于,所述云数据中心还包括块存储服务器,所述方法还包括:
所述备份服务器接收所述块存储服务器发送的读请求,所述读请求包括待读取的虚拟镜像对象在所述备份服务器中的URL地址和所述待读取的虚拟镜像对象中目标数据的地址范围;
所述备份服务器根据所述待读取的虚拟镜像对象在所述备份服务器中的URL地址,获取所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径;
所述备份服务器根据所述目标数据的地址范围、所述备份副本中备份数据的地址映射位图和存储路径,从所述存储设备中获取所述目标数据;
所述备份服务器向所述块存储服务器发送所述目标数据。
4.根据权利要求3所述的方法,其特征在于,在所述备份服务器接收块存储服务器发送的读请求之前,还包括:
所述备份服务器获取所述备份副本的标识;
所述备份服务器根据所述备份副本的标识,查询本地数据库,获取所述备份副本中的元数据的存储路径;
所述备份服务器根据所述元数据的存储路径,从所述存储设备中获取所述元数据;
所述备份服务器根据所述元数据创建所述待读取的虚拟镜像对象;
所述备份服务器向镜像服务器发送所述创建的虚拟镜像对象的URL地址。
5.根据权利要求3或4所述的方法,其特征在于,所述备份服务器根据所述待读取的虚拟镜像对象在所述备份服务器中的URL地址,获取所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,包括:
所述备份服务器根据所述待读取的虚拟镜像对象在所述备份服务器中的URL地址,确定所述待读取的虚拟镜像对象的标识;
所述备份服务器根据所述待读取的虚拟镜像对象的标识,获取预先存储的所述待读取的虚拟镜像对象中的元数据,所述元数据包括所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图的存储路径和所述备份副本中备份数据的存储路径;
所述备份服务器根据所述备份副本中备份数据的地址映射位图的存储路径,从所述存储设备中获取所述备份副本中备份数据的地址映射位图。
6.根据权利要求3或4所述的方法,其特征在于,所述备份服务器根据所述待读取的虚拟镜像对象在所述备份服务器中的URL地址,获取所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径,包括:
所述备份服务器根据所述待读取的虚拟镜像对象在所述备份服务器中URL地址,确定所述待读取的虚拟镜像对象的标识;
所述备份服务器根据所述待读取的虚拟镜像对象的标识,获取预先存储的所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径。
7.根据权利要求3所述的方法,其特征在于,所述备份服务器根据所述目标数据的地址范围、所述备份副本中备份数据的地址映射位图和存储路径,从所述存储设备中获取所述目标数据,包括:
所述备份服务器根据所述目标数据的地址范围、所述备份副本中备份数据的地址映射位图和存储路径,从所述存储设备中获取需读取的备份数据;
所述备份服务器根据所述需读取的备份数据和所述目标数据的地址范围,获取所述目标数据。
8.根据权利要求7所述的方法,其特征在于,所述备份服务器根据所述目标数据的地址范围、所述备份副本中备份数据的地址映射位图和存储路径,从所述存储设备中获取需读取的备份数据,包括:
所述备份服务器根据所述目标数据的地址范围和所述备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据所述备份副本中备份数据的地址映射位图和存储路径,获取所述需读取的备份数据在所述存储设备中的存储路径;
所述备份服务器根据所述需读取的备份数据在所述存储设备中的存储路径,为所述需读取的备份数据创建数据读请求,其中,所述数据读请求中包括所述需读取的备份数据在所述存储设备中的存储路径;
所述备份服务器向所述存储设备发送所述数据读请求;
所述备份服务器接收所述存储设备发送的所述需读取的备份数据。
9.根据权利要求3所述的方法,其特征在于,所述备份服务器根据所述目标数据的地址范围、所述备份副本中备份数据的地址映射位图和存储路径,从所述存储设备中获取所述目标数据,包括:
若所述目标数据的地址范围不大于所述备份副本中备份数据对象的地址范围,所述备份服务器根据所述目标数据的地址范围和所述备份副本中备份数据的地址映射位图确定需读取的备份数据,再根据所述备份副本中备份数据的地址映射位图和存储路径,获取所述需读取的备份数据在所述存储设备中的存储路径;
所述备份服务器根据所述需读取的备份数据在所述存储设备中的存储路径,为所述需读取的备份数据创建数据读请求,所述数据读请求中包括所述需读取的备份数据在所述存储设备中的存储路径和所述目标数据的地址范围;
所述备份服务器向所述存储设备发送所述数据读请求;
所述备份服务器接收所述存储设备发送的所述目标数据。
10.一种云数据中心,其特征在于,包括存储设备和备份存储器;
所述存储设备用于存储数据对象;
所述备份服务器用于当收到备份请求时,创建源对象的虚拟镜像对象,所述虚拟镜像对象对外以对象存储的接口方式呈现,所述虚拟镜像对象包含元数据对象,不包含数据对象,所述元数据对象指向所述存储设备中的数据对象。
11.根据权利要求10的云数据中心,其特征在于,所述云数据中心还包括镜像服务器;
所述备份服务器还用于创建所述虚拟镜像对象的URL地址,将所述URL地址发送给所述镜像服务器;
所述镜像服务器用于存储所述URL地址。
12.根据权利要求11的云数据中心,其特征在于,所述云数据中心还包括块存储服务器;
所述备份服务器还用于:接收所述块存储服务器发送的读请求,所述读请求包括待读取的虚拟镜像对象在所述备份服务器中的URL地址和所述待读取的虚拟镜像对象中目标数据的地址范围;
根据所述待读取的虚拟镜像对象在所述备份服务器中的URL地址,获取所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径;
根据所述目标数据的地址范围、所述备份副本中备份数据的地址映射位图和存储路径,从所述存储设备中获取所述目标数据;
所述备份服务器向所述块存储服务器发送所述目标数据。
13.根据权利要求12的云数据中心,其特征在于,所述备份服务器还用于:
在所述接收块存储服务器发送的读请求之前,获取所述备份副本的标识;
根据所述备份副本的标识,查询本地数据库,获取所述备份副本中的元数据的存储路径;
根据所述元数据的存储路径,从所述存储设备中获取所述元数据;
根据所述元数据创建所述待读取的虚拟镜像对象;
向镜像服务器发送所述创建的虚拟镜像对象的URL地址。
14.根据权利要求13或14的云数据中心,其特征在于,
所述备份服务器具体用于:根据所述待读取的虚拟镜像对象在所述备份服务器中的URL地址,确定所述待读取的虚拟镜像对象的标识;根据所述待读取的虚拟镜像对象的标识,获取预先存储的所述待读取的虚拟镜像对象中的元数据,所述元数据包括所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图的存储路径和所述备份副本中备份数据的存储路径;根据所述备份副本中备份数据的地址映射位图的存储路径,从所述存储设备中获取所述备份副本中备份数据的地址映射位图。
15.根据权利要求12或13所述的云数据中心,其特征在于,
所述备份服务器具体用于根据所述待读取的虚拟镜像对象在所述备份服务器中URL地址,确定所述待读取的虚拟镜像对象的标识;根据所述待读取的虚拟镜像对象的标识,获取预先存储的所述待读取的虚拟镜像对象对应的备份副本中备份数据的地址映射位图和存储路径。
16.根据权利要求11所述的云数据中心,其特征在于,所述云数据中心还包括块存储服务器;
所述块存储服务器,用于从所述镜像服务器中查询得到所述创建的虚拟镜像对象的URL地址,并向所述备份服务器发送所述读请求;
所述块存储服务器,还用于接收所述备份服务器发送的所述目标数据,并根据所述目标数据创建虚拟机的云盘。
CN202110064595.7A 2016-12-26 2016-12-26 存储数据的方法及云数据中心 Pending CN112860479A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110064595.7A CN112860479A (zh) 2016-12-26 2016-12-26 存储数据的方法及云数据中心

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202110064595.7A CN112860479A (zh) 2016-12-26 2016-12-26 存储数据的方法及云数据中心
CN201680003338.XA CN108513657B (zh) 2016-12-26 2016-12-26 数据转换方法及备份服务器
PCT/CN2016/112184 WO2018119601A1 (zh) 2016-12-26 2016-12-26 数据转换方法及备份服务器

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201680003338.XA Division CN108513657B (zh) 2016-12-26 2016-12-26 数据转换方法及备份服务器

Publications (1)

Publication Number Publication Date
CN112860479A true CN112860479A (zh) 2021-05-28

Family

ID=62707104

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201680003338.XA Active CN108513657B (zh) 2016-12-26 2016-12-26 数据转换方法及备份服务器
CN202110064595.7A Pending CN112860479A (zh) 2016-12-26 2016-12-26 存储数据的方法及云数据中心

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201680003338.XA Active CN108513657B (zh) 2016-12-26 2016-12-26 数据转换方法及备份服务器

Country Status (4)

Country Link
US (1) US10409694B2 (zh)
EP (1) EP3379425A4 (zh)
CN (2) CN108513657B (zh)
WO (1) WO2018119601A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116149800A (zh) * 2023-04-18 2023-05-23 成都云祺科技有限公司 Kvm虚拟机应用层无代理cdp方法、系统及存储介质

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11030176B2 (en) * 2016-07-01 2021-06-08 Ebay Inc. Distributed storage of metadata for large binary data
WO2018006872A1 (zh) * 2016-07-08 2018-01-11 腾讯科技(深圳)有限公司 一种混合云的接口调用方法及装置
US10534566B1 (en) * 2017-07-19 2020-01-14 EMC IP Holding Company LLC Cloud storage tiering using application programming interface
US11237911B2 (en) * 2018-03-20 2022-02-01 Sap Se Object store for database backups
CN111198784B (zh) * 2018-11-16 2024-04-23 杭州海康威视系统技术有限公司 一种数据存储的方法及装置
CN111913832A (zh) * 2019-05-10 2020-11-10 杭州信核数据科技股份有限公司 一种数据备份方法和数据备份设备
US11422897B2 (en) * 2019-07-31 2022-08-23 Rubrik, Inc. Optimizing snapshot image processing
CN112583868B (zh) * 2019-09-27 2023-04-07 浙江宇视科技有限公司 云存储数据的备份方法、装置、设备和介质
CN110837612B (zh) * 2019-11-01 2023-05-12 腾讯科技(深圳)有限公司 统一资源标识符uri数据的获取方法和装置、存储介质
CN111309435A (zh) * 2020-01-20 2020-06-19 福建奇点时空数字科技有限公司 一种跨操作系统的移动应用虚拟机系统
US11513715B2 (en) * 2020-08-07 2022-11-29 EMC IP Holding Company LLC Method and system for generating synthetic backups using block based backups
CN112685413A (zh) * 2020-12-28 2021-04-20 北京像素软件科技股份有限公司 一种游戏配置表的读取方法、装置、存储介质及电子设备

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7379990B2 (en) * 2002-08-12 2008-05-27 Tsao Sheng Ted Tai Distributed virtual SAN
US20040034807A1 (en) * 2002-08-14 2004-02-19 Gnp Computers, Inc. Roving servers in a clustered telecommunication distributed computer system
US7769722B1 (en) * 2006-12-08 2010-08-03 Emc Corporation Replication and restoration of multiple data storage object types in a data network
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8706833B1 (en) * 2006-12-08 2014-04-22 Emc Corporation Data storage server having common replication architecture for multiple storage object types
US8438349B2 (en) * 2009-08-21 2013-05-07 Symantec Corporation Proxy backup of virtual disk image files on NAS devices
US9489266B2 (en) * 2009-12-11 2016-11-08 Google Inc. System and method of storing backup image catalog
US9852150B2 (en) * 2010-05-03 2017-12-26 Panzura, Inc. Avoiding client timeouts in a distributed filesystem
US8805968B2 (en) * 2010-05-03 2014-08-12 Panzura, Inc. Accessing cached data from a peer cloud controller in a distributed filesystem
US8799413B2 (en) * 2010-05-03 2014-08-05 Panzura, Inc. Distributing data for a distributed filesystem across multiple cloud storage systems
US8799414B2 (en) * 2010-05-03 2014-08-05 Panzura, Inc. Archiving data for a distributed filesystem
US8560825B2 (en) * 2010-06-30 2013-10-15 International Business Machines Corporation Streaming virtual machine boot services over a network
CN102053802B (zh) * 2010-12-31 2012-09-05 中国科学院计算技术研究所 网络独立冗余磁盘阵列系统
US9703796B2 (en) * 2011-12-06 2017-07-11 Brocade Communications Systems, Inc. Shared dictionary between devices
US9183213B2 (en) * 2012-05-16 2015-11-10 Rackspace Us, Inc. Indirection objects in a cloud storage system
US8806489B2 (en) * 2012-07-05 2014-08-12 International Business Machines Corporation Virtual machine image distribution network
US20140236868A1 (en) * 2013-02-15 2014-08-21 Banyan Water, Inc. System and method for automated, range-based irrigation
CN105955836B (zh) * 2016-05-09 2019-04-19 深圳市前海云端容灾信息技术有限公司 一种冷热备份自动演练多功能系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116149800A (zh) * 2023-04-18 2023-05-23 成都云祺科技有限公司 Kvm虚拟机应用层无代理cdp方法、系统及存储介质
CN116149800B (zh) * 2023-04-18 2023-06-23 成都云祺科技有限公司 Kvm虚拟机应用层无代理cdp方法、系统及存储介质

Also Published As

Publication number Publication date
WO2018119601A1 (zh) 2018-07-05
US10409694B2 (en) 2019-09-10
EP3379425A4 (en) 2018-11-21
CN108513657B (zh) 2021-01-29
EP3379425A1 (en) 2018-09-26
CN108513657A (zh) 2018-09-07
US20180253359A1 (en) 2018-09-06

Similar Documents

Publication Publication Date Title
CN108513657B (zh) 数据转换方法及备份服务器
US11593149B2 (en) Unified resource management for containers and virtual machines
CN112119374B (zh) 使用替代服务器名称选择性地提供相互传输层安全
US20210224241A1 (en) Distributed Storage of Metadata For Large Binary Data
US10291704B2 (en) Networked solutions integration using a cloud business object broker
JP7082973B2 (ja) 方法、システム、およびコンピュータ読み取り可能なプログラム
US11392400B2 (en) Enhanced migration of clusters based on data accessibility
US10223024B2 (en) Storage controller for provisioning storage services for an application based upon application-specific requirements
JP2020098621A (ja) コンピューティングリソースの配置ポリシーベースの割当て
US8589350B1 (en) Systems, methods, and media for synthesizing views of file system backups
JP2020536312A (ja) マルチテナントapiゲートウェイにおいてテナント分離を提供するためのマイクロサービスコンテナの活用
US20160259811A1 (en) Method and system for metadata synchronization
US10754741B1 (en) Event-driven replication for migrating computing resources
JP2017534104A (ja) 異種の電子デバイスのためのアプリケーション配信の区分化
CN111290828A (zh) 使用容器编排服务进行动态路由
US9785647B1 (en) File system virtualization
US9348855B2 (en) Supporting big data in enterprise content management systems
US9378039B2 (en) Virtual machine storage replication schemes
US11336588B2 (en) Metadata driven static determination of controller availability
US10109094B2 (en) Interface to index and display geospatial data
CN103077034B (zh) 混合虚拟化平台java应用迁移方法与系统
US20140330875A1 (en) Method and system for processing data files using distributed services
US11093477B1 (en) Multiple source database system consolidation
CN111949378B (zh) 虚拟机启动模式切换方法和装置、存储介质及电子设备
US11042665B2 (en) Data connectors in large scale processing clusters

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