CN117194101A - 数据备份方法及系统 - Google Patents
数据备份方法及系统 Download PDFInfo
- Publication number
- CN117194101A CN117194101A CN202311086683.2A CN202311086683A CN117194101A CN 117194101 A CN117194101 A CN 117194101A CN 202311086683 A CN202311086683 A CN 202311086683A CN 117194101 A CN117194101 A CN 117194101A
- Authority
- CN
- China
- Prior art keywords
- backup
- target
- sub
- file
- mode
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000003860 storage Methods 0.000 claims abstract description 35
- 230000007246 mechanism Effects 0.000 claims description 15
- 238000012546 transfer Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 238000004422 calculation algorithm Methods 0.000 claims description 3
- 230000014759 maintenance of location Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开一种数据备份方法及系统,属于数据备份技术领域。该数据备份方法包括:读取待备份文件中的配置信息,配置信息包括配置的全局设置、备份内容集和备份目标集;将备份内容集拆分为多个子备份内容,备份内容集为待备份的数据的集合,多个子备份内容包括子备份内容配置;将备份目标集拆分为多个子备份目标,备份目标集为待备份的数据的存储位置的集合,多个子备份目标包括子备份目标配置;将多个子备份内容与多个子备份目标相对应,确定目标对应关系;根据配置的全局设置、子备份内容配置和子备份目标配置,确定目标配置;基于目标对应关系和目标配置,对待备份文件进行备份。通过分散式备份,不局限于备份目标存储端的大小。
Description
技术领域
本申请属于数据备份技术领域,具体涉及一种数据备份方法及系统。
背景技术
数据备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。
相关技术中的备份仅限于单独的操作系统中,无法从当前的系统中独立出来,进而无法运行到其他系统中,也不支持单独运行,对配置的集中管理无法实现多服务器的批量管理,备份链路单一,在对应的产品之外无法进行备份。
发明内容
本申请实施例提供一种数据备份方法及系统,能够解决相关技术中备份应用场景单一,资源利用率低,扩展性较差的问题。
第一方面,本申请实施例提供了一种数据备份方法,包括:
读取待备份文件中的配置信息,所述配置信息包括配置的全局设置、备份内容集和备份目标集;
将备份内容集拆分为多个子备份内容,所述备份内容集为待备份的数据的集合,所述多个子备份内容包括子备份内容配置;
将备份目标集拆分为多个子备份目标,所述备份目标集为所述待备份的数据的存储位置的集合,所述多个子备份目标包括子备份目标配置;
将所述多个子备份内容与所述多个子备份目标相对应,确定目标对应关系;
根据所述配置的全局设置、所述子备份内容配置和所述子备份目标配置,确定目标配置;
基于所述目标对应关系和所述目标配置,对所述待备份文件进行备份。
第二方面,本申请实施例提供了一种数据备份系统,包括:
读取模块,用于读取待备份文件中的配置信息,所述配置信息包括配置的全局设置、备份内容集和备份目标集;
第一拆分模块,用于将备份内容集拆分为多个子备份内容,所述备份内容集为待备份的数据的集合,所述多个子备份内容包括子备份内容配置;
第二拆分模块,用于将备份目标集拆分为多个子备份目标,所述备份目标集为所述待备份的数据的存储位置的集合,所述多个子备份目标包括子备份目标配置;
第一确定模块,用于将所述多个子备份内容与所述多个子备份目标相对应,确定目标对应关系;
第二确定模块,用于根据所述配置的全局设置、所述子备份内容配置和所述子备份目标配置,确定目标配置;
备份模块,用于基于所述目标对应关系和所述目标配置,对所述待备份文件进行备份。
第三方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
在本申请实施例中,首先读取待备份文件中的配置的全局设置、备份内容集和备份目标集等配置信息,然后将备份内容集即待备份的数据的集合拆分为多个子备份内容,将备份目标集即待备份的数据的存储位置的集合拆分为多个子备份目标,再将多个子备份内容与多个子备份目标相对应,确定目标对应关系,根据配置的全局设置、子备份内容配置和子备份目标配置,确定目标配置,最后基于目标对应关系和目标配置,对待备份文件进行备份。本申请将待备份数据和待备份数据对应的存储位置分别进行拆分处理,拆分后的数据或位置可以是在多个系统中的数据或位置,通过本申请实现统一的配置管理,并且通过分散式备份,可以不局限于备份目标存储端的大小,扩容等硬件限制。
附图说明
图1是本申请的一个实施例提供的数据备份方法的流程图;
图2是本申请的一个实施例提供的备份内容集拆分的详细流程图;
图3是本申请的一个实施例提供的备份目标集拆分的详细流程图;
图4是本申请的一个实施例提供的数据备份系统的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的一种数据备份方法及系统进行详细地说明。
如图1所示,本申请实施例还提供了一种数据备份方法,如图1所示,该数据备份方法可以包括:S101至S106所示的内容。
在S101中,读取待备份文件中的配置信息。
其中,配置信息包括配置的全局设置、备份内容集和备份目标集。
值得说明的是,配置信息中还可以包括配置的名称,配置的取值顺序可以为子节点配置>子任务配置>全局配置。
在S102中,将备份内容集拆分为多个子备份内容。
其中,备份内容集为待备份的数据的集合,多个子备份内容包括子备份内容配置。
其中,子备份内容可以包含备份的模式、是否增量、名称、是否加密、加密密码、加密方式等信息。
备份的模式可以包括路径模式和命令模式。
路径模式是指定一个具体的文件或者文件夹,在后续的备份任务执行提取过程中,可以直接提取此路径进行后续的备份处理流程。
命令模式是指定一个可执行的命令,基于平台的不同,命令的配置也不相同,例如,命令可以是一个关系型数据库MySQL的备份命令,可以执行一个应用容器引擎(Docker)的命令,如果命令模式下执行报错,则记录到错误清单中,等待补偿(如有)。如果命令模式下执行成功,则会返回一个路径,路径可以是一个文件或者是一个文件夹。
在S103中,将备份目标集拆分为多个子备份目标。
其中,备份目标集为待备份的数据的存储位置的集合,多个子备份目标包括子备份目标配置。
其中,子备份目标包含名称(此值为唯一值,如果重复,则后者覆盖前者,如果子备份内容中有备份目标清单,则以子备份内容中的目标清单为最终结果)、备份目标模式、备份目标路径等信息。
备份目标模式可以包括文件传输协议(File Transfer Protocol,FTP)模式、安全文件传输协议(SSH File Transfer Protocol,SFTP)模式、路径模式、软件开发工具包(Software Development Kit,SDK)模式和命令模式。
FTP模式是指如果选择了FTP的模式,则需要配置目标地址、端口、用户名、密码等信息。
SFTP模式是指如果选择了SFTP的模式,则需要配置目标地址、端口、用户名、密码等信息。如果SFTP的私钥有指定文件,则以私钥的形式进行访问。
路径模式是基于当前运行的服务器的路径,可以是本地、挂载或者局域网内的共享文件夹。
SDK模式是基于第三方的SDK集成模式,支持多种存储,具体地以实际应用为准,本申请不做限定。如果配置SDK则需要按照各不同配置要求配置其存取公钥(asscess key)和私钥(secret key)。
命令行模式是支持基于运行平台Shell脚本的运行备份模式,可以通过绝对路径的命令(此处的命令指所使用的shell脚本、二进制文件、可执行文件(exe文件)等),比如支持SSH命令,SCP命令等。
在S104中,将多个子备份内容与多个子备份目标相对应,确定目标对应关系。
在本实施例中,若是子备份内容对应有备份目标清单,则将该备份目标清单与多个子备份目标进行去重合并,然后进行对应处理。
其中,子备份内容和子备份目标可以是一对多或是多对多的关系,每个子备份内容如果配置了单独的备份目标,同时还配置了备份目标清单,则需要合并备份目标。
也就是说,本实施例支撑多种备份链路模式,且同一个备份模式支持重用,减少配置,增加备份目标地址的分散性。可以是单链路备份,也可以是多链路备份,还可以是单链路与多链路结合备份。
其中,单链路模式是在每个备份任务中配置与其对应的备份链路,实现一对一链路备份。多链路模式是在每个备份任务中配置与其对应的备份链路,实现一对多链路备份。单链路与多链路结合模式是在整体配置中,配置备份模式,可以是大于或等于一的模式,在子任务中,同样配置备份模式,配置大于或等于一的模式,最后按照名称或唯一编码(Identity document,ID)的方式进行备份模式的去重,实现单链路与多链路结合备份。
在S105中,根据配置的全局设置、子备份内容配置和子备份目标配置,确定目标配置。
基于子任务中的配置和配置的全局设置,以子节点>子任务>全局任务的优先级,获取最终运行所需要的目标配置。
在S106中,基于目标对应关系和目标配置,对待备份文件进行备份。
基于上述确定出的目标对应关系和目标配置,对待备份文件进行备份,备份内容完成后,可以依次进行上传。
在本申请实施例中,首先读取待备份文件中的配置的全局设置、备份内容集和备份目标集等配置信息,然后将备份内容集即待备份的数据的集合拆分为多个子备份内容,将备份目标集即待备份的数据的存储位置的集合拆分为多个子备份目标,再将多个子备份内容与多个子备份目标相对应,确定目标对应关系,根据配置的全局设置、子备份内容配置和子备份目标配置,确定目标配置,最后基于目标对应关系和目标配置,对待备份文件进行备份。本申请将待备份数据和待备份数据对应的存储位置分别进行拆分处理,拆分后的数据或位置可以是在多个系统中的数据或位置,通过本申请实现统一的配置管理,并且通过分散式备份,可以不局限于备份目标存储端的大小,扩容等硬件限制。
如图2所示,在本申请的一个可能的实施方式中,将备份内容集拆分为多个子备份内容,可以包括:基于备份内容模式,将备份内容集拆分为路径模式子备份内容和命令模式子备份内容,路径模式子备份内容包括第一文件或第一文件夹,用于存储待备份内容,命令模式子备份内容包括第一命令;在第一命令执行后,得到第一路径,第一路径包括第二文件或第二文件夹;基于第一文件或第一文件夹、第二文件或第二文件夹,确定文件树,文件树包括文件和消息摘要算法md5值;在备份内容集包含增量备份的情况下,对比文件树中的各分支路径及md5值,获取差异文件;根据差异文件,确定目标文件或目标文件夹,目标文件和目标文件夹的数量为多个;将多个目标文件或多个目标文件夹作为多个子备份内容。
其中,备份内容模式可以包括路径模式和命令模式。路径模式是指定一个具体的文件或者文件夹,在后续的备份任务执行提取过程中,可以直接提取此路径进行后续的备份处理流程。命令模式是指定一个可执行的命令,基于平台的不同,命令的配置也不相同,例如,命令可以是一个关系型数据库MySQL的备份命令,可以执行一个应用容器引擎(Docker)的命令,如果命令模式下执行报错,则记录到错误清单中,等待补偿(如有)。如果命令模式下执行成功,则会返回一个路径,路径可以是一个文件或者是一个文件夹。
通过路径模式可以指定具体地路径进行备份,可以适用于资源文件的备份。命令模式的执行可基于运行系统的命令,此命令是在运行平台中执行的,且具有明确的返回值,适用于Docker、数据库等可执行的命令。
需要说明的是,命令需要是已验证过的,命令具有明确的返回值,且返回值非零会被标记为错误,命令的结果应该是一个文件或者文件夹,备份任务会取值进行备份。
在本实施例中,基于第一文件或第一文件夹、第二文件或第二文件夹,即上述确定出的文件结构,生成一个文件+md5值的文件树,用于后续的增量备份,如果文件树的分值发生变化,通过差异对比可以获取变化的文件。
也就是说,程序会按照文件结构,生成一个文件+md5的文件树,用于后面的增量备份,如果树上的分支变化,则认为其是变化的。如果配置了增量备份,则对比各树分支路径及md5值。
本实施例中,采用跨平台的增量备份机制,通过目录机构树+分支md5的方式实现,保证层级下目录文件已备份的完整性。通过对备份文件的md5进行提取,按照树形的模式编制备份任务的层级树。其需要存储到非tmp文件的路径下,增量备份时,依次按文件树进行层层比对,对新增的文件进行增量备份,如果出现删除,则需要比对是否是压缩备份,如果非压缩加密备份,则根据配置删除备份媒介的对应文件。
在本申请的一个可能的实施方式中,在根据差异文件,确定目标文件或目标文件夹之后,该方法还可以包括:对目标文件或目标文件夹进行压缩处理,得到目标压缩文件。
也就是说,还可以对目标文件或目标文件夹进行压缩处理,压缩可以减少文件的体积,如果不进行压缩,则采用文件或文件夹形式。
本实施例中,备份的文件可以选择压缩或不压缩,压缩文件影响加密机制的取值。例如,Windows系统支持rar、7z、zip等压缩方式,Linux/Unix系统支持tar、zip、rar等压缩方式。具体地本实施例不做限定,以实际应用为准。
其中,如果配置了加密、加密密码则进行加密,如果配置了加密方式则按照加密方式进行加密,如果未指定加密方式则按照上述某一种方式,例如zip进行加密。
在本申请的一个可能的实施方式中,该数据备份方法还可以包括:在多个子备份内容包含对应的备份目标的情况下,将对应的备份目标添加至多个子备份目标中;对添加后的多个子备份目标进行去重处理,得到目标备份目标。
也就是说,如果子备份内容配置了对应的备份目标,则将此备份目标加入到多个子备份目标中,添加后,若是存在重复的子备份目标,则将其中一个删除,避免重复。
如图3所示,在本申请的一个可能的实施方式中,将备份目标集拆分为多个子备份目标,可以包括:基于备份目标模式,将备份目标集拆分为文件传输协议FTP模式子备份目标、安全文件传输协议SFTP模式子备份目标、路径模式子备份目标、软件开发工具包SDK模式子备份目标和命令模式子备份目标。
在本申请的一个可能的实施方式中,该数据备份方法还可以包括:在子备份目标为FTP模式和SFTP模式的情况下,配置目标地址、端口、用户名和密码;在子备份目标为路径模式的情况下,确定目标路径,目标路径包括本地路径、挂载路径和局域网内的共享文件夹;在子备份目标为SDK模式的情况下,配置对应的密钥。
其中,备份目标模式可以包括FTP模式、SFTP模式、路径模式、SDK模式和命令模式。
FTP模式是指如果选择了FTP的模式,则需要配置目标地址、端口、用户名、密码等信息。
SFTP模式是指如果选择了SFTP的模式,则需要配置目标地址、端口、用户名、密码等信息。如果SFTP的私钥有指定文件,则以私钥的形式进行访问。
路径模式是基于当前运行的服务器的路径,可以是本地、挂载或者局域网内的共享文件夹。可以指定具体的路径进行备份,多适用于资源文件的备份。SDK模式是基于第三方的SDK集成模式,支持多种存储,具体地以实际应用为准,本申请不做限定。如果配置SDK则需要按照各不同配置要求配置其存取公钥(asscess key)和私钥(secret key)。
命令行模式是支持基于运行平台Shell脚本的运行备份模式,可以通过绝对路径的命令(此处的命令指所使用的shell脚本、二进制文件、可执行文件(exe文件)等),比如支持SSH命令,SCP命令等。也就是说,执行可基于运行系统的命令,该命令需在运行平台中是可执行的,且是具有明确的返回值的。例如,docker、数据库等可执行的命令。值得说明的是,命令需要是已验证过的,具有明确的返回值,且返回值非零,命令的结果是一个文件或者文件夹,备份任务可以取此值进行备份。
在本申请的一个可能的实施方式中,该数据盘备份方法还可以包括:在备份失败的情况下,通过补偿机制进行备份重试。
也就是说,在备份失败后,系统会触发备份补偿机制,按照备份失败的情况进行自定义尝试,补偿机制是可以按照代码编制预留口进行一对一处理。
本实施例中,如果配置了补偿机制,则会添加此次子任务到补偿列表中,在上述备份时失败的任务可以在整体备份完成后,通过补偿机制继续重试,重试时会按照备份唯一标记进行重试。
其中,备份失败达到限定次数后,将不再进行重试。
可选地,本申请可以采用留存机制,该留存机制适用于压缩或者加密文件,即已通过固定的编码格式进行重命名的文件。可以减少服务器与存储媒介之间的交互频率,减少网络宽带的占用,在进行备份的时候,会对数据进行备份媒介加一备份,即本地会留存一份备份,在出现非系统问题时,能不占用网络资源实现备份的恢复。可以基于md5+名称拆分的方式获取其备份文件的日期,按照文件数量、留存日期等方式进行配置留存机制。
其中,编码格式可以为ID_名称_日期_时间戳_当日频次.后缀,例如,1_XX应用系统多媒体资源_20230321172252_1679390572_1.tar.gz。
可选地,在备份完成后,会根据留存周期对本地的数据和备份目标的数据进行清理,两者的留存周期可以配置不同。也可以在文件达到预设文件大小对本地的数据和备份目标的数据进行清理。
可选地,备份完成,对备份结果进行通知,即通知对应用户备份结果,如果备份任务设有补偿机制,则在补偿机制完成后,进行通知,并告知补偿次数。
其中,通知方式可以为邮件、信息等消息终端。备份结果包括备份完成、补偿次数等信息。
本申请实施例,能够使同一套备份实现跨平台使用,解决当前企业或互联网多系统环境备份难的难题;并且通过分散式备份,不再局限于备份目标存储端的大小,扩容等硬件限制,可以自由的进行备份目标存储端备份,解决基于原设备扩容带来的痛点;还能够使备份内容(备份源)的支持内容更加全面,从文件到命令全包含,破除备份单一性壁垒;能够使备份目标存储更多样化,且不用担心底层运行的系统(支持Linux、Unix等常见系统);使用自约定的文件识别机制,实现备份文件的留存过滤,达到约定文件的留存周期,减少本地存储占用及远端存储占用,降低成本。
需要说明的是,本申请实施例提供的数据备份方法,执行主体可以为数据备份系统,或者该数据备份系统中的用于执行数据备份方法的控制模块。本申请实施例中以数据备份系统执行数据备份方法为例,说明本申请实施例提供的数据备份系统。
如图4所示,本申请实施例还提供了一种数据备份系统,该数据备份系统可以应用于多系统的查询,该数据备份系统可以包括:读取模块401、第一拆分模块402、第二拆分模块403、第一确定模块404、第二确定模块405和备份模块406。
其中,读取模块401,用于读取待备份文件中的配置信息,配置信息包括配置的全局设置、备份内容集和备份目标集;第一拆分模块402,用于将备份内容集拆分为多个子备份内容,备份内容集为待备份的数据的集合,多个子备份内容包括子备份内容配置;第二拆分模块403,用于将备份目标集拆分为多个子备份目标,备份目标集为待备份的数据的存储位置的集合,多个子备份目标包括子备份目标配置;第一确定模块404,用于将多个子备份内容与多个子备份目标相对应,确定目标对应关系;第二确定模块405,用于根据配置的全局设置、子备份内容配置和子备份目标配置,确定目标配置;备份模块406,用于基于目标对应关系和目标配置,对待备份文件进行备份。
在本申请实施例中,首先读取模块401读取待备份文件中的配置的全局设置、备份内容集和备份目标集等配置信息,然后第一拆分模块402将备份内容集即待备份的数据的集合拆分为多个子备份内容,第二拆分模块403将备份目标集即待备份的数据的存储位置的集合拆分为多个子备份目标,第一确定模块404再将多个子备份内容与多个子备份目标相对应,确定目标对应关系,第二确定模块405根据配置的全局设置、子备份内容配置和子备份目标配置,确定目标配置,最后备份模块406基于目标对应关系和目标配置,对待备份文件进行备份。本申请将待备份数据和待备份数据对应的存储位置分别进行拆分处理,拆分后的数据或位置可以是在多个系统中的数据或位置,通过本申请实现统一的配置管理,并且通过分散式备份,可以不局限于备份目标存储端的大小,扩容等硬件限制。
在本申请的一个可能的实施方式中,第一拆分模块402,用于:基于备份内容模式,将备份内容集拆分为路径模式子备份内容和命令模式子备份内容,路径模式子备份内容包括第一文件或第一文件夹,用于存储待备份内容,命令模式子备份内容包括第一命令;在第一命令执行后,得到第一路径,第一路径包括第二文件或第二文件夹;基于第一文件或第一文件夹、第二文件或第二文件夹,确定文件树,文件树包括文件和消息摘要算法md5值;在备份内容集包含增量备份的情况下,对比文件树中的各分支路径及md5值,获取差异文件;根据差异文件,确定目标文件或目标文件夹,目标文件和目标文件夹的数量为多个;将多个目标文件或多个目标文件夹作为多个子备份内容。
在本申请的一个可能的实施方式中,第一拆分模块402,用于:对目标文件或目标文件夹进行压缩处理,得到目标压缩文件。
在本申请的一个可能的实施方式中,第一拆分模块402,用于:在多个子备份内容包含对应的备份目标的情况下,将对应的备份目标添加至多个子备份目标中;对添加后的多个子备份目标进行去重处理,得到目标备份目标。
在本申请的一个可能的实施方式中,第二拆分模块403,用于:基于备份目标模式,将备份目标集拆分为文件传输协议FTP模式子备份目标、安全文件传输协议SFTP模式子备份目标、路径模式子备份目标、软件开发工具包SDK模式子备份目标和命令模式子备份目标。
在本申请的一个可能的实施方式中,第二拆分模块403,用于:在子备份目标为FTP模式和SFTP模式的情况下,配置目标地址、端口、用户名和密码;在子备份目标为路径模式的情况下,确定目标路径,目标路径包括本地路径、挂载路径和局域网内的共享文件夹;在子备份目标为SDK模式的情况下,配置对应的密钥。
在本申请的一个可能的实施方式中,该数据备份系统还可以包括:重试模块。
其中,重试模块,用于在备份失败的情况下,通过补偿机制进行备份重试。
在本申请的一个可能的实施方式中,该数据备份系统还可以包括:通知模块。
其中,通知模块,用于对备份结果进行通知,备份结果包括备份完成、补偿次数。
本申请实施例中的数据备份系统可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personaldigital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(NetworkAttached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的数据备份系统可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的数据备份系统能够实现图1-3的方法实施例实现的各个过程,达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种可读存储介质,可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如上述任一实施例提供的数据备份方法实施例的各个过程。且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (10)
1.一种数据备份方法,其特征在于,包括:
读取待备份文件中的配置信息,所述配置信息包括配置的全局设置、备份内容集和备份目标集;
将备份内容集拆分为多个子备份内容,所述备份内容集为待备份的数据的集合,所述多个子备份内容包括子备份内容配置;
将备份目标集拆分为多个子备份目标,所述备份目标集为所述待备份的数据的存储位置的集合,所述多个子备份目标包括子备份目标配置;
将所述多个子备份内容与所述多个子备份目标相对应,确定目标对应关系;
根据所述配置的全局设置、所述子备份内容配置和所述子备份目标配置,确定目标配置;
基于所述目标对应关系和所述目标配置,对所述待备份文件进行备份。
2.根据权利要求1所述的数据备份方法,其特征在于,所述将备份内容集拆分为多个子备份内容,包括:
基于备份内容模式,将所述备份内容集拆分为路径模式子备份内容和命令模式子备份内容,所述路径模式子备份内容包括第一文件或第一文件夹,用于存储待备份内容,所述命令模式子备份内容包括第一命令;
在所述第一命令执行后,得到第一路径,所述第一路径包括第二文件或第二文件夹;
基于所述第一文件或所述第一文件夹、所述第二文件或所述第二文件夹,确定文件树,所述文件树包括文件和消息摘要算法md5值;
在所述备份内容集包含增量备份的情况下,对比所述文件树中的各分支路径及md5值,获取差异文件;
根据差异文件,确定目标文件或目标文件夹,所述目标文件和所述目标文件夹的数量为多个;
将多个所述目标文件或多个所述目标文件夹作为所述多个子备份内容。
3.根据权利要求2所述的数据备份方法,其特征在于,在所述根据差异文件,确定目标文件或目标文件夹之后,所述方法还包括:
对所述目标文件或目标文件夹进行压缩处理,得到目标压缩文件。
4.根据权利要求2所述的数据备份方法,其特征在于,所述方法还包括:
在所述多个子备份内容包含对应的备份目标的情况下,将所述对应的备份目标添加至所述多个子备份目标中;
对添加后的所述多个子备份目标进行去重处理,得到目标备份目标。
5.根据权利要求1所述的数据备份方法,其特征在于,所述将备份目标集拆分为多个子备份目标,包括:
基于备份目标模式,将所述备份目标集拆分为文件传输协议FTP模式子备份目标、安全文件传输协议SFTP模式子备份目标、路径模式子备份目标、软件开发工具包SDK模式子备份目标和命令模式子备份目标。
6.根据权利要求5所述的数据备份方法,其特征在于,所述方法还包括:
在子备份目标为FTP模式和SFTP模式的情况下,配置目标地址、端口、用户名和密码;
在所述子备份目标为路径模式的情况下,确定目标路径,所述目标路径包括本地路径、挂载路径和局域网内的共享文件夹;
在所述子备份目标为SDK模式的情况下,配置对应的密钥。
7.根据权利要求1所述的数据备份方法,其特征在于,所述方法还包括:
在备份失败的情况下,通过补偿机制进行备份重试。
8.根据权利要求1所述的数据备份方法,其特征在于,在对所述待备份文件进行备份之后,所述方法还包括:
对备份结果进行通知,所述备份结果包括备份完成、补偿次数。
9.一种数据备份系统,其特征在于,包括:
读取模块,用于读取待备份文件中的配置信息,所述配置信息包括配置的全局设置、备份内容集和备份目标集;
第一拆分模块,用于将备份内容集拆分为多个子备份内容,所述备份内容集为待备份的数据的集合,所述多个子备份内容包括子备份内容配置;
第二拆分模块,用于将备份目标集拆分为多个子备份目标,所述备份目标集为所述待备份的数据的存储位置的集合,所述多个子备份目标包括子备份目标配置;
第一确定模块,用于将所述多个子备份内容与所述多个子备份目标相对应,确定目标对应关系;
第二确定模块,用于根据所述配置的全局设置、所述子备份内容配置和所述子备份目标配置,确定目标配置;
备份模块,用于基于所述目标对应关系和所述目标配置,对所述待备份文件进行备份。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-8任一项所述的数据备份方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311086683.2A CN117194101A (zh) | 2023-08-25 | 2023-08-25 | 数据备份方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311086683.2A CN117194101A (zh) | 2023-08-25 | 2023-08-25 | 数据备份方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117194101A true CN117194101A (zh) | 2023-12-08 |
Family
ID=88982748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311086683.2A Pending CN117194101A (zh) | 2023-08-25 | 2023-08-25 | 数据备份方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117194101A (zh) |
-
2023
- 2023-08-25 CN CN202311086683.2A patent/CN117194101A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10970276B2 (en) | Object loss reporting in a data storage system | |
JP4446738B2 (ja) | コンピュータファイルを効率的にバックアップするシステムと方法 | |
CN107045422B (zh) | 分布式存储方法和设备 | |
Arnold | Openstack swift: Using, administering, and developing for swift object storage | |
US7139808B2 (en) | Method and apparatus for bandwidth-efficient and storage-efficient backups | |
US8055937B2 (en) | High availability and disaster recovery using virtualization | |
US6704730B2 (en) | Hash file system and method for use in a commonality factoring system | |
US7441092B2 (en) | Multi-client cluster-based backup and restore | |
CN104679534B (zh) | 系统应用安装包加载处理方法、装置及终端 | |
CN113661490B (zh) | 用于安全地存储数据的方法和系统 | |
US20210064413A1 (en) | Deploying a cloud instance of a user virtual machine | |
EA005000B1 (ru) | Виртуальная система ленточного накопителя и способ | |
US20180329785A1 (en) | File system storage in cloud using data and metadata merkle trees | |
US11392458B2 (en) | Reconstructing lost data objects by generating virtual user files from available nodes within a cluster | |
CN111984465A (zh) | 数据库远程备份方法、装置、介质和电子设备 | |
US20090276476A1 (en) | Peer-to-peer data archiving and retrieval system | |
CN112800019A (zh) | 基于Hadoop分布式文件系统的数据备份方法及系统 | |
CN112380057A (zh) | 数据恢复方法、装置、设备及存储介质 | |
Lee et al. | Erasure coded storage systems for cloud storage—challenges and opportunities | |
US8195612B1 (en) | Method and apparatus for providing a catalog to optimize stream-based data restoration | |
US20060129521A1 (en) | System and method for restoring a file directory structure | |
WO2009031158A2 (en) | Method and apparatus for network based data recovery | |
CN117194101A (zh) | 数据备份方法及系统 | |
CN110958293A (zh) | 基于云服务器的文件传输方法、系统、服务器及存储介质 | |
CN114201343A (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 |