CN113835925A - 存储对象备份方法及装置 - Google Patents
存储对象备份方法及装置 Download PDFInfo
- Publication number
- CN113835925A CN113835925A CN202111058355.2A CN202111058355A CN113835925A CN 113835925 A CN113835925 A CN 113835925A CN 202111058355 A CN202111058355 A CN 202111058355A CN 113835925 A CN113835925 A CN 113835925A
- Authority
- CN
- China
- Prior art keywords
- storage
- file structure
- storage object
- backup
- tool
- 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
Links
- 238000003860 storage Methods 0.000 title claims abstract description 318
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000013507 mapping Methods 0.000 claims abstract description 128
- 238000004088 simulation Methods 0.000 claims abstract description 22
- 238000012856 packing Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000012545 processing 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
- 238000013508 migration Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000010977 unit operation Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
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/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种存储对象备份方法及装置。其中,该方法包括:确定需要进行备份的存储对象,其中,存储对象为预设存储服务系统的对象;通过映射工具读取存储对象的文件结构,其中,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应;通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,其中,最小文件结构映射层包括第二格式的最小操作单位的操作数据;通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份,其中,备份工具用于对第二格式的对象进行备份。本发明解决了相关技术中的备份软件,无法对对象直接进行备份,难以满足对象的备份需求的技术问题。
Description
技术领域
本发明涉及网页开发领域,具体而言,涉及一种存储对象备份方法及装置。
背景技术
目前能看到的大多数备份软件对对象的备份支持都不足,且大多数都是把对象存储作为备份操作的目标端,即存储位置。但是随着对象存储的大量应用,比如OSS系统,S3系统,且通常作为生产环境的主要数据。作为企业或个人的具有商业价值的重要数据,同样需要有容灾备份的需求。因此,产生了对象备份到其他存储的需求,然而目前支持对象作为备份数据源的容灾软件并不多。
相关技术中存在中国专利CN112099989A,名称为一种Kubernetes云原生应用灾备、迁移与恢复的方法,此方案通过在kubernetes集群中将应用数据和应用状态通过一个进程OSController整理为集群的备份源数据,并作为数据源输入给Restic工具。由于这里的OSController整合好的数据是传统的文件,因此Restic能把文件备份到上图的Minio,(Minio是另一种存储软件)相当于将集群数据A借助restic转移至存储B的过程。然而这种方式仍然解决不了对象存储作为数据源的场景。只能转化为文件存储备份到对象存储。
由于对象存储在使用过程中都是以HTTP协议进行通信和传输,而不同传统存储,传统的存储媒介通常都提供POSIX语义进行访问。因此现有技术不能兼容备份源端为对象存储的场景,比如AWS的S3。一般的备份工具,对数据处理都是按照本地文件的方式进行读写,即使是NFS或者CIFS协议,也是先挂载在某个本地路径下,然后进行读写,而对象存储比较特殊,通常并不提供挂载方式读写,因此现有技术不能备份这些对象数据。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种存储对象备份方法及装置,以至少解决相关技术中的备份软件,无法对对象直接进行备份,难以满足对象的备份需求的技术问题。
根据本发明实施例的一个方面,提供了一种存储对象的备份方法,包括:确定需要进行备份的存储对象,其中,所述存储对象为预设存储服务系统的对象;通过映射工具读取所述存储对象的文件结构,其中,所述文件结构包括所述存储对象中的操作数据,所述操作数据的第一格式与所述预设存储服务系统一一对应;通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层,其中,所述最小文件结构映射层包括第二格式的最小操作单位的操作数据;通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份,其中,所述备份工具用于对所述第二格式的对象进行备份。
可选的,确定需要进行备份的存储对象包括:接收输入的对象链接,其中,所述对象链接用于指示所述存储对象在源端设备的存储位置,所述源端设备存储有所述存储对象;根据所述对象链接确定需要进行备份的存储对象。
可选的,在确定需要进行备份的存储对象之前,还包括:确定所述存储对象在备份至目标设备的目标位置;通过所述备份工具对所述目标设备的目标位置的存储结构进行初始化。
可选的,通过映射工具读取所述存储对象的文件结构包括:通过所述映射工具按照预定协议,向存储所述源端设备发送读取请求,其中,所述请求包括所述对象链接;通过所述读取请求读取所述对象链接对应存储位置的存储对象的文件结构;将所述文件结构映射在本地文件系统中。
可选的,通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层包括:通过本地文件系统的模拟接口,对映射在本地文件系统中的文件结构进行模拟,得到第二格式的最小文件结构映射层,其中,所述最小操作单位包括读,写,删;将所述最小文件结构映射层关联到本地的临时目录下,其中,所述临时目录用于被所述备份工具读取识别临时目录中的存储对象的最小文件结构。
可选的,通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份包括:通过所述备份工具读取所述临时目录获取所述存储对象的最小文件结构;根据所述最小文件结构将所述存储对象中的所述第一格式的操作数据翻译为所述第二格式,以读取所述存储对象;将所述存储对象通过所述备份工具迁移到所述目标设备的目标位置进行存储。
可选的,在通过映射工具读取所述存储对象的文件结构之前,还包括:通过容器镜像将备份程序,以及所述备份工具和所述映射工具打包到镜像文件中,其中,所述备份程序用于执行通过映射工具读取所述存储对象的文件结构,通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层,通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份的步骤;在确定需要进行备份的存储对象之后,运行所述备份程序。
可选的,所述预设存储服务系统为S3存储服务系统,所述备份工具为restic工具,所述映射工具为rclone工具。
根据本发明实施例的另一方面,还提供了一种存储对象的备份装置,包括:确定模块,用于确定需要进行备份的存储对象,其中,所述存储对象为预设存储服务系统的对象;读取模块,用于通过映射工具读取所述存储对象的文件结构,其中,所述文件结构包括所述存储对象中的操作数据,所述操作数据的第一格式与所述预设存储服务系统一一对应;映射模块,用于通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层,其中,所述最小文件结构映射层包括第二格式的最小操作单位的操作数据;备份模块,用于通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份,其中,所述备份工具用于对所述第二格式的对象进行备份。
根据本发明实施例的另一方面,还提供了一种计算机存储介质,所述计算机存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机存储介质所在设备执行上述中任意一项所述的存储对象的备份方法。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的存储对象的备份方法。
在本发明实施例中,采用确定需要进行备份的存储对象,其中,存储对象为预设存储服务系统的对象;通过映射工具读取存储对象的文件结构,其中,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应;通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,其中,最小文件结构映射层包括第二格式的最小操作单位的操作数据;通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份,其中,备份工具用于对第二格式的对象进行备份的方式,通过映射工具结合存储对象的文件结构,将存储对象的最小单位操作数据映射为最小文件结构映射层,从而使用备份工具结合最小文件结构映射层对存储对象进行读取和备份,达到了对存储对象进行有效备份的目的,从而实现了满足存储对象的备份需求的技术效果,进而解决了相关技术中的备份软件,无法对对象直接进行备份,难以满足对象的备份需求的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种存储对象的备份方法的流程图;
图2是根据本发明实施方式的对象存储原理的示意图;
图3是根据本发明实施方式的映射工具rclone对存储对象进行映射的示意图;
图4是根据本发明实施方式的备份工具对存储对象进行备份的示意图;
图5是根据本发明实施例的一种存储对象的备份装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面对本实施例出现的专业术语进行解释说明。
对象存储,Object-based Storage,也称为基于对象的存储,是一种数据存储,其中每个数据单元存储为称为对象的离散单元。对象可以是离散单元,类似于pdf,音频,图像或视频文件。这些对象实际上可以是任何类型的数据和任何大小的数据。对象存储中的所有对象都存储在单个平面地址空间中,而没有文件夹层次结构。
OSS,Object Storage Service,对象存储服务,是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。
S3,Simple Storage Service,是一种面向Internet的存储服务。该服务旨在降低开发人员进行网络规模级计算的难度。
备份:通常指将处于源端存储位置数据,进行某种传输方式或处理后,转移到另一个目标端进行存储的。并在需要的时候比如发生灾难的时候能从备份的目标端将数据还原到源端。
根据本发明实施例,提供了一种存储对象的备份方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种存储对象的备份方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,确定需要进行备份的存储对象,其中,存储对象为预设存储服务系统的对象;
步骤S104,通过映射工具读取存储对象的文件结构,其中,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应;
步骤S106,通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,其中,最小文件结构映射层包括第二格式的最小操作单位的操作数据;
步骤S108,通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份,其中,备份工具用于对第二格式的对象进行备份。
通过上述步骤,采用确定需要进行备份的存储对象,其中,存储对象为预设存储服务系统的对象;通过映射工具读取存储对象的文件结构,其中,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应;通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,其中,最小文件结构映射层包括第二格式的最小操作单位的操作数据;通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份,其中,备份工具用于对第二格式的对象进行备份的方式,通过映射工具结合存储对象的文件结构,将存储对象的最小单位操作数据映射为最小文件结构映射层,从而使用备份工具结合最小文件结构映射层对存储对象进行读取和备份,达到了对存储对象进行有效备份的目的,从而实现了满足存储对象的备份需求的技术效果,进而解决了相关技术中的备份软件,无法对对象直接进行备份,难以满足对象的备份需求的技术问题。
上述存储对象可以为对象存储服务中的数据对象,具体的一个存储对象可以由多个具体存储数据的桶构成,上述确定需要进行备份的存储对象可以通过获取存储对象的桶,来获取存储对象。本实施例中,上述存储对象可以为S3存储服务系统的存储对象,由于存储对象在使用过程中都是以HTTP协议进行通信和传输,而不同传统存储,传统的存储媒介通常都提供POSIX语义进行访问。因此现有技术不能兼容备份源端为对象存储的场景,比如S3的存储对象。一般的备份工具,对数据处理都是按照本地文件的方式进行读写,即使是NFS或者CIFS协议,也是先挂载在某个本地路径下,然后进行读写,而存储对象比较特殊,通常并不提供挂载方式读写,因此,现有技术不能备份这些存储对象。
上述映射工具可以为rclone(命令行同步文件的工具),通过映射工具获取存储对象的文件结构,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应。也即是上述存储对象的文件结构包括操作数据,其操作数据只针对该存储对象所属的存储服务系统,该存储服务系统外部无法直接读取。例如,上述S3存储服务系统的存储对象的桶的操作数据,存储在S3服务系统中,也不提供挂载的方式进行读写,从而导致S3服务系统的存储对象无法被备份工具直接读取。通过映射工具可以读取存储对象的文件结构,并将文件结构存储在本地。根据本地操作系统(如linux)的模拟接口(如FUSE接口)将存储在本地的文件结构进行模拟,得到上述最小文件结构映射层,也即是第二格式的最小操作单位的操作数据,该第二格式可以被上述备份工具读取。
从而根据备份工具读取上述最小文件结构映射层,对上述存储对象的文件结构进行获取,并根据文件结构读取上述存储对象,读取到存储对象后,由备份工具将上述存储对象迁移到目标设备进行存储对象的备份。从而使用备份工具结合最小文件结构映射层对存储对象进行读取和备份,达到了对存储对象进行有效备份的目的,从而实现了满足存储对象的备份需求的技术效果,进而解决了相关技术中的备份软件,无法对对象直接进行备份,难以满足对象的备份需求的技术问题。
可选的,确定需要进行备份的存储对象包括:接收输入的对象链接,其中,对象链接用于指示存储对象在源端设备的存储位置,源端设备存储有存储对象;根据对象链接确定需要进行备份的存储对象。
在确定存储对象时,通过输入的对象链接,确定需要进行备份的存储对象,例如,上述S3系统的存储对象链接,可以为s3://192.168.2.1/foo。通过该对象链接,可以确定存储对象在存储服务系统中的存储位置,从而对存储对象进行访问。上述存储服务系统可以是源端设备上的存储服务系统,从而对源端设备上的存储对象进行备份。
可选的,在确定需要进行备份的存储对象之前,还包括:确定存储对象在备份至目标设备的目标位置;通过备份工具对目标设备的目标位置的存储结构进行初始化。
在备份之前,需要先确定存储对象在备份到目标设备的目标位置,并对目标设备的目标位置的存储结构进行初始化,以便该存储对象可以成功本分到该目标位置。需要说明的是,上述目标设备可以与上述源端设备为同一设备,但是目标位置与上述存储对象的对象连接所对应的位置不同,通常都是该存储对象所处的存储服务系统之外的位置,例如,目标位置可以为本机的/bar目录。在对上述通过调用restic程序对目标端/bar进行初始化,得到一个空的仓库结构,以便将本分的存储对象存储在该仓库结构中,该仓库结构也即是上述存储结构的一种。
可选的,通过映射工具读取存储对象的文件结构包括:通过映射工具按照预定协议,向存储源端设备发送读取请求,其中,请求包括对象链接;通过读取请求读取对象链接对应存储位置的存储对象的文件结构;将文件结构映射在本地文件系统中。
在映射工具读取存储对象的文件结构时,通过映射工具按照预定协议,向存储源端设备发送读取请求,通过读取请求读取对象链接对应存储位置的存储对象的文件结构,例如,上述rclone通过HTTP协议请求对象源端s3://192.168.2.1/foo,读取其中的文件结构,并将文件结构映射为本地文件系统。上述将文件结构映射在本地文件系统中,可以通过FUSE将文件结构模拟出来,于是得到最新源端的最小虚拟对象文件结构映射层,也即是上述最小文件结构映射层。
可选的,通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层包括:通过本地文件系统的模拟接口,对映射在本地文件系统中的文件结构进行模拟,得到第二格式的最小文件结构映射层,其中,最小操作单位包括读,写,删;将最小文件结构映射层关联到本地的临时目录下,其中,临时目录用于被备份工具读取识别临时目录中的存储对象的最小文件结构。
通过本地文件系统的模拟接口,对映射在本地文件系统中的文件结构进行模拟,得到第二格式的最小文件结构映射层,其中,最小操作单位包括读,写,删。然后将最小文件结构映射层关联到本地的临时目录下,其中,临时目录用于被备份工具读取识别临时目录中的存储对象的最小文件结构。从而保证上述备份工具可以对上述最小文件结构映射层进行有效读取。
具体的,在实施时,通过FUSE将文件结构模拟出来,于是得到最新源端的最小文件结构映射层后,将模拟的对象文件映射层关联到本地的/tmp/foo临时目录下,因此备份程序能从此目录识别上述存储对象的存储数据。
可选的,通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份包括:通过备份工具读取临时目录获取存储对象的最小文件结构;根据最小文件结构将存储对象中的第一格式的操作数据翻译为第二格式,以读取存储对象;将存储对象通过备份工具迁移到目标设备的目标位置进行存储。
在通过备份工具通过最小文件结构映射层,读取并备份存储对象时,通过备份工具读取临时目录获取存储对象的最小文件结构,根据最小文件结构将存储对象中的第一格式的操作数据翻译为第二格式,以读取存储对象。例如,备份工具restic对s3系统的存储对象s3://192.168.2.1/foo的所有操作能通过rlone映射的最小文件结构映射层进行翻译:包括读,写,删等,以实现对S3系统的存储对象的读取。
可选的,在通过映射工具读取存储对象的文件结构之前,还包括:通过容器镜像将备份程序,以及备份工具和映射工具打包到镜像文件中,其中,备份程序用于执行通过映射工具读取存储对象的文件结构,通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份的步骤;在确定需要进行备份的存储对象之后,运行备份程序。
通过容器镜像技术,把编译为二进制文件的备份程序xdrs-backup并打包到容器镜像里,同时也把所依赖的映射工具rclone(命令行同步文件的工具)和备份工具restic打包到同一个专用的镜像。在使用的过程,备份程序xdrs-backup通过调用镜像里储备的restic和rclone来保证后续操作能实现。
可选的,预设存储服务系统为S3存储服务系统,备份工具为restic工具,映射工具为rclone工具。上述S3存储服务系统可以为Amazon S3存储服务系统。
需要说明的是,本实施例还提供了一种可选的实施方式,下面对该实施方式进行详细说明。
本实施方式提供了一种基于restic和rclone实现的对象存储备份装置,解决了备份源端为对象存储或者兼容S3协议的存储的备份需求,通过对协议的转换,从而解决对象作为源端时候的数据读取操作。通过这种兼容操作能保证备份程序可以轻易的读写源端数据并将其备份到其他存储位置上完成对象存储的备份。
图2是根据本发明实施方式的对象存储原理的示意图,如图2所示,其中,需要备份的数据为图中桶,桶是对象存储里面的一个单元,类似一个文件夹。
本实施方式的具体步骤如下:
1)本实施方式通过容器镜像技术,把编译为二进制文件的xdrs-backup并打包到容器镜像里,同时也把依赖工具rclone(命令行同步文件的工具)和restic(备份工具)打包到同一个专用的镜像。在使用的过程,备份程序xdrs-backup通过调用镜像里储备的restic和rclone来保证后续操作能实现。
2)备份开始前,通过输入一个对象桶的端点,即URL连接,如:s3://192.168.2.1/foo。同时选定一个目标位置,比如本机的/bar目录。
3)通过调用restic程序对目标端/bar进行初始化,得到一个空的仓库结构。
4)此时由于源端是一个URL,restic不能从中读取其中的数据和目录结构。备份软件xdrs-backup,调用rclone把对象端点s3://192.168.2.1/foo模拟一个简单的文件系统并放置在临时目录/tmp/foo下。
图3是根据本发明实施方式的映射工具rclone对存储对象进行映射的示意图,如图3所示,只有源端端点s3://192.168.2.1/foo的时候restic固然不能从中读取数据。备份程序xdrs-backup通过程序调用rclone执行模拟文件系统操作。rclone通过HTTP协议请求对象源端s3://192.168.2.1/foo,读取其中的文件结构,并将文件结构映射为本地文件系统,并通过FUSE将文件结构模拟出来,于是得到最新源端的最小虚拟对象文件结构映射层。利用此特性,模拟的对象文件映射层关联到本地的/tmp/foo目录下,因此备份程序能从此目录识别外部的对象存储数据。于是restic对s3端点数据s3://192.168.2.1/foo的所有操作能通过rlone的映射进行翻译:包括读,写,删等。后续的备份操作,都是基于这个虚拟对象文件结构映射层操作,从而解决对象备份的接口兼容问题。
5)图4是根据本发明实施方式的备份工具对存储对象进行备份的示意图,如图4所示,从上一步工作中,备份程序xdrs-backup完成了原端数据的映射转换。现在可以直接通过映射目录来进行源端数据的读操作,借助restic进行数据迁移操作,把从映射目录里读取到的数据流输入到目标端/bar下。
本实施方式的关键点在于集成rclone和restic两种数据操作工具的能力,既能对对象存储数据进行转换映射,又能通过restic进行数据迁移和整形并将原来的s3对象存储切分为小块文件介质进行保存。
本备份程序能只能识别输入源端的数据格式,识别为s3协议,并自动调用rclone工具和FUSE对对象端点URL转换为本地虚拟文件映射层。创新点,通过外部工具中转,实现对象协议的转换,使得程序或人能友好读取对象协议的数据内容,解决备份软件无法兼容s3源端的痛点。
本备份程序同时支持多种存储平台的对象存储,包括且不限于阿里云OSS协议,百度云BOS,或者腾讯云COS,即使不同平台有不同的特性。但是对于读写的基本操作都有共性,因此只要这些云平台的存储遵循S3标准,本备份工具xdrs-backup通过在备份的准备工作中均可,自动将远端的s3端点进行映射到本地,得到虚拟对象文件结构映射层,从而能统一处理,创新点:同时支持多种类s3协议的对象数据备份。
本实施方式通过容器镜像打包,把备份程序xdrs-backup,rclone,restic编译为二进制文件,并打包到容器镜像,从而实现在任意支持运行容器的机器上运行对象存储的备份。能智能识别源端输入的对象存储端点,无论是oss协议还是cos协议还是s3协议,只要是兼容s3标准的协议,均能通过调用rclone和FUSE进行文件系统的映射,从而解决对象协议读写问题,从而实现对象存储作为源端的备份。
经过实验测试,和日常使用验证证明可行。在使用s3存储服务时候作为源端输入,借助本实施方式的xdrs-backup程序能将对象桶中的数据转移到其他目标端口,且数据能还原,因此具备类型本地文件一样效果的对象存储备份功能。
图5是根据本发明实施例的一种存储对象的备份装置的示意图,如图5所示,根据本发明实施例的另一方面,还提供了一种存储对象的备份装置,包括:确定模块52,读取模块54,映射模块56和备份模块58,下面对该装置进行详细说明。
确定模块52,用于确定需要进行备份的存储对象,其中,存储对象为预设存储服务系统的对象;读取模块54,与上述确定模块52相连,用于通过映射工具读取存储对象的文件结构,其中,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应;映射模块56,与上述读取模块54相连,用于通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,其中,最小文件结构映射层包括第二格式的最小操作单位的操作数据;备份模块58,与上述映射模块56相连,用于通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份,其中,备份工具用于对第二格式的对象进行备份。
通过上述装置,采用确定模块52确定需要进行备份的存储对象,其中,存储对象为预设存储服务系统的对象;读取模块54通过映射工具读取存储对象的文件结构,其中,文件结构包括存储对象中的操作数据,操作数据的第一格式与预设存储服务系统一一对应;映射模块56通过模拟接口根据文件结构,确定存储对象的最小文件结构映射层,其中,最小文件结构映射层包括第二格式的最小操作单位的操作数据;备份模块58通过备份工具通过最小文件结构映射层,读取存储对象,并对存储对象进行备份,其中,备份工具用于对第二格式的对象进行备份的方式,通过映射工具结合存储对象的文件结构,将存储对象的最小单位操作数据映射为最小文件结构映射层,从而使用备份工具结合最小文件结构映射层对存储对象进行读取和备份,达到了对存储对象进行有效备份的目的,从而实现了满足存储对象的备份需求的技术效果,进而解决了相关技术中的备份软件,无法对对象直接进行备份,难以满足对象的备份需求的技术问题。
根据本发明实施例的另一方面,还提供了一种计算机存储介质,计算机存储介质包括存储的程序,其中,在程序运行时控制计算机存储介质所在设备执行上述中任意一项的存储对象的备份方法。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的存储对象的备份方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种存储对象的备份方法,其特征在于,包括:
确定需要进行备份的存储对象,其中,所述存储对象为预设存储服务系统的对象;
通过映射工具读取所述存储对象的文件结构,其中,所述文件结构包括所述存储对象中的操作数据,所述操作数据的第一格式与所述预设存储服务系统一一对应;
通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层,其中,所述最小文件结构映射层包括第二格式的最小操作单位的操作数据;
通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份,其中,所述备份工具用于对所述第二格式的对象进行备份。
2.根据权利要求1所述的方法,其特征在于,确定需要进行备份的存储对象包括:
接收输入的对象链接,其中,所述对象链接用于指示所述存储对象在源端设备的存储位置,所述源端设备存储有所述存储对象;
根据所述对象链接确定需要进行备份的存储对象。
3.根据权利要求2所述的方法,其特征在于,在确定需要进行备份的存储对象之前,还包括:
确定所述存储对象在备份至目标设备的目标位置;
通过所述备份工具对所述目标设备的目标位置的存储结构进行初始化。
4.根据权利要求3所述的方法,其特征在于,通过映射工具读取所述存储对象的文件结构包括:
通过所述映射工具按照预定协议,向存储所述源端设备发送读取请求,其中,所述请求包括所述对象链接;
通过所述读取请求读取所述对象链接对应存储位置的存储对象的文件结构;
将所述文件结构映射在本地文件系统中。
5.根据权利要求4所述的方法,其特征在于,通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层包括:
通过本地文件系统的模拟接口,对映射在本地文件系统中的文件结构进行模拟,得到第二格式的最小文件结构映射层,其中,所述最小操作单位包括读,写,删;
将所述最小文件结构映射层关联到本地的临时目录下,其中,所述临时目录用于被所述备份工具读取识别临时目录中的存储对象的最小文件结构。
6.根据权利要求5所述的方法,其特征在于,通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份包括:
通过所述备份工具读取所述临时目录获取所述存储对象的最小文件结构;
根据所述最小文件结构将所述存储对象中的所述第一格式的操作数据翻译为所述第二格式,以读取所述存储对象;
将所述存储对象通过所述备份工具迁移到所述目标设备的目标位置进行存储。
7.根据权利要求1至6中任一项所述的方法,其特征在于,在通过映射工具读取所述存储对象的文件结构之前,还包括:
通过容器镜像将备份程序,以及所述备份工具和所述映射工具打包到镜像文件中,其中,所述备份程序用于执行通过映射工具读取所述存储对象的文件结构,通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层,通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份的步骤;
在确定需要进行备份的存储对象之后,运行所述备份程序。
8.根据权利要求7所述的方法,其特征在于,所述预设存储服务系统为S3存储服务系统,所述备份工具为restic工具,所述映射工具为rclone工具。
9.一种存储对象的备份装置,其特征在于,包括:
确定模块,用于确定需要进行备份的存储对象,其中,所述存储对象为预设存储服务系统的对象;
读取模块,用于通过映射工具读取所述存储对象的文件结构,其中,所述文件结构包括所述存储对象中的操作数据,所述操作数据的第一格式与所述预设存储服务系统一一对应;
映射模块,用于通过模拟接口根据所述文件结构,确定所述存储对象的最小文件结构映射层,其中,所述最小文件结构映射层包括第二格式的最小操作单位的操作数据;
备份模块,用于通过备份工具通过所述最小文件结构映射层,读取所述存储对象,并对所述存储对象进行备份,其中,所述备份工具用于对所述第二格式的对象进行备份。
10.一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至8中任意一项所述的存储对象的备份方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111058355.2A CN113835925B (zh) | 2021-09-09 | 2021-09-09 | 存储对象备份方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111058355.2A CN113835925B (zh) | 2021-09-09 | 2021-09-09 | 存储对象备份方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113835925A true CN113835925A (zh) | 2021-12-24 |
CN113835925B CN113835925B (zh) | 2023-10-31 |
Family
ID=78958883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111058355.2A Active CN113835925B (zh) | 2021-09-09 | 2021-09-09 | 存储对象备份方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113835925B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383378B1 (en) * | 2003-04-11 | 2008-06-03 | Network Appliance, Inc. | System and method for supporting file and block access to storage object on a storage appliance |
CN108681494A (zh) * | 2018-05-21 | 2018-10-19 | 深圳市科力锐科技有限公司 | 备份数据还原方法、装置、用户设备及存储介质 |
US10216580B1 (en) * | 2018-03-29 | 2019-02-26 | Model9 Software Ltd. | System and method for mainframe computers backup and restore on object storage systems |
CN112540872A (zh) * | 2020-11-26 | 2021-03-23 | 华云数据控股集团有限公司 | 通用持续数据保护方法、装置及电子设备 |
CN112965856A (zh) * | 2021-02-24 | 2021-06-15 | 上海英方软件股份有限公司 | 一种基于备份数据的快速细粒度恢复方法及装置 |
-
2021
- 2021-09-09 CN CN202111058355.2A patent/CN113835925B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383378B1 (en) * | 2003-04-11 | 2008-06-03 | Network Appliance, Inc. | System and method for supporting file and block access to storage object on a storage appliance |
US10216580B1 (en) * | 2018-03-29 | 2019-02-26 | Model9 Software Ltd. | System and method for mainframe computers backup and restore on object storage systems |
CN108681494A (zh) * | 2018-05-21 | 2018-10-19 | 深圳市科力锐科技有限公司 | 备份数据还原方法、装置、用户设备及存储介质 |
CN112540872A (zh) * | 2020-11-26 | 2021-03-23 | 华云数据控股集团有限公司 | 通用持续数据保护方法、装置及电子设备 |
CN112965856A (zh) * | 2021-02-24 | 2021-06-15 | 上海英方软件股份有限公司 | 一种基于备份数据的快速细粒度恢复方法及装置 |
Non-Patent Citations (2)
Title |
---|
CHUNLU WANG等: "TH_Cloudkey: Fast, Secure and Lowcost Backup System for Using Public Cloud Storage", 《2013 INTERNATIONAL CONFERENCE ON CLOUD AND SERVICE COMPUTING》, pages 36 - 41 * |
张大朋等: "异构数据库复制技术的研究与实现", 《中国科学院研究生院学报》, pages 101 - 108 * |
Also Published As
Publication number | Publication date |
---|---|
CN113835925B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10587692B2 (en) | Service and APIs for remote volume-based block storage | |
US8572136B2 (en) | Method and system for synchronizing a virtual file system at a computing device with a storage device | |
US7836018B2 (en) | Simultaneously accessing file objects through web services and file services | |
CN104216801B (zh) | 一种面向虚拟化环境的数据复制方法及系统 | |
CN107577420B (zh) | 文件处理方法和装置、服务器 | |
CN106156359A (zh) | 一种云计算平台下的数据同步更新方法 | |
US8977662B1 (en) | Storing data objects from a flat namespace in a hierarchical directory structured file system | |
US9792075B1 (en) | Systems and methods for synthesizing virtual hard drives | |
US11308223B2 (en) | Blockchain-based file handling | |
US11397749B2 (en) | Asynchronous replication of in-scope table data | |
CN108427677B (zh) | 一种对象访问方法、装置及电子设备 | |
CN111897623B (zh) | 一种集群管理方法、装置、设备及存储介质 | |
CN105227672A (zh) | 数据存储及访问的方法和系统 | |
CN114564339A (zh) | 一种磁盘镜像文件跨平台迁移方法及系统 | |
CN113157487A (zh) | 数据恢复方法及其设备 | |
CN104517067A (zh) | 访问数据的方法、装置及系统 | |
US9485308B2 (en) | Zero copy volume reconstruction | |
CN109558082B (zh) | 分布式文件系统 | |
CN113835925B (zh) | 存储对象备份方法及装置 | |
CN114328007B (zh) | 一种容器备份还原方法、装置及其介质 | |
EP3367259B1 (en) | Method and device for reading and writing video data in nas device | |
CN115525618A (zh) | 存储集群、数据存储方法、系统及存储介质 | |
JP2023523704A (ja) | 分散データ・ストレージ環境におけるセキュアなデータ複製 | |
Li et al. | A hybrid disaster-tolerant model with DDF technology for MooseFS open-source distributed file system | |
US20160026390A1 (en) | Method of deleting information, computer program product and computer system |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100094 101, floors 1-5, building 7, courtyard 3, fengxiu Middle Road, Haidian District, Beijing Applicant after: Beijing Xingchen Tianhe Technology Co.,Ltd. Address before: 100097 office building 805-806, area B, Jinyuan times business center, lantianchang Road, Haidian District, Beijing Applicant before: XSKY BEIJING DATA TECHNOLOGY Corp.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |