CN111176896A - 文件备份方法、装置及终端设备 - Google Patents
文件备份方法、装置及终端设备 Download PDFInfo
- Publication number
- CN111176896A CN111176896A CN201911384164.8A CN201911384164A CN111176896A CN 111176896 A CN111176896 A CN 111176896A CN 201911384164 A CN201911384164 A CN 201911384164A CN 111176896 A CN111176896 A CN 111176896A
- Authority
- CN
- China
- Prior art keywords
- file
- target
- metadata
- file system
- data block
- 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 107
- 238000012216 screening Methods 0.000 claims abstract description 58
- 238000003860 storage Methods 0.000 claims description 377
- 238000011084 recovery Methods 0.000 claims description 82
- 238000006243 chemical reaction Methods 0.000 claims description 56
- 238000004590 computer program Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 description 23
- 238000012545 processing Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000013500 data storage Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000013507 mapping Methods 0.000 description 11
- 238000013467 fragmentation Methods 0.000 description 10
- 238000006062 fragmentation reaction Methods 0.000 description 10
- 230000007474 system interaction Effects 0.000 description 6
- 238000013519 translation Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000004044 response Effects 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
- 101000884385 Homo sapiens Arylamine N-acetyltransferase 1 Proteins 0.000 description 2
- 101001034811 Homo sapiens Eukaryotic translation initiation factor 4 gamma 2 Proteins 0.000 description 2
- 101000688930 Homo sapiens Signaling threshold-regulating transmembrane adapter 1 Proteins 0.000 description 2
- 101000740162 Homo sapiens Sodium- and chloride-dependent transporter XTRP3 Proteins 0.000 description 2
- 101000639975 Homo sapiens Sodium-dependent noradrenaline transporter Proteins 0.000 description 2
- 102100024453 Signaling threshold-regulating transmembrane adapter 1 Human genes 0.000 description 2
- 102100033769 Sodium-coupled neutral amino acid transporter 3 Human genes 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000010926 purge Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 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/1458—Management of the backup or restore process
-
- 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
-
- 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/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请适用于数据备份技术领域,提供了一种文件备份方法、装置及终端设备,其中方法包括:获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据;从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块;将目标元数据和目标文件数据块,恢复至第二文件系统的元数据区和文件数据区。本申请实施例可以节约大量的数据块读取时间,文件备份的效率大大提升。
Description
技术领域
本申请属于数据备份技术领域,尤其涉及文件备份方法、装置及终端设备。
背景技术
在进行文件系统的数据清除时,若需要保留一部分文件,往往都是先将原文件系统中需要保留的文件按照目录结构逐条拷贝出来,再将文件按照目录结构逐条写入目标文件系统,但实际情况中文件系统往往存在较为严重的数据碎片化情况,从而导致文件备份的过程耗时极长,效率低下。
发明内容
本申请实施例提供了文件备份方法、装置及终端设备,可以解决文件备份效率低下问题。
第一方面,本申请实施例提供了一种文件备份方法,包括:
先获取待备份文件的文件类型,再对第一文件系统的元数据区中元数据包含的类型标识进行匹配,从第一文件系统的元数据区中筛选出文件类型对应的目标文件数据。
在获取到目标元数据之后,根据目标元数据从第一文件系统的文件数据区之中筛选出目标元数据对应的目标文件数据块,从而完成了对待备份文件对应的目标元数据和目标文件数据块的筛选。
最后将筛选出的所有目标元数据和目标文件数据块恢复到第二文件系统之中,完成对待备份文件的备份。
由于文件系统中文件是以文件数据块的形式进行存储的,同时单个元数据可以同时索引一个或多个文件数据块,因此在进行文件备份时,根据元数据的顺序以及元数据索引文件数据块的顺序,可以实现对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份效率得到极大的提升。
在第一方面的一种可能的实现方式中,当第一文件系统和第二文件系统是同一系统时,对目标元数据和目标文件数据块进行恢复的操作具体包括:
将所述目标元数据和目标文件数据块拷贝至第一存储空间,并在所述第一文件系统数据清除后,将第一存储空间中的目标元数据拷贝至第二文件系统的元数据区,以及将第一存储空间中的目标文件数据块拷贝至第二文件系统的文件数据区。其中,第一存储空间可以是终端设备的内部存储空间,也可以是其他存储器件的存储空间。
在本申请实施例中,通过设置一个转存的空间进行目标元数据和目标文件数据块存储,并在数据清除完成后才进行文件备份,保障了第一文件系统文件备份的正常进行。
在第一方面的另一种可能的实现方式中,当第一文件系统和第二文件系统不是同一系统时,但第一文件系统和第二文件系统都是安装于同一终端设备时,对目标元数据和目标文件数据块进行恢复的操作具体包括:
将目标元数据和目标文件数据块拷贝至第一存储空间,并在第二文件系统安装完成后,将第一存储空间中的目标元数据拷贝至第二文件系统的元数据区,以及将第一存储空间中的目标文件数据块拷贝至第二文件系统的文件数据区。
在本申请实施例中,通过设置一个转存的空间进行目标元数据和目标文件数据块存储,并在文件系统安装完成后才进行文件备份,保障了第一文件系统文件备份的正常进行。
在第一方面的另一种可能的实现方式中,为了能最大程度地兼容不同第一文件系统和第二文件系统的不同实际情况,保障对待备份文件的快速安全备份,本申请实施例包括:
获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。获取目标元数据在第一文件系统中的第一存储地址。
从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。获取目标文件数据块在第一文件系统中的第二存储地址。
若第一文件系统与第二文件系统的系统类型和容量均相同,且第二文件系统内未存储数据,按照第一存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第二存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
若第一文件系统的系统类型和第二文件系统的系统类型相同,且第二文件系统和第一文件系统的容量不相同,和/或,第二文件系统内存储有数据,对第一存储地址进行地址转换得到第三存储地址,并对第二存储地址进行转换得到第四存储地址。按照第三存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第四存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
若第一文件系统的系统类型和第二文件系统的系统类型不相同,对目标元数据和目标文件数据块进行格式转换。对第一存储地址进行地址转换得到第五存储地址,并对第二存储地址进行转换得到第六存储地址。按照第五存储地址,将格式转换后的目标元数据拷贝至第二文件系统的元数据区,并按照第六存储地址,将格式转换后的目标文件数据块拷贝至第二文件系统的文件数据区。
本申请实施例在获取到目标元数据、目标文件数据块、第一储存地址以及第二储存地址之后,会根据第一文件系统和第二文件系统的系统类型、容量以及第二文件系统数据存储情况来识别场景,并根据不同的场景特点设计了对应的恢复方案。由此可知,本申请实施例可以实现对三种场景的兼容处理,保障在任意一种场景之中对目标元数据和目标文件数据的快速安全备份,且可以保障第二文件系统对恢复后的目标元数据和目标文件数据的正常存储和使用。
在第一方面的另一种可能的实现方式中,第一文件系统可以是F2FS文件系统,此时目标元数据和目标文件数据块的筛选过程,包括:
遍历所述第一文件系统内各个sit_entry数据的类型标识,筛选出类型标识与所述文件类型匹配的目标sit_entry数据;遍历所述第一文件系统内的各个nat_entry数据的类型标识,筛选出类型标识与所述文件类型匹配的目标nat_entry数据;
从所述第一文件系统的文件数据区中,筛选出所述目标sit_entry数据或所述目标nat_entry数据对应的所述目标文件数据块。
由于sit_entry数据和nat_entry数据都可以定位出文件数据块在文件数据区中对应的位置,因此此时可以通过目标sit_entry数据和目标nat_entry数据中的任意一个数据,来进行目标文件数据块的定位筛选。
第二方面,对应于第一方面的文件备份方法,本申请实施例提供了一种文件备份装置,包括:
元数据获取模块,用于获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
数据块获取模块,用于从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
数据恢复模块,用于将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
第三方面,本申请实施例提供了一种文件备份方法,应用于安装有第一文件系统的第一终端设备,所述文件备份方法包括:
获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据和所述目标文件数据块发送至安装有第二文件系统的第二终端设备,以指示所述第二终端设备将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
由于文件系统中文件是以文件数据块的形式进行存储的,同时单个元数据可以同时索引一个或多个文件数据块,因此在进行文件备份时,根据元数据的顺序以及元数据索引文件数据块的顺序,可以实现对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份效率得到极大的提升,同时,可以实现跨设备的文件备份。
第四方面,对应于第三方面的文件备份方法,本申请实施例提供了一种文件备份系统,包括:第一终端设备和第二终端设备,所述第一终端设备中安装有第一文件系统,所述第二终端设备中安装有第二文件系统;
所述第一终端设备用于,获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
所述第一终端设备还用于,从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
所述第一终端设备还用于,将所述目标元数据和所述目标文件数据块发送至所述第二终端设备;
所述第二终端设备用于,将所述目标元数据恢复至所述第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
第五方面,本申请实施例提供了一种文件备份方法,应用于安装有第一文件系统的第一终端设备,所述文件备份方法包括:
获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据和所述目标文件数据块发送至存储设备,以指示所述存储设备,对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据和所述目标文件数据块发送至安装有第二文件系统的第二终端设备,通过所述第二终端设备将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
由于文件系统中文件是以文件数据块的形式进行存储的,同时单个元数据可以同时索引一个或多个文件数据块,因此在进行文件备份时,根据元数据的顺序以及元数据索引文件数据块的顺序,可以实现对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份效率得到极大的提升。同时,通过在两个终端设备之间设置一个存储设备,由该存储设备对目标元数据和目标文件数据块进行转存,一方面,使得即使文件备份过程出现了数据丢失等错误,也可以及时从存储设备中恢复,进而提高了目标元数据和目标文件数据块的安全性和可靠性,另一方面,对于由于物理空间距离过远和硬件配置不支持同种设备直连等原因,无法实现终端设备之间直连操作的情况,本申请实施例也可以很好地进行终端设备之间的文件备份。
第六方面,对应于第五方面的文件备份方法,本申请实施例提供了一种文件备份系统,包括:第一终端设备、第二终端设备和存储设备,所述第一终端设备中安装有第一文件系统,所述第二终端设备中安装有第二文件系统;
所述第一终端设备用于,获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
所述第一终端设备还用于,从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
所述第一终端设备还用于,将所述目标元数据和所述目标文件数据块发送至所述存储设备;
所述存储设备用于,对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据和所述目标文件数据块发送至所述第二终端设备;
所述第二终端设备用于,将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
第七方面,本申请实施例提供了一种文件备份方法,应用于安装有第一文件系统的第一终端设备,包括:
获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据和所述目标文件数据块发送至存储设备,以指示所述存储设备对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区,所述第二文件系统安装于第二终端设备。
由于文件系统中文件是以文件数据块的形式进行存储的,同时单个元数据可以同时索引一个或多个文件数据块,因此在进行文件备份时,根据元数据的顺序以及元数据索引文件数据块的顺序,可以实现对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份效率得到极大的提升。同时,通过在两个终端设备之间设置一个存储设备,由该存储设备对目标元数据和目标文件数据块进行转存,一方面,使得即使文件备份过程出现了数据丢失等错误,也可以及时从存储设备中恢复,进而提高了目标元数据和目标文件数据块的安全性和可靠性,另一方面,对于由于物理空间距离过远和硬件配置不支持同种设备直连等原因,无法实现终端设备之间直连操作的情况,本申请实施例也可以很好地进行终端设备之间的文件备份。另外,本申请实施例还可以适应一些数据处理能力较弱的第二终端设备情况,实现快速安全的文件备份。
第八方面,对应于第七方面的文件备份方法,本申请实施例提供了一种文件备份系统,包括:第一终端设备、第二终端设备和存储设备,所述第一终端设备中安装有第一文件系统,所述第二终端设备中安装有第二文件系统;
所述第一终端设备用于,获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
所述第一终端设备还用于,从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
所述第一终端设备还用于,将所述目标元数据和所述目标文件数据块发送至所述存储设备;
所述存储设备用于,对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
第九方面,本申请实施例提供了一种终端设备,所述终端设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述文件备份方法的步骤。
第十方面,本申请实施例提供了一种计算机可读存储介质,包括:存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述文件备份方法的步骤。
第十一方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的文件备份方法的步骤。
可以理解的是,上述第二方面以及第九方面至第十一方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例一提供的文件备份方法的流程示意图;
图2A是本申请实施例二提供的应用场景示意图;
图2B是本申请实施例二提供的另一应用场景示意图;
图3是本申请实施例四提供的文件备份方法的流程示意图;
图4A是本申请实施例五提供的应用场景示意图;
图4B是本申请实施例五提供的另一应用场景示意图;
图5是本申请实施例六提供的另一文件备份方法的流程示意图;
图6是本申请实施例七提供的文件备份系统的系统交互示意图;
图7是本申请实施例八提供的另一文件备份方法的流程示意图;
图8是本申请实施例九提供的另一文件备份系统的系统交互示意图;
图9是本申请实施例十提供的另一文件备份方法的流程示意图;
图10是本申请实施例十一提供的另一文件备份系统的系统交互示意图;
图11是本申请实施例十二提供的文件备份装置的结构示意图;
图12是本申请实施例十三提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。还应理解的是,虽然术语“第一”、“第二”等在文本中在一些本申请实施例中用来描述各种元素,但是这些元素不应该受到这些术语的限制。这些术语只是用来将一个元素与另一元素区分开。例如,第一文件系统可以被命名为第二文件系统,并且类似地,第二文件系统可以被命名为第一文件系统,而不背离各种所描述的实施例的范围。第一文件系统和第二文件系统都是文件系统,但是它们不是同一文件系统。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
为了便于理解本申请,此处先对本申请实施例进行简要说明:
文件系统,是操作系统中负责管理和存储文件信息的软件机构,是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统,文件系统由三部分组成:与文件管理有关软件、被管理文件以及实施文件管理所需数据结构。文件系统内有元数据区和文件数据区,其中,文件数据区是负责对文件进行存储的区域,且在文件数据区中文件是以文件数据块的形式进行存储。元数据区是支持文件系统架构的区域,用于存储文件的索引、有效性、健壮性保护等元数据,以及文件系统本身的属性数据。
在进行文件系统的数据清除时,有时可能需要保留原文件系统中的一些文件,例如一些设备系统运行时所必须的部分资源和应用安装包等文件、在利用全覆盖更新的方式对设备系统软件进行更新时的更新文件,以及用户使用时产生的一些可用于作为设备凭证的一次性数据文件,对于这些文件,即使对文件系统进行格式化等数据清除操作,也是希望在数据清除操作后保证文件不丢失。为了保留这些文件,相关技术往往都是先将原文件系统中需要保留的文件按照目录结构逐条拷贝出来,再将文件按照目录结构逐条写入目标文件系统,但实际情况中文件系统往往存在较为严重的数据碎片化情况,当按照目录结构的文件夹顺序来进行文件备份时,由于同一文件夹下的文件可能会分散储存在各处,甚至同一文件也可能被拆分储存至各处,从而导致备份的过程会有大量的随机寻址读存数据的操作,进而导致整个备份的过程耗时极长,效率低下。
为了提高文件备份的效率,本申请实施例会预先在元数据中标识各个文件的文件类型,在需要进行文件备份时,根据待备份文件的文件类型来选取出待备份文件的元数据,并根据元数据来确定出待备份文件对应的各个文件数据块,最后对选取出的元数据和文件数据块进行目标文件系统的备份,从而完成了对待备份文件的备份。由于文件系统中文件是以文件数据块的形式进行存储的,同时单个元数据可以同时索引一个或多个文件数据块,因此在进行文件备份时,根据元数据的顺序以及元数据索引文件数据块的顺序,可以实现对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份的效率大大提升。其中,对文件类型确定的方法此处不予限定,可由技术人员根据实际情况设定,例如在一些实施例中,可以由技术人员预先提供可选择的文件类型选项并存储至终端设备之中,由终端设备在用户进行文件存储或文件类型修改时,对可选择的文件类型选项进行显示,以供用户进行选取设置,在另一些实施例中,也可以由技术人员预先设置好各个文件对应的文件类型,此时终端设备只需要根据设置好的文件类型数据来对文件进行分类标识即可。
同时,对本申请实施例中涉及到的一些名词进行解释如下:
第一文件系统和第二文件系统,其中,第一文件系统是指需要进行文件保留的原文件系统,以下简称原系统,第二文件系统是指文件目标存储的文件系统,以下简称目标系统,本申请实施例中的文件备份,即是指将待备份文件对应的目标元数据和目标文件数据块从原系统备份到目标系统中,同时应当理解地,在不同的实际应用场景之中,原系统和目标系统既可以是同一个系统,也可以是不同的两个系统,当为同一个系统时,目标系统即为经过数据清除之后的原系统。
类型标识,用于标识文件类型的数据,在本申请实施例中,会预先在文件对应的元数据中选取或增加一个字段专门用于记录文件的类型标识,并会在每次新增文件和修改文件类型时,根据实际文件的文件类型来设置或更新文件元数据中的类型标识。其中,本申请实施例不对文件类型的划分规则以及对应类型标识的数据内容进行限定,可由技术人员根据实际需求进行设定,例如在一些实施例中,可以以不同等级的方式来设定文件需备份的重要等级,此时每个文件对应的文件类型就是一个具体的等级,如第一级、第二级和第三级,而类型标识就是一个具体的等级标识,如可以设置为:第一级对应的类型标识为A,第二级对应的类型标识为B,第三级对应的类型标识为C,而在另一些实施例之中,也可以根据不同应用场景之下对文件备份的实际需求,来对文件进行分类并设置对应的类型标识,例如对应于a场景、b场景和c场景,将三个场景之下需备份的文件分别划分为第一类、第二类和第三类文件,此时对应的类型标识就是一个具体的分类标识,如可以设置为:第一类对应的类型标识为数字1,第二类对应的类型标识为数字2,第三类对应的类型标识为数字3。
同时,本申请实施例中,文件备份方法的执行主体为具有一定数据处理功能和数据存储功能的终端设备,其中一定的数据处理功能,是指可以进行本申请实施例中的数据筛选和拷贝等操作。同时,本申请实施例不对终端设备的具体设备类型进行限定,包括但不限于如手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等终端设备。
为了说明本申请的技术方案,下面通过具体实施例来进行说明。
实施例一:
图1示出了本申请实施例一提供的文件备份方法的实现流程图,详述如下:
S101,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
由上述说明可知,本申请实施例会预先设置好对文件类型的划分规则以及每种文件类型对应的类型标识,并会在每次文件存储和文件类型修改时,根据文件实际类型进行元数据中类型标识的设置或更新,因此在进行文件备份时,只需要获取待备份文件的文件类型,并根据文件类型对应的类型标识对第一文件系统元数据区内的元数据进行标识匹配,即可实现对待备份文件对应的元数据的快速定位。其中,对待备份文件的文件类型的获取方式此处不予限定,根据实际场景需求的不同,获取的方法也可以存在一定的差异,例如可以在终端设备中进行可选取文件类型的显示,由用户自行在终端设备中进行选取操作,再根据用户的操作确定出具体待备份文件的文件类型,亦可以由技术人员预先选取好一些默认备份的文件类型,此时直接读取默认的文件类型即可。
同时应当说明地,由于不同应用场景之下所需备份的文件数量可能有所差异,使得对应待备份的文件类型数量也可能存在差异,即本申请实施例中待备份的文件类型既可以仅包含一种文件类型,也可以同时包含多种文件类型,本申请实施例不对具体待备份的文件类型数进行限定,可由技术人员根据实际应用场景选取或设定。以一实例对S101进行说明,假设将文件类型划分为第一类、第二类、第三类文件和第四类,且设置第一类对应的类型标识为数字1,第二类对应的类型标识为数字2,第三类对应的类型标识为数字3,第四类对应的类型标识为数字4,同时,在预先设置好各个文件元数据对应的类型标识的基础上,假设需要备份第二类和第四类的文件,此时本申请实施例会对第一文件系统元数据区中的各个元数据分别进行类型标识的匹配,筛选出类型标识为2或4的所有元数据,从而到所有包含类型标识为2或4的目标元数据。
S102,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
应当说明地,由于文件系统中文件是以文件数据块的形式进行存储,而单个文件数据块的实际体积往往较小,因此实际应用中,大部分的文件系统对于体积较大的文件往往都会被分散存储至多个文件数据块中。同时单个文件对应的元数据也会以一个或多个最小存储单元的形式进行存储,其中根据不同文件系统对元数据的存储方式的不同,元数据的最小存储单元包括但不限于如元数据段和元数据块,具体需根据实际文件系统确定。因此一个元数据最小存储单元可能同时对应着多个文件数据块。同时由于单个最小存储单元可以索引的文件数据块数量较为有限,因此在文件体积大于单个最小存储单元可索引的文件数据块体积之和时,文件系统就会采用多个最小存储单元来对同一个文件对应的文件数据块进行地址索引。因此实际应用中单个文件可能同时对应着多个元数据最小存储单元,并同时对应着多个文件数据块。在本申请实施例中,将所有待备份文件对应的元数据最小存储单元内的数据统称为目标元数据,同时将所有待备份文件对应的文件数据块统称为目标文件数据块。
由于元数据中会记载对应文件数据块的地址索引,因此根据目标元数据中存储的地址索引,即可快速定位出所需备份的目标文件数据块(实际文件数据块定位操作中还可能会涉及到文件数据块之间的地址索引,即根据某一文件数据块内存储的其他文件数据块的存储地址或位置关系,来索引查找出对应的其他文件数据块,因此具体的目标文件数据块查找过程,需根据实际的目标元数据情况以及查找出的目标文件数据块情况决定,此处不予详述)。其中,由上述说明可知,对于单个目标元数据而言,由于其可以同时索引多个目标文件数据块,因此在进行目标文件数据块读取的时候,可以根据目标元数据中的地址索引实现对目标文件数据块的顺序读取。其中,在不同的可选实施方式中,顺序读取可以包括:
1、针对元数据内存储着全盘顺序索引的情况,例如F2FS文件系统中的段信息表数据,此时得到的地址索引本身就是顺序依靠的,此时顺序读取速度很快,效率极高。
2、针对元数据内没有存储着全盘顺序索引的情况,此时读取出来的地址索引本身既可能是顺序依靠的,也可能是存在一定间隔的,甚至可能存在顺序错乱。对于顺序依靠的情况,顺序读取的速度很快效率高。对于存在一定间隔的地址索引,由于地址索引属于已知数据,因此可以通过先对地址索引进行排序再依次进行读取的操作,从而使得顺序读取变成了对已有地址索引的依次查找。此时相对现有技术中的地址索引需要大量的随机寻址读存数据而言,读取的速度无疑更快,效率更高。对于顺序错乱的情况,亦可以通过先先对地址索引进行排序使得索引地址的顺序恢复正常,再依次进行读取的操作,使得顺序读取变成了对已有地址索引的依次查找。此时相对现有技术中的地址索引需要大量的随机寻址读存数据而言,读取的速度同样更快,效率更高。
同时,对于同一待备份文件的目标元数据而言,若将S102设置为每次遍历多个目标元数据,并对当次遍历的目标元数据对应的目标文件数据块进行读取,此时可以实现对目标元数据的顺序读取,并实现更大范围的目标文件数据块顺序读取。因此相对需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以极大地减少文件数据块寻址操作的耗时,节约大量的文件数据块读取时间,进而提升文件备份的效率。
S103,将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
在筛选出所需备份的目标元数据和目标文件数据块之后,只需将目标元数据和目标文件数据块恢复至目标系统的元数据区和文件数据区,即可实现对待备份文件的有效备份。本申请实施例不对具体的目标元数据和目标文件数据块恢复方法进行限定,可由技术人员根据实际需求进行选取或者设定,亦可以参考本申请实施例三的相关说明。
为了提高文件备份的效率,本申请实施例会预先在元数据中标识各个文件的文件类型,在需要进行文件备份时,根据待备份文件的文件类型来选取出待备份文件的元数据,并根据元数据来确定出待备份文件对应的各个文件数据块,最后对选取出的元数据和文件数据块进行目标文件系统的备份,从而完成了对待备份文件的备份。由于文件系统中文件是以文件数据块的形式进行存储的,同时单个元数据可以同时索引一个或多个文件数据块,因此在进行文件备份时,根据元数据的顺序以及元数据索引文件数据块的顺序,可以实现对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份的效率大大提升。
实施例二:
根据实际应用场景的不同,本申请实施例一中的原系统和目标系统既可以是同一系统也可以是不同系统,因此在本申请实施例中,S103至少包括两种可能的情况:
1、原系统和目标系统是同一系统。此时,将目标元数据和目标文件数据块恢复至目标系统,实际是指将目标元数据和目标文件数据块恢复至数据清除操作完成后的原系统。
2、原系统和目标系统不是同一系统。此时,将目标元数据和目标文件数据块恢复至目标系统,则是指将目标元数据和目标文件数据块存储至目标系统。
其中,对于情况1而言,由于原系统需要进行数据清除,因此在进行S103的恢复操作之前,必须有一个转存的空间进行目标元数据和目标文件数据块存储,因此为了保障原系统数据备份的正常进行,作为本申请的一个实施例,对目标元数据和目标文件数据块进行恢复的操作具体包括:
将所述目标元数据和目标文件数据块拷贝至第一存储空间。
其中,根据实际应用场景的不同,第一存储空间具体情况可以存在一定的差异,例如,第一存储空间可以是作为执行主体的终端设备的内部存储空间,如一些智能手机在设计时就会预留出一部分内存用于进行数据临时存储,此时就可以将这些预留的内存空间作为本申请实施例中的第一存储空间,同时,第一存储空间也可以是终端设备之外的其他存储器件中的存储空间,例如可以在终端设备外接一个如优盘和内存卡之类的存储器件,此时第一存储空间就是指这些存储器件内的存储空间,或者也可以将终端设备与具有存储功能的第三方设备进行连接,并由第三方设备进行目标元数据和目标文件数据的转存,此时第一存储空间就是指第三方设备中的存储空间。
在所述第一文件系统数据清除后,将第一存储空间中的目标元数据拷贝至第二文件系统的元数据区,以及将第一存储空间中的目标文件数据块拷贝至第二文件系统的文件数据区。
在完成对目标元数据和目标文件数据的转存之后,本申请实施例会等待原系统的数据清除操作,直至数据清除操作完成之后,才会将目标元数据和目标文件数据重新拷贝至原系统的元数据区和文件数据区。其中,数据清除的方式根据实际场景情况而定,此处不予限定,包括但不限于如数据格式化、删除所有数据以及重新安装文件系统等。
另一方面,对于情况2而言,此时需要根据原系统和目标系统是否安装于同一终端设备,来确定是否需要等待原系统的数据清除操作,以及具体对应的数据恢复操作:
a、若原系统和目标系统都是安装于同一终端设备,即对终端设备安装新的文件系统。
此时仍需要在进行S103的恢复操作之前有一个转存的空间进行数据存储,且需要在目标系统安装完成之后,再对目标元数据和目标文件数据块进行恢复的操作,作为本申请的一个实施例,此时对目标元数据和目标文件数据块进行恢复的操作具体包括:
将目标元数据和目标文件数据块拷贝至第一存储空间。
在第二文件系统安装完成后,将第一存储空间中的目标元数据拷贝至第二文件系统的元数据区,以及将第一存储空间中的目标文件数据块拷贝至第二文件系统的文件数据区。
其中,具体的原理可参考情况1对应的实施例说明,此处不予赘述,区别仅在于本申请实施例对应的在第二文件系统安装完成后,触发对应的目标元数据和目标文件数据块恢复操作。
b、若原系统和目标系统是安装于不同终端设备,即文件备份是指将待备份文件从一个终端设备中备份到另一个终端设备中。
以终端设备均为手机为例,假设本申请实施例的执行主体为手机A,安装有目标系统的终端设备为手机B,参考图2A,此时理论上可以直接将目标元数据和目标文件数据块存储至目标系统而不进行转存,且由于目标系统与原系统不在一个终端设备之中,因此无论原系统数据清除是否完成,都不会影响对目标元数据和目标文件数据块的恢复,即S103数据恢复的操作无需考虑原系统数据清除是否完成,即在一些实施例中,可以在筛选出所需备份的目标元数据和目标文件数据块之后,直接由作为执行主体的终端设备控制,将筛选出来的目标元数据和目标文件数据块恢复至另一台终端设备之中。
实际应用中发现,直接进行跨设备的数据备份可能存在一定的数据丢失风险,不利于数据备份安全性和可靠性,因此在另一些实施例之中,对目标元数据和目标文件数据块进行恢复的操作具体包括:
将目标元数据和目标文件数据块拷贝至第一存储空间。
将第一存储空间中的目标元数据拷贝至第二文件系统的元数据区,以及将第一存储空间中的目标文件数据块拷贝至第二文件系统的文件数据区。
其中,具体的原理与情况1对应的实施例相同,此处不予赘述,但与情况1对应的实施例不同之处在于,本申请实施例无需考虑原系统数据清除是否完成,同样以终端设备均为手机为例,假设本申请实施例的执行主体为手机A,安装有目标系统的终端设备为手机B,第一存储空间是指存储设备中的存储空间,参考图2B,在将目标元数据和目标文件数据块转存至存储设备之后,即可由作为执行主体的终端设备控制,将存储设备中的目标元数据和目标文件数据块恢复至另一台终端设备之中。
实施例三:
在一些安全性要求较高的场景之中,为了保障文件的安全,常常会对文件进行数据块级别的加密存储,此时若按照目录结构的文件夹顺序进行文件备份,就必须先对整个文件数据区进行解密,才能在解密后的数据中找到文件数据块之间和目录路径之间等逻辑关系,从而形成对应的文件或文件夹的相应信息,并进行待备份文件所有文件数据块的查找和备份操作,这样虽然可以实现文件备份,但由于所有文件数据块都被解密,且文件会以未加密的状态暴露,从而使得整个文件备份的过程文件安全性极低。
为了在保障文件备份效率的同时提高文件备份的安全性,考虑到实际应用中文件系统的类型有很多种,例如HDFS、NFS、F2FS和HFS+等,对于不同类型的文件系统而言,其元数据的种类、存储方式、格式和体积,以及文件数据块的存储方式和体积等都可能会存在一定的差异,因此对于不同类型的两个文件系统而言,在进行文件恢复时需要考虑到文件系统之间的数据格式转换,以保障写入目标系统的数据可以被目标系统正常存储和使用,而对于相同类型的文件系统而言,在进行文件恢复时虽然不用进行数据格式转换等操作,但由于不同文件系统的数据存储情况也有可能会存在一定差异,例如文件系统的容量大小的可能存在差异,同时目标系统当前的存储情况不一定与原系统提取目标元数据和目标文件数据块时的存储情况相同,因此即使是同一类型的文件系统在进行文件恢复时,也需要根据实际两个文件系统的容量和当前存储情况来制定适宜的恢复方案,以保障写入目标系统的数据可以被目标系统正常存储和使用,因此在上述本申请实施例一或二的基础上,本申请实施例会根据原系统和目标系统的系统类型、容量以及数据存储情况,来进行文件备份场景的分类,并针对每种场景的特点和需求提供对应安全性较高的目标元数据和目标文件数据块恢复方案,可选的场景分类及对应恢复方案详述如下:
场景1:原系统和目标系统的系统类型和容量均相同,且目标系统中未存储数据。
其中,未存储数据是指文件系统未被写入数据。当原系统和目标系统的系统类型和容量均相同时,说明原系统和目标系统对数据的存储方式和最大存储能力相同,此时若目标系统中未被写入数据,说明目标系统内的元数据区和文件数据区任意位置都可以进行数据存储,理论上此时可以在不进行任何地址映射情况下,直接将目标元数据和目标文件数据块放入目标系统之中,实现对目标元数据和目标文件数据块的无地址偏移恢复。在此基础上,作为对场景1的一种可选目标元数据与目标文件数据块的恢复方案A,在S103之前,本申请实施例还包括:
获取目标元数据在第一文件系统中的第一存储地址。获取目标文件数据块在第一文件系统中的第二存储地址。
为了将目标元数据和目标文件数据块恢复至目标系统,首先需要获知目标元数据和目标文件数据块在原系统之中的存储地址,因此本申请实施例在S103进行数据恢复操作之前,还会获取目标元数据在第一文件系统的元数据区中的第一储存地址,以及目标文件数据块在第一文件系统的文件数据区中的第二存储地址。其中,本申请实施例不对获取第一储存地址和第二存储地址的执行时机进行过多限制,只需保障在S103之前即可,如可以是在S101筛选出目标元数据的同时获取对应的第一储存地址,在S102筛选出目标文件数据块的同时获取对应的第二储存地址,也可以是在S102之后S103之前,获取第一储存地址和第二存储地址。
同时,当本申请实施例与上述本申请实施例二进行结合时,若需要使用第一存储空间进行数据转存,此时需将第一储存地址、第二储存地址、目标元数据和目标文件数据一同存储至第一存储空间。
将目标元数据与目标文件数据块恢复至目标系统的具体操作步骤,包括:
若第一文件系统与第二文件系统的系统类型和容量均相同,且第二文件系统内未存储数据,按照第一存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第二存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
在获取到第一储存地址和第二储存地址的基础上,本申请实施例会直接按照对应的第一存储地址,来将目标元数据一一拷贝到目标系统的元数据区之中,同时按照对应的第二储存地址将各个目标文件数据块一一拷贝至目标系统文件数据区之中,此时各个目标元数据和目标文件数据块在目标系统中的位置与在原系统中的位置完全相同,因此无需对元数据和文件数据块中包含的一些数据索引信息进行修改,也可以保证目标元数据和目标文件数据块可以被目标系统正常存储和使用。
在本申请实施例中,当处于场景1时,会根据目标元数据和目标文件数据块在原系统中的存储地址,直接拷贝到目标系统对应位置,从而实现对目标元数据和目标文件数据在目标系统中的无地址偏移恢复,同时,由于本申请实施例对文件数据块的备份无需进行存储地址修改,因此不存在地址映射和文件数据块之间的地址索引信息更新,进而使得即使对文件数据块进行了加密,本申请实施例的文件备份全过程也无需对已加密文件数据块解密操作,避免了对文件数据块以及整体文件的暴露风险,极大地增强了文件备份的安全性。
场景2:原系统和目标系统的系统类型相同,但两者的容量不同,或者目标系统中存储有数据,或者两者容量不同且目标系统中存储有数据。
其中,存储有数据是指文件系统已被写入数据。原系统和目标系统的系统类型相同说明两者对数据存储的方式相同,无需进行数据格式转换,但当两者容量不同时,说明元数据与文件数据块之间地址索引和目录路径关键等,会因为容量变化而发生一定的偏移,进而使得这些信息在目标系统中无法直接使用,而当目标系统中存储有数据时,说明目标系统中第一存储地址和第二存储地址对应的位置处可能会有数据存储,无法直接进行对应位置的数据拷贝,因此,在原系统和目标系统容量不一致和目标系统中已被写入数据这两种情况中的任意一种或两种发生时,都说明此时无法直接进行目标元数据和目标文件数据的拷贝,必须要有一个地址转换的操作,以保证数据在目标系统中正常存储和使用。在此基础上,作为对场景2的一种可选目标元数据与目标文件数据块的恢复方案B,在S103之前,本申请实施例还包括:
获取目标元数据在第一文件系统中的第一存储地址。获取目标文件数据块在第一文件系统中的第二存储地址。
此处的原理与恢复方案A相同,具体可参考恢复方案A中的相关说明,此处不予赘述。
将目标元数据与目标文件数据块恢复至目标系统的具体操作步骤,包括:
若第一文件系统的系统类型和第二文件系统的系统类型相同,且第二文件系统和第一文件系统的容量不相同,和/或,第二文件系统内存储有数据,对第一存储地址进行地址转换得到第三存储地址,并对第二存储地址进行转换得到第四存储地址。
在获取到第一储存地址和第二储存地址的基础上,本申请实施例会对第一存储地址进行转换,得到目标元数据在目标系统的元数据区中对应的第三储存地址,以及目标文件数据块在目标系统的文件数据区中对应的第四储存地址。其中,本申请实施例不对具体使用的地址转换方法进行限定,可由技术人员根据实际需求进行选取或者设定,包括但不限于如使用哈希映射、散列表映射或内存映射的方法进行地址映射转换。
按照第三存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第四存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
在确定出第三储存地址和第四储存地址之后,本申请实施例会按照对应的第三存储地址,来将目标元数据一一拷贝到目标系统的元数据区之中,同时按照对应的第四储存地址将各个目标文件数据块一一拷贝至目标系统文件数据区之中,此时由于容量差异和数据存储情况的差异,一般都会导致目标元数据和目标文件数据块产生一定的存储地址偏移,进而实现对目标元数据和目标文件数据块的地址偏移恢复。
在本申请实施例中,当处于场景2时,会根据目标元数据和目标文件数据块在原系统中的存储地址进行地址转换得到在目标系统中对应的存储地址,并根据转换后的存储地址进行目标元数据和目标文件数据块的拷贝,使得本申请实施例可以实现对数据的有效恢复,保证目标元数据和目标文件数据块可以被目标系统正常存储和使用,同时由于本申请实施例是基于文件数据块级别的数据恢复,因此即使文件系统中对文件数据块进行了加密,本申请实施例也只要在有需要使用某个文件数据块内的信息时,才对该文件数据块进行解密,既无需对整个文件数据区进行数据解密,更无需还原出待备份文件的文件全貌,避免了对大量文件数据块以及整体文件的暴露风险,使得本申请实施例对文件备份的安全性大大提升。
在恢复方案B的基础上,考虑到实际应用之中,文件数据块之间可能会存在一定的关联,对于存在关联文件数据块的情况,一般会在文件数据块中存储一些相关联的文件数据块的存储地址,例如当单个文件被分散存储为多个文件数据块时,实际应用中元数据中一般仅会记录该文件对应的部分文件数据块储存地址,同时会在这些文件数据块之中设置一个地址索引字段,用于记录关联的一个或多个文件数据块的存储地址,此时对该文件对应文件数据块的查找过程就是先通过元数据定位出部分文件数据块,再根据已定位出来的数据块中地址索引字段的存储地址,来进一步定位出剩余的文件数据块,进而实现对该文件所有文件数据块的筛选定位。在此基础上,为了保障目标元数据和目标文件数据块可以被目标系统正常使用,就必须保障各个目标文件数据块中地址索引字段记录数据的准确可靠。
作为本申请的一个实施例,为了保障各个目标文件数据块中地址索引字段记录数据的准确可靠,恢复方案B中,按照第四存储地址将目标文件数据块拷贝至第二文件系统的文件数据区的操作,具体包括:
若目标文件数据块中包含地址索引字段,根据第二储存地址和第四存储地址更新地址索引字段,并按照第四存储地址,将更新后的目标文件数据块拷贝至第二文件系统的文件数据区,地址索引字段用于存储一个或多个目标文件数据块的存储地址。
对于存在地址索引字段的目标文件数据块,本申请实施例会根据其内原本记录的相关文件数据块的第二存储地址查询对应的第四存储地址,并将查询出的第四储存地址替换原第二存储地址记录至地址索引字段之中,从而实现对地址索引字段内数据的准确更新,再根据该目标文件数据块第四存储地址,对该目标文件数据块进行拷贝,即可保障目标系统中的各个目标文件数据块中地址索引字段记录数据的准确可靠。
在上述场景2相关的各个实施例的基础上,考虑到实际情况中目标文件数据块可能存在被加密的情况,此时无法直接读取目标文件数据块中的数据,更无法修改其中地址索引字段内的存储地址,因此需要对已加密的目标文件数据块进行解密,并在解密的基础上进行地址索引字段等操作,因此,在本申请实施例中,对地址索引字段更新的操作,具体包括:
若目标文件数据块中包含地址索引字段且目标文件数据块被加密,对目标文件数据块进行解密,得到解密后的地址索引字段。
根据第二存储地址和第四存储地址更新解密后的地址索引字段,并对更新后的目标文件数据块进行加密。
当目标文件数据块需要进行地址索引字段更新但又被加密时,本申请实施例会先对其进行解密,从而得到解密后的目标文件数据块,再根据地址索引字段中记录的关联文件数据块的第二存储地址查询出对应的第四存储地址,并对地址索引字段进行更新,最后再对更新后的目标文件数据块重新进行加密处理,即可实现对加密目标文件数据块的地址索引字段准确更新,保障各个目标文件数据块中地址索引字段记录数据的准确可靠,同时由于本申请实施例是以单个目标文件数据块为单位进行加密解密,以及地址索引字段的更新操作,因此不会将整个待备份文件完整解密,进而保证了整个过程的安全性。
场景3:原系统和目标系统的系统类型不相同。
当原系统和目标系统的系统类型不同时,说明两者对元数据存储和文件数据块存储的方式会存在一定的差异,因此理论上无法直接进行目标元数据和目标文件数据块的拷贝。为了适应原系统和目标系统的系统类型不同的情况,需要对筛查出来的目标元数据和目标文件数据块进行格式转换和存储地址转换,以保证数据恢复后,目标元数据和目标文件数据块可以被目标系统正常存储和使用。在此基础上,作为对场景3的一中可选目标元数据与目标文件数据块的恢复方案C,在S103之前,本申请实施例还包括:
获取目标元数据在第一文件系统中的第一存储地址。获取目标文件数据块在第一文件系统中的第二存储地址。
此处的原理与恢复方案A相同,具体可参考恢复方案A中的相关说明,此处不予赘述。
将目标元数据与目标文件数据块恢复至目标系统的具体操作步骤,包括:
若第一文件系统的系统类型和第二文件系统的系统类型不相同,对目标元数据和目标文件数据块进行格式转换。对第一存储地址进行地址转换得到第五存储地址,并对第二存储地址进行转换得到第六存储地址。
其中,具体的格式转换方法可由技术人员根据实际原系统和目标系统对元数据和文件数据块的存储要求选取或设定(在文件系统的系统类型已知的情况下,文件系统对元数据的种类、存储方式、格式和体积,以及文件数据块的存储方式和体积等存储需求都是已知信息),此处不予限定,只需保证在存储地址无误的基础上,转换后的目标元数据和目标文件数据可以正常被目标系统进行存储和使用即可。
按照第五存储地址,将格式转换后的目标元数据拷贝至第二文件系统的元数据区,并按照第六存储地址,将格式转换后的目标文件数据块拷贝至第二文件系统的文件数据区。
在确定出第五储存地址和第六储存地址之后,本申请实施例会按照对应的第五存储地址,来将目标元数据一一拷贝到目标系统的元数据区之中,同时按照对应的第六储存地址将各个目标文件数据块一一拷贝至目标系统文件数据区之中,进而实现对目标元数据和目标文件数据块的有效恢复。
在本申请实施例中,当处于场景3时,会根据原系统和目标系统对数据的存储要求对目标元数据和目标文件数据块进行格式转换,并根据目标元数据和目标文件数据块在原系统中的存储地址进行地址转换得到在目标系统中对应的存储地址,最后转换后的存储地址进行目标元数据和目标文件数据块的拷贝,使得本申请实施例可以实现对数据的有效恢复,保证目标元数据和目标文件数据块可以被目标系统正常存储和使用,同时由于本申请实施例是基于文件数据块级别的数据恢复,因此即使文件系统中对文件数据块进行了加密,本申请实施例也只要在有需要使用某个文件数据块内的信息时,才对该文件数据块进行解密(未加密的情况下,只需进行格式转换和地址转换即可),既无需对整个文件数据区进行数据解密,更无需还原出待备份文件的文件全貌,避免了对大量文件数据块以及整体文件的暴露风险,使得本申请实施例对文件备份的安全性大大提升。
作为本申请的一个可选实施例,在恢复方案B的基础上,为了保障各个目标文件数据块中地址索引字段记录数据的准确可靠,按照第六存储地址,将格式转换后的目标文件数据块拷贝至第二文件系统的文件数据区的操作,具体包括:
若格式转换后的目标文件数据块中包含地址索引字段,根据第二储存地址和第六存储地址更新地址索引字段,并按照第六存储地址,将更新后的目标文件数据块拷贝至第二文件系统的文件数据区,地址索引字段用于存储一个或多个目标文件数据块的存储地址。
本申请实施例的原理与上述恢复方案B中实施例的原理相同,仅是将第四存储地址替换为了第六存储地址,具体可参加恢复方案B中实施例的相关说明,此处不予赘述。
在本申请实施例三中,当不需要进行数据格式转换和存储地址转换时,本申请实施例整个文件备份的过程耗时较短,可以极大地缩短文件备份导致的终端设备不可用的时长,优化了用户体验,而当需要进行数据格式转换和/或存储地址转换时,在待备份文件不会影响用户正常使用终端设备的情况下,数据格式转换和存储地址转换的操作,均可以在用户正常使用终端设备时后台进行,此时整个文件备份导致的终端设备不可用的时长,对于用户而言是极短的,进而优化了用户体验。同时,对于本申请实施例一至三的文件备份方法可能带来的存储碎片化问题,也同样可以在用户正常使用终端设备时后台进行文件碎片整理操作,以保证用户的良好使用体验。
实施例四:
由本申请实施例三的说明可知,恢复方案A、恢复方案B和恢复方案C分别是对场景1、场景2和场景3对应的独立恢复方案,为了应对三种场景,实际应用中可以将恢复方案A、恢复方案B和恢复方案C分别与上述本申请实施例一和二进行结合,从而得到对应的文件备份细化方案,但实际应用中每次文件备份可能遇到的场景是未知的,因此仅仅结合单种恢复方案并不能很好地应对实际场景情况。
为了更好兼容不同实际场景,保证在不同场景下对目标元数据和目标文件数据块的高效安全备份,在本申请实施例中会对恢复方案A、恢复方案B和恢复方案C排列组合,从而到以下4种组合方案:
组合方案1:恢复方案A+恢复方案B。
组合方案2:恢复方案A+恢复方案C。
组合方案3:恢复方案B+恢复方案C。
组合方案4:恢复方案A+恢复方案B+恢复方案C。
在4种组合方案的基础上,可以任意选择一种组合方案来与本申请实施例一和二进行组合,进而得到对应的文件备份细化方案,此时得到的文件备份细化方案中,会根据原系统和目标系统的系统类型、容量以及目标系统数据存储情况来识别场景,并根据具体的场景进行从组合方案中选取实际场景对应的恢复方案。其中,具体的组合方案选取方法此处不予限定,可由技术人员根据实际应用需求进行选取。应当理解地,对于单个恢复方案与本申请实施例一和二结合应用的文件备份细化方案中,在S103之前,必须要有一次对目标元数据和目标文件数据块在原系统中的第一储存地址和第二存储地址的获取操作,以保障后续恢复方案的正常执行,但对于组合方案与本申请实施例一和二结合应用的情况,由于组合方案中各个恢复方案都是对S103的并列细化方案,此时对应的在S103之前,只需要有一次获取第一储存地址和第二存储地址的操作即可。
以一实例进行说明,在本申请实施例中假设将组合方案4与本申请实施例一进行结合应用,且设置在筛选出目标元数据的同时获取对应的第一存储地址,在筛选出目标文件数据块的同时获取对应的第二存储地址,参考图3,本申请实施例,包括:
S301,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。获取目标元数据在第一文件系统中的第一存储地址。
S302,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。获取目标文件数据块在第一文件系统中的第二存储地址。
S303,若第一文件系统与第二文件系统的系统类型和容量均相同,且第二文件系统内未存储数据,按照第一存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第二存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
S304,若第一文件系统的系统类型和第二文件系统的系统类型相同,且第二文件系统和第一文件系统的容量不相同,和/或,第二文件系统内存储有数据,对第一存储地址进行地址转换得到第三存储地址,并对第二存储地址进行转换得到第四存储地址。
S305,按照第三存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第四存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
S306,若第一文件系统的系统类型和第二文件系统的系统类型不相同,对目标元数据和目标文件数据块进行格式转换。对第一存储地址进行地址转换得到第五存储地址,并对第二存储地址进行转换得到第六存储地址。
S307,按照第五存储地址,将格式转换后的目标元数据拷贝至第二文件系统的元数据区,并按照第六存储地址,将格式转换后的目标文件数据块拷贝至第二文件系统的文件数据区。
本申请实施例在获取到目标元数据、目标文件数据块、第一储存地址以及第二储存地址之后,会根据原系统和目标系统的系统类型、容量以及目标系统数据存储情况来识别场景,在为场景1时,采用恢复方案A来进行数据恢复,在为场景2时,采用恢复方案B来进行数据恢复,在为场景3时,采用恢复方案C来进行数据恢复(这其中仅会获取一次第一储存地址和第二储存地址)。由此可知,本申请实施例可以实现对三种场景的兼容处理,保障在任意一种场景之中对目标元数据和目标文件数据的快速安全备份,且可以保障目标系统对恢复后的目标元数据和目标文件数据的正常存储和使用。
实施例五:
作为本申请的一个具体实施例,以原系统为F2FS文件系统为例,对上述本申请实施例一至四中文件备份的操作进行相关说明。
首先对F2FS文件系统的元数据区和文件数据区进行说明,参考图4A,F2FS文件系统的元数据区中,包含有超级块(Super block)、检查点(Check point)、段信息表(SegmentInformation Table,SIT)、节点地址表(Node Address Table,NAT)和段摘要区(SegmentSummary Area,SSA),其中,对各个部分的说明如下:
SIT,用于标识文件数据区中每个文件数据块上的数据有效性,SIT中的数据也是以数据块的形式进行存储,其中每个SIT数据块由多个sit_entry数据填充,每个sit_entry数据对应一个64字节的valid_map,一个valid_map对应文件数据区内512个文件数据块,因此sit_entry数据和文件数据区内的文件数据块是按照物理地址顺序一一对应的,理论上可以通过SIT计算对应的文件数据块位置偏移数据,即可实现对文件数据块的定位,而不需要记录文件数据真实的存储地址。
NAT,用于记录文件的索引节点(inode)数据,在进行文件读取的时候,首先会向NAT查找文件对应的inode,由于inode是文件/文件夹的唯一索引编号,因此根据文件路径逐级查找,在文件数据区找到文件或文件夹的最终inode数据,再根据inode数据在NAT中即可找到文件在文件数据区对应的文件数据块位置,实现对文件数据块的定位。NAT以nat_entry数据填充,每个nat_entry数据记录一个inode以及该inode在文件数据区对应的存储地址。需要说明的是,nat_entry数据中记录的inode与其对应的文件数据块存储地址没有物理地址顺序关系,随着用户数据不断被写入、修改和擦除,inode对应的文件数据块存储地址可能是文件数据区中的任意位置。(通常文件系统创建之后,NAT中会有一个文件系统的根节点的inode数据)
Check point,用于记录SIT和NAT中每个字段的有效性,在元数据区中,SIT和NAT各有两份,即SIT0/SIT1和NAT0/NAT1,Check point即用于记录是使用SIT0中的对应字段还是SIT1中的对应字段,以及是使用NAT0中的对应字段还是NAT1中的对应字段。
SSA,用于记录SIT和NAT的操作日志信息。
Super block,用于记录文件系统的整体信息,包括inode和文件数据块的总量、使用量、剩余量,以及文件系统的格式与相关信息等。
在本申请实施例中,会预先在sit_entry数据和/或nat_entry数据中设置一个标识字段用于存储类型标识,该字段既可以是在sit_entry数据和/或nat_entry数据中新增的字段,也可以是复用一个sit_entry数据和/或nat_entry数据中已有的字段,其中既可以仅选取sit_entry数据进行标识字段设置,也可以仅选取nat_entry数据进行标识字段设置,亦可以在sit_entry数据和nat_entry数据中,均设置对应的标识字段,具体可由技术人员自行设定,此处不予限定。
在设置好标识字段的基础上,本申请实施例在文件系统每次创建一个新的文件或者修改文件类型的时候,由业务层申明该文件的类型或者继承父目录的类型属性以确定出文件对应的类型,并会根据确定出的类型来设置或修改标识字段中的类型标识数据,并在NAT中添加该文件头的inod数据。
当文件被删除时,本申请实施例会同时将文件在SIT的valid_map中对应的标识进行删除,并删除NAT中对应的inode数据。
同时,在对文件操作时,本申请实施例还会同步在CheckPoint和SSA中进行一些对应的辅助操作和记录。
以下对本申请实施例进行文件备份的步骤进行说明:
步骤1:目标元数据和目标文件数据块的筛选。
作为本申请的一个可选实施例,若在sit_entry数据和nat_entry数据中均设置对应的标识字段,在以F2FS文件系统为原系统进行文件备份时,对应S101和S102的操作具体包括:
遍历第一文件系统内各个sit_entry数据的类型标识,筛选出类型标识与文件类型匹配的目标sit_entry数据。遍历第一文件系统内的各个nat_entry数据的类型标识,筛选出类型标识与文件类型匹配的目标nat_entry数据。
从第一文件系统的文件数据区中,筛选出目标sit_entry数据或目标nat_entry数据对应的目标文件数据块。
由上述对F2FS文件系统的说明可知,对在sit_entry数据和nat_entry数据设置标识字段共有三种情况,本申请实施例中仅以其中的一种:同时在sit_entry数据和nat_entry数据设置标识字段为例进行说明,此时S101中需要同时在sit_entry数据和nat_entry数据中匹配出文件类型对应的类型标识,以实现对文件类型对应的目标sit_entry数据和目标nat_entry数据的有效筛选。
同时,由于sit_entry数据和nat_entry数据都可以定位出文件数据块在文件数据区中对应的位置,因此此时可以通过目标sit_entry数据和目标nat_entry数据中的任意一个数据,来进行目标文件数据块的定位筛选。其中具体选取目标sit_entry数据还是目标nat_entry数据此处不予限定,可由技术人员自行设定。
作为本申请的另一个可选实施例,若仅在nat_entry数据中设置对应的标识字段,在以F2FS文件系统为原系统进行文件备份时,对应S101和S102的操作具体包括:
遍历第一文件系统内的各个nat_entry数据的类型标识,筛选出类型标识与文件类型匹配的目标nat_entry数据。
从第一文件系统的文件数据区中,筛选出目标nat_entry数据对应的目标文件数据块。根据目标文件数据块在文件数据区中的位置,查找出对应的目标sit_entry数据。
在本申请实施例中,仅在nat_entry数据中设置对应的标识字段,因此S101中需要对nat_entry数据的类型标识进行遍历,以找出对应的目标nat_entry数据。在S102中,则需要根据目标nat_entry数据定位出对应的目标文件数据块,但应理解地,由于SIT中记录的也是文件的元数据,因此本申请实施例中还需要根据目标文件数据块在文件数据区中的位置(此位置既可以是物理存储地址,也可以是位置偏移数据)来定位出对应的目标sit_entry数据,进而实现对目标元数据的完整获取。
作为本申请的另一个可选实施例,若仅在sit_entry数据中设置对应的标识字段,在以F2FS文件系统为原系统进行文件备份时,对应S101和S102的操作具体包括:
遍历第一文件系统内各个sit_entry数据的类型标识,筛选出类型标识与文件类型匹配的目标sit_entry数据。
从第一文件系统的文件数据区中,筛选出目标sit_entry数据对应的目标文件数据块。根据目标文件数据块在文件数据区中的存储地址,查找出对应的目标nat_entry数据。
在本申请实施例中,仅在sit_entry数据中设置对应的标识字段,因此S101中需要对sit_entry数据的类型标识进行遍历,以找出对应的目标sit_entry数据。在S102中,则需要根据目标sit_entry数据定位出对应的目标文件数据块,但应理解地,由于NAT中记录的也是文件的元数据,因此本申请实施例中还需要根据目标文件数据块在文件数据区中的物理存储地址来定位出对应的目标nat_entry数据,进而实现对目标元数据的完整获取。
与本申请实施例二对应的,本申请实施例五中目标nat_entry数据、目标sit_entry数据和目标文件数据块的存储,也可以根据实际情况来选择是否需要进行第一存储空间的转存,具体可参考本申请实施例二中的相关说明,此处不予赘述。
作为本申请的一个可选实施例,在对目标nat_entry数据、目标sit_entry数据和目标文件数据块进行备份的同时,也可以将检查点数据和段摘要区数据一同备份,以保障文件系统的健壮性。其中,若需要使用第一存储空间进行转存,此时转存的操作,包括:
获取第一文件系统的元数据区中的检查点数据和段摘要区数据,并将检查点数据、段摘要区数据、目标sit_entry数据和目标nat_entry数据拷贝至第一存储空间。
步骤2:将目标元数据和目标文件数据恢复至目标系统。
其中,恢复的原理和一些可选的恢复方案等说明,可参考本申请实施例三和四中的说明,此处不予赘述。为了便于理解本申请实施例,此处仅以目标系统也是F2FS文件系统为例进行说明。
当本申请实施例处于本申请实施例三中的场景1的情况时,此时本申请实施例一会直接根据目标nat_entry数据和目标sit_entry数据在原系统的元数据区中的存储地址,直接拷贝到目标系统元数据区中对应的存储地址内,同时根据目标文件数据块在文件数据区内的存储地址,直接拷贝到目标系统文件数据区中对应的存储地址内。
当本申请实施例处于本申请实施例三中的场景2的情况时,此时原系统和目标系统容量不同,和/或目标系统内存储有数据,因此需要先进行存储地址转换才能进行下一步的数据恢复,作为一个可选的存储地址转换实施例,参考图4B,转换的操作如下:
对于目标sit_entry数据,目标sit_entry数据中的valid_map向目标系统中的valid_map写入时,地址转换就是直接映射,即找到目标系统中空闲长度足够的SIT段,再将目标sit_entry数据映射至该对应的空闲SIT段,如图4B中的将原系统中的目标sit_entry数据M1映射至目标系统中的Mk,1<k<n。
对于目标nat_entry数据,首先确定目标nat_entry数据对应的目标sit_entry数据,根据目标sit_entry数据的第一存储地址和第三存储地址映射关系,确定出目标nat_entry数据的第一存储地址和第三存储地址映射关系,再根据该映射关系和目标nat_entry数据的第一存储地址,可确定出目标nat_entry数据对应的第三存储地址。在对目标nat_entry数据进行存储地址转换和恢复的同时,还需要根据目标nat_entry数据新的第三存储地址,对目标nat_entry数据中的inode数据进行更新,以保证目标nat_entry数据的正常可用。
对于目标文件数据块,与目标nat_entry数据类似的,根据目标sit_entry数据的第一存储地址和第三存储地址映射关系,以及目标文件数据块对应的目标nat_entry数据和目标文件数据块的第二存储地址,即可定位出目标文件数据块对应的第四存储地址并进行拷贝。
其中,在对目标文件数据块中node索引(即上述本申请实施例三中的地址索引字段)进行更新时,操作包括:遍历目标文件数据块,提取出各个目标文件数据块的地址索引字段中记录的一/二/三级存储地址,并各个目标文件数据块的第四存储地址,对相关联的目标文件数据块中的地址索引字段,进行一/二/三级存储地址更新,以保证目标文件数据块之间能正常进行地址索引,保证目标系统对目标文件数据块的正常使用。
在本申请实施例五中,对F2FS文件系统中的sit_entry数据和/或nat_entry数据进行类型标识,并在需要进行文件备份的时候,根据待备份文件的文件类型来选取出待备份文件的sit_entry数据和/或nat_entry数据,并根据选取出来的sit_entry数据和/或nat_entry数据来进行目标文件数据块的顺序读取,最后对sit_entry数据、nat_entry数据和目标文件数据块进行目标文件系统的备份,从而实现了对文件数据块的批量顺序读取,在文件系统数据碎片化严重的情况下,相比需要进行大量的随机数据块读取的基于目录结构文件备份而言,本申请实施例可以节约大量的文件数据块读取时间,文件备份的效率大大提升。
同时,通过对场景1、场景2和场景3设置对应的恢复方案,使得在进行数据恢复时,可以通过仅解密单个文件数据块,甚至不解密任何文件数据块的方式,实现对sit_entry数据、nat_entry数据和目标文件数据块的恢复,相对相关技术而言,文件暴露的可能性大大降低,文件备份的安全性得到了极大的提升。且通过设置不同的恢复方案组合,还可以实现对不同实际应用场景的良好兼容,保障在任意一种场景之中对sit_entry数据、nat_entry数据和目标文件数据块的快速安全备份,且可以保障目标系统对恢复后的sit_entry数据、nat_entry数据和目标文件数据块的正常存储和使用。
实施例六:
图5示出了本申请实施例六提供的文件备份方法的实现流程图,应用于安装有第一文件系统的第一终端设备,详述如下:
S501,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
S502,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
S503,将目标元数据和目标文件数据块发送至安装有第二文件系统的第二终端设备,目标元数据和目标文件数据用于指示第二终端设备,将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
本申请实施例六的文件备份原理与本申请实施例一相同,此处不予详述,具体可参考本申请实施例一及其他相关实施例的说明,但与本申请实施例一不同之处在于,在本申请实施例六中,作为执行主体的第一终端设备会与另一个安装有目标系统的第二终端设备直接连接,在此基础上,第一终端设备只需进行目标元数据和目标文件数据块的筛选,并将目标元数据和目标文件数据块发送给安装有目标系统的第二终端设备,具体的目标元数据和目标文件数据块恢复至目标系统操作,由第二终端设备完成。
可以理解地,本申请实施例六同样可以和上述本申请实施例二至五进行结合应用,此时只需将目标元数据和目标文件数据块恢复至目标系统的相关操作,分配给本申请实施例六中的第二终端设备即可,具体可参考上述本申请实施例二至五的说明,此处不予赘述。
实施例七:
对应于上文实施例六的文件备份方法,图6示出了本申请实施例提供的文件备份系统的系统交互示意图,为了便于说明,仅示出了与本申请实施例相关的部分。
文件备份系统,包括:第一终端设备和第二终端设备,第一终端设备中安装有第一文件系统,第二终端设备中安装有第二文件系统。
S601,第一终端设备用于,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
S602,第一终端设备还用于,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
S603,第一终端设备还用于,将目标元数据和目标文件数据块发送至第二终端设备。
S604,第二终端设备用于,将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
本申请实施例提供文件备份系统中各终端设备实现各自功能的过程,具体可参考前述图5所示实施例六以及其他相关方法实施例的描述,此处不再赘述。
实施例八:
图7示出了本申请实施例八提供的文件备份方法的实现流程图,应用于安装有第一文件系统的第一终端设备,详述如下:
S701,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
S702,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
S703,将目标元数据和目标文件数据块发送至存储设备,以指示存储设备,对目标元数据和目标文件数据块进行存储,并将目标元数据和目标文件数据块发送至安装有第二文件系统的第二终端设备,通过第二终端设备将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
本申请实施例八的文件备份原理与本申请实施例二相同,此处不予详述,具体可参考本申请实施例一和二及其他相关实施例的说明。
但与本申请实施例二的不同之处在于,在本申请实施例八中,作为执行主体的第一终端设备会与一个存储设备(对应于本申请实施例二,此时第一存储空间就是指该存储设备中的存储空间)直接连接,而该存储设备会和另一个安装有目标系统的第二终端设备直接连接,在此基础上,第一终端设备只需进行目标元数据和目标文件数据块的筛选,并将目标元数据和目标文件数据块发送给存储设备,由存储设备对目标元数据和目标文件数据块存储完成后,发送给安装有目标系统的第二终端设备,具体的目标元数据和目标文件数据块恢复至目标系统操作则由第二终端设备完成。
可以理解地,本申请实施例八同样可以和上述本申请实施例三至五进行结合应用,此时只需将目标元数据和目标文件数据块恢复至目标系统的相关操作,分配给本申请实施例八中的第二终端设备即可,具体可参考上述本申请实施例三至五的说明,此处不予赘述。
同时应当说明地,与本申请实施例六相比,考虑到实际情况中终端设备直连并进行实时的数据传输和处理时,一方面容易出现数据丢失等问题,此时由于原系统可能已经开始了数据清除,从而导致丢失或出错的数据无法进行恢复,另一方面,受到物理空间距离和硬件配置等因素的限制,很多时候两个终端设备难以直接进行连接和数据传输,因此使得本申请实施例六难以实现。为了解决上述问题,本申请实施例八会在两个终端设备之间设置一个存储设备,由该存储设备对目标元数据和目标文件数据块进行转存,一方面,使得即使文件备份过程出现了数据丢失等错误,也可以及时从存储设备中恢复,进而提高了目标元数据和目标文件数据块的安全性和可靠性,另一方面,对于由于物理空间距离过远和硬件配置不支持同种设备直连等原因,无法实现终端设备之间直连操作的情况,本申请实施例也可以很好地进行终端设备之间的文件备份,例如,可以通过将云端服务器作为存储设备,来对物理空间距离较远的两个地点处的两台终端设备进行文件备份。
实施例九:
对应于上文实施例的文件备份方法,图8示出了本申请实施例提供的文件备份系统的系统交互示意图,为了便于说明,仅示出了与本申请实施例相关的部分。
文件备份系统,包括:第一终端设备、第二终端设备和存储设备,第一终端设备中安装有第一文件系统,第二终端设备中安装有第二文件系统。
S801,第一终端设备用于,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
S802,第一终端设备还用于,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
S803,第一终端设备还用于,将目标元数据和目标文件数据块发送至存储设备。
S804,存储设备用于,对目标元数据和目标文件数据块进行存储,并将目标元数据和目标文件数据块发送至第二终端设备。
S805,第二终端设备用于,将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
本申请实施例提供文件备份系统中各终端设备和存储设备实现各自功能的过程,具体可参考前述图7所示实施例八以及其他相关方法实施例的描述,此处不再赘述。
实施例十:
图9示出了本申请实施例十提供的文件备份方法的实现流程图,应用于安装有第一文件系统的第一终端设备,详述如下:
S901,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
S902,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
S903,将目标元数据和目标文件数据块发送至存储设备,以指示存储设备对目标元数据和目标文件数据块进行存储,并将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区,第二文件系统安装于第二终端设备。
本申请实施例十的文件备份原理与本申请实施例二相同,此处不予详述,具体可参考本申请实施例一和二及其他相关实施例的说明。
但与本申请实施例二的不同之处在于,在本申请实施例十中,作为执行主体的第一终端设备会与一个存储设备(对应于本申请实施例二,此时第一存储空间就是指该存储设备中的存储空间)直接连接,而该存储设备会和另一个安装有目标系统的第二终端设备直接连接,在此基础上,第一终端设备只需进行目标元数据和目标文件数据块的筛选,并将目标元数据和目标文件数据块发送给存储设备,由存储设备对目标元数据和目标文件数据块存储完成后,发送给安装有目标系统的第二终端设备,并将目标元数据和目标文件数据块恢复至第二终端设备中的目标系统,因此在本申请实施例十中,具体的目标元数据和目标文件数据块恢复至目标系统操作是由存储设备完成。
可以理解地,本申请实施例十同样可以和上述本申请实施例三至五进行结合应用,此时只需将目标元数据和目标文件数据块恢复至目标系统的相关操作,分配给本申请实施例十中的存储设备即可,具体可参考上述本申请实施例三至五的说明,此处不予赘述。
同时应当说明地,与本申请实施例六相比,考虑到实际情况中终端设备直连并进行实时的数据传输和处理时,一方面容易出现数据丢失等问题,此时由于原系统可能已经开始了数据清除,从而导致丢失或出错的数据无法进行恢复,另一方面,受到物理空间距离和硬件配置等因素的限制,很多时候两个终端设备难以直接进行连接和数据传输,因此使得本申请实施例六难以实现。为了解决上述问题,本申请实施例十会在两个终端设备之间设置一个存储设备(该存储设备是具有数据恢复的处理能力和存储能力的终端设备),由该存储设备对目标元数据和目标文件数据块进行转存,一方面,使得即使文件备份过程出现了数据丢失等错误,也可以及时从存储设备中恢复,进而提高了目标元数据和目标文件数据块的安全性和可靠性,另一方面,对于由于物理空间距离过远和硬件配置不支持同种设备直连等原因,无法实现终端设备之间直连操作的情况,本申请实施例也可以很好地进行终端设备之间的文件备份,例如,可以通过将云端服务器作为存储设备,来对物理空间距离较远的两个地点处的两台终端设备进行文件备份。
与本申请实施例八相比,本申请实施例十中具体的目标元数据和目标文件数据块恢复至目标系统操作是由存储设备完成,其好处在于:可以适应一些数据处理能力较弱的第二终端设备,如对于移动硬盘等特殊的终端设备而言,其仅具备极弱数据处理能力,目标元数据和目标文件数据块恢复操作对其要求过高,因此此时可以由存储设备来实现对第二终端设备的数据写入等操作,以完成对目标元数据和目标文件数据块的恢复。
实施例十一:
对应于上文实施例十的文件备份方法,图10示出了本申请实施例提供的文件备份系统的系统交互示意图,为了便于说明,仅示出了与本申请实施例相关的部分。
文件备份系统,包括:第一终端设备、第二终端设备和存储设备,第一终端设备中安装有第一文件系统,第二终端设备中安装有第二文件系统。
S1001,第一终端设备用于,获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
S1002,第一终端设备还用于,从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
S1003,第一终端设备还用于,将目标元数据和目标文件数据块发送至存储设备。
S1004,存储设备用于,对目标元数据和目标文件数据块进行存储,并将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
本申请实施例提供文件备份系统中各终端设备和存储设备实现各自功能的过程,具体可参考前述图9所示实施例十以及其他相关方法实施例的描述,此处不再赘述。
应当特别说明地,在本申请实施例一至十一中,为了便于理解都是将“原系统需要进行数据清除”为背景进行了相关方案说明,但可以理解地,在实际应用中,当原系统和目标系统分别安装在两个不同的终端设备时,文件备份本身可以不与原系统是否进行数据清除相关联,即此时即使原系统不进行数据清除,上述本申请实施例仍可以实现对待备份文件的快速安全备份,以满足不同实际应用场景的需求,因此在此基础上,当原系统和目标系统分别安装在两个不同的终端设备时,上述本申请实施例一至十一中的原系统是可以不进行数据清除的,此时仍可以实现上述本申请实施例一至十一中相关的技术效果。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例一至五的文件备份方法,图11示出了本申请实施例提供的文件备份装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图11,该文件备份装置包括:
元数据获取模块111,用于获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从第一文件系统的元数据区中,筛选出文件类型对应的目标元数据。
数据块获取模块112,用于从第一文件系统的文件数据区中,筛选出目标元数据对应的目标文件数据块。
数据恢复模块113,用于将目标元数据恢复至第二文件系统的元数据区,以及将目标文件数据块恢复至第二文件系统的文件数据区。
进一步地,数据恢复模块113,包括:
存储模块,用于将目标元数据和目标文件数据块拷贝至第一存储空间。
恢复模块,用于将第一存储空间中的目标元数据拷贝至第二文件系统的元数据区,以及将第一存储空间中的目标文件数据块拷贝至第二文件系统的文件数据区。
进一步地,该文件备份装置,还包括:
第一地址获取模块,用于获取目标元数据在第一文件系统中的第一存储地址。
第二地址获取模块,用于获取目标文件数据块在第一文件系统中的第二存储地址。
进一步地,数据恢复模块113,还包括:
第一类恢复模块,用于若第一文件系统与第二文件系统的系统类型和容量均相同,且第二文件系统内未存储数据,按照第一存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第二存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
进一步地,数据恢复模块113,还包括:
第一地址转换模块,用于若第一文件系统的系统类型和第二文件系统的系统类型相同,且第二文件系统和第一文件系统的容量不相同,和/或,第二文件系统内存储有数据,对第一存储地址进行地址转换得到第三存储地址,并对第二存储地址进行转换得到第四存储地址。
第二类恢复模块,用于按照第三存储地址将目标元数据拷贝至第二文件系统的元数据区,并按照第四存储地址将目标文件数据块拷贝至第二文件系统的文件数据区。
进一步地,数据恢复模块113,还包括:
数据转换模块,用于若第一文件系统的系统类型和第二文件系统的系统类型不相同,对目标元数据和目标文件数据块进行格式转换。
第二地址转换模块,用于对第一存储地址进行地址转换得到第五存储地址,并对第二存储地址进行转换得到第六存储地址。
第三类恢复模块,用于按照第五存储地址,将格式转换后的目标元数据拷贝至第二文件系统的元数据区,并按照第六存储地址,将格式转换后的目标文件数据块拷贝至第二文件系统的文件数据区。
进一步地,第二类恢复模块,包括:
地址索引更新模块,用于若目标文件数据块中包含地址索引字段,根据第二储存地址和第四存储地址更新地址索引字段,并按照第四存储地址,将更新后的目标文件数据块拷贝至第二文件系统的文件数据区,地址索引字段用于存储一个或多个目标文件数据块的存储地址。
进一步地,地址索引更新模块,包括:
数据块解密模块,用于若目标文件数据块中包含地址索引字段且目标文件数据块被加密,对目标文件数据块进行解密,得到解密后的地址索引字段。
索引更新加密模块,用于根据第二存储地址和第四存储地址更新解密后的地址索引字段,并对更新后的目标文件数据块进行加密。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例一至五基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例一至五部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图12是本申请一实施例提供的终端设备的结构示意图。如图12所示,该实施例的终端设备12包括:至少一个处理器120(图12中仅示出一个)、存储器121,所述存储器121中存储有可在所述处理器120上运行的计算机程序122。所述处理器120执行所述计算机程序122时实现上述各个文件备份方法实施例中的步骤,例如图1所示的步骤101至103。或者,所述处理器120执行所述计算机程序122时实现上述各装置实施例中各模块/单元的功能,例如图10所示模块121至123的功能。
所述终端设备12可以是手机、平板电脑、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器120、存储器121。本领域技术人员可以理解,图12仅仅是终端设备12的示例,并不构成对终端设备12的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入发送设备、网络接入设备、总线等。
所称处理器120可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器121在一些实施例中可以是所述终端设备12的内部存储单元,例如终端设备12的硬盘或内存。所述存储器121也可以是所述终端设备12的外部存储设备,例如所述终端设备12上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器121还可以既包括所述终端设备12的内部存储单元也包括外部存储设备。所述存储器121用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器121还可以用于暂时地存储已经发送或者将要发送的数据。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (18)
1.一种文件备份方法,其特征在于,包括:
获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
2.如权利要求1所述的文件备份方法,其特征在于,所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区,包括:
将所述目标元数据和所述目标文件数据块拷贝至第一存储空间;
将所述第一存储空间中的所述目标元数据拷贝至所述第二文件系统的元数据区,以及将所述第一存储空间中的所述目标文件数据块拷贝至所述第二文件系统的文件数据区。
3.如权利要求1或2所述的文件备份方法,其特征在于,在所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区之前,还包括:
获取所述目标元数据在所述第一文件系统中的第一存储地址;获取所述目标文件数据块在所述第一文件系统中的第二存储地址;
所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区,包括:
若所述第一文件系统与所述第二文件系统的系统类型和容量均相同,且所述第二文件系统内未存储数据,按照所述第一存储地址将所述目标元数据拷贝至所述第二文件系统的元数据区,并按照所述第二存储地址将所述目标文件数据块拷贝至所述第二文件系统的文件数据区。
4.如权利要求1或2所述的文件备份方法,其特征在于,在所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区之前,还包括:
获取所述目标元数据在所述第一文件系统中的第一存储地址;获取所述目标文件数据块在所述第一文件系统中的第二存储地址;
所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区,包括:
若所述第一文件系统的系统类型和第二文件系统的系统类型相同,且所述第二文件系统和所述第一文件系统的容量不相同,和/或,所述第二文件系统内存储有数据,对所述第一存储地址进行地址转换得到第三存储地址,并对所述第二存储地址进行转换得到第四存储地址;
按照所述第三存储地址将所述目标元数据拷贝至所述第二文件系统的元数据区,并按照所述第四存储地址将所述目标文件数据块拷贝至所述第二文件系统的文件数据区。
5.如权利要求1或2所述的文件备份方法,其特征在于,在所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区之前,还包括:
获取所述目标元数据在所述第一文件系统中的第一存储地址;获取所述目标文件数据块在所述第一文件系统中的第二存储地址;
所述将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区,包括:
若所述第一文件系统的系统类型和第二文件系统的系统类型不相同,对所述目标元数据和所述目标文件数据块进行格式转换;对所述第一存储地址进行地址转换得到第五存储地址,并对所述第二存储地址进行转换得到第六存储地址;
按照所述第五存储地址,将格式转换后的所述目标元数据拷贝至所述第二文件系统的元数据区,并按照所述第六存储地址,将格式转换后的所述目标文件数据块拷贝至所述第二文件系统的文件数据区。
6.如权利要求3或5所述的文件备份方法,其特征在于,还包括:
若所述第一文件系统的系统类型和第二文件系统的系统类型相同,且所述第二文件系统和所述第一文件系统的容量不相同,和/或,所述第二文件系统内存储有数据,对所述第一存储地址进行地址转换得到第三存储地址,并对所述第二存储地址进行转换得到第四存储地址;
按照所述第三存储地址将所述目标元数据拷贝至所述第二文件系统的元数据区,并按照所述第四存储地址将所述目标文件数据块拷贝至所述第二文件系统的文件数据区。
7.如权利要求3或6所述的文件备份方法,其特征在于,还包括:
若所述第一文件系统的系统类型和第二文件系统的系统类型不相同,对所述目标元数据和所述目标文件数据块进行格式转换;对所述第一存储地址进行地址转换得到第五存储地址,并对所述第二存储地址进行转换得到第六存储地址;
按照所述第五存储地址,将格式转换后的所述目标元数据拷贝至所述第二文件系统的元数据区,并按照所述第六存储地址,将格式转换后的所述目标文件数据块拷贝至所述第二文件系统的文件数据区。
8.如权利要求4或6所述的文件备份方法,其特征在于,所述按照所述第四存储地址将所述目标文件数据块拷贝至所述第二文件系统的文件数据区,包括:
若所述目标文件数据块中包含地址索引字段,根据所述第二储存地址和所述第四存储地址更新所述地址索引字段,并按照所述第四存储地址,将更新后的所述目标文件数据块拷贝至所述第二文件系统的文件数据区,所述地址索引字段用于存储一个或多个目标文件数据块的存储地址。
9.如权利要求8所述的文件备份方法,其特征在于,所述若所述目标文件数据块中包含地址索引字段,根据所述第二储存地址和所述第四存储地址更新所述地址索引字段,包括:
若所述目标文件数据块中包含地址索引字段且所述目标文件数据块被加密,对所述目标文件数据块进行解密,得到解密后的所述地址索引字段;
根据所述第二存储地址和所述第四存储地址更新解密后的所述地址索引字段,并对更新后的所述目标文件数据块进行加密。
10.一种文件备份装置,其特征在于,包括:
元数据获取模块,用于获取待备份文件的文件类型,并根据第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
数据块获取模块,用于从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
数据恢复模块,用于将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
11.一种文件备份方法,其特征在于,应用于安装有第一文件系统的第一终端设备,所述文件备份方法包括:
获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据和所述目标文件数据块发送至安装有第二文件系统的第二终端设备,以指示所述第二终端设备将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
12.一种文件备份系统,其特征在于,包括:第一终端设备和第二终端设备,所述第一终端设备中安装有第一文件系统,所述第二终端设备中安装有第二文件系统;
所述第一终端设备用于,获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
所述第一终端设备还用于,从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
所述第一终端设备还用于,将所述目标元数据和所述目标文件数据块发送至所述第二终端设备;
所述第二终端设备用于,将所述目标元数据恢复至所述第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
13.一种文件备份方法,其特征在于,应用于安装有第一文件系统的第一终端设备,所述文件备份方法包括:
获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据和所述目标文件数据块发送至存储设备,以指示所述存储设备,对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据和所述目标文件数据块发送至安装有第二文件系统的第二终端设备,通过所述第二终端设备将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
14.一种文件备份系统,其特征在于,包括:第一终端设备、第二终端设备和存储设备,所述第一终端设备中安装有第一文件系统,所述第二终端设备中安装有第二文件系统;
所述第一终端设备用于,获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
所述第一终端设备还用于,从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
所述第一终端设备还用于,将所述目标元数据和所述目标文件数据块发送至所述存储设备;
所述存储设备用于,对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据和所述目标文件数据块发送至所述第二终端设备;
所述第二终端设备用于,将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
15.一种文件备份方法,其特征在于,应用于安装有第一文件系统的第一终端设备,包括:
获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
将所述目标元数据和所述目标文件数据块发送至存储设备,以指示所述存储设备对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区,所述第二文件系统安装于第二终端设备。
16.一种文件备份系统,其特征在于,包括:第一终端设备、第二终端设备和存储设备,所述第一终端设备中安装有第一文件系统,所述第二终端设备中安装有第二文件系统;
所述第一终端设备用于,获取待备份文件的文件类型,并根据所述第一文件系统的元数据区中元数据包含的类型标识,从所述第一文件系统的元数据区中,筛选出所述文件类型对应的目标元数据;
所述第一终端设备还用于,从所述第一文件系统的文件数据区中,筛选出所述目标元数据对应的目标文件数据块;
所述第一终端设备还用于,将所述目标元数据和所述目标文件数据块发送至所述存储设备;
所述存储设备用于,对所述目标元数据和所述目标文件数据块进行存储,并将所述目标元数据恢复至第二文件系统的元数据区,以及将所述目标文件数据块恢复至所述第二文件系统的文件数据区。
17.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9任一项所述的方法。
18.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911384164.8A CN111176896A (zh) | 2019-12-28 | 2019-12-28 | 文件备份方法、装置及终端设备 |
PCT/CN2020/125521 WO2021129151A1 (zh) | 2019-12-28 | 2020-10-30 | 文件备份方法、装置及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911384164.8A CN111176896A (zh) | 2019-12-28 | 2019-12-28 | 文件备份方法、装置及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111176896A true CN111176896A (zh) | 2020-05-19 |
Family
ID=70655874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911384164.8A Pending CN111176896A (zh) | 2019-12-28 | 2019-12-28 | 文件备份方法、装置及终端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111176896A (zh) |
WO (1) | WO2021129151A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286879A (zh) * | 2020-07-15 | 2021-01-29 | 上海柯林布瑞信息技术有限公司 | 基于元数据的数据资产构建方法及装置 |
WO2021129151A1 (zh) * | 2019-12-28 | 2021-07-01 | 华为技术有限公司 | 文件备份方法、装置及终端设备 |
WO2024001643A1 (zh) * | 2022-06-27 | 2024-01-04 | 中兴通讯股份有限公司 | 后备存储设备、元数据管理方法、装置、存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114328030B (zh) * | 2022-03-03 | 2022-05-20 | 成都云祺科技有限公司 | 一种文件数据备份方法、系统及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8126847B1 (en) * | 2008-04-30 | 2012-02-28 | Network Appliance, Inc. | Single file restore from image backup by using an independent block list for each file |
CN103577528A (zh) * | 2012-08-07 | 2014-02-12 | 国际商业机器公司 | 用于数据传送优化的方法和系统 |
CN108733507A (zh) * | 2017-04-17 | 2018-11-02 | 伊姆西Ip控股有限责任公司 | 文件备份和恢复的方法和设备 |
CN109491618A (zh) * | 2018-11-20 | 2019-03-19 | 上海科技大学 | 基于混合存储的数据管理系统、方法、终端及介质 |
CN110008062A (zh) * | 2019-03-28 | 2019-07-12 | 维沃移动通信有限公司 | 一种数据管理方法及移动终端 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508740A (zh) * | 2011-10-26 | 2012-06-20 | 上海文广互动电视有限公司 | 文件系统远程复制方法 |
US10613923B2 (en) * | 2017-11-03 | 2020-04-07 | EMC IP Holding Company LLC | Recovering log-structured filesystems from physical replicas |
CN108897822A (zh) * | 2018-06-21 | 2018-11-27 | 郑州云海信息技术有限公司 | 一种数据更新方法、装置、设备及可读存储介质 |
CN111176896A (zh) * | 2019-12-28 | 2020-05-19 | 华为技术有限公司 | 文件备份方法、装置及终端设备 |
-
2019
- 2019-12-28 CN CN201911384164.8A patent/CN111176896A/zh active Pending
-
2020
- 2020-10-30 WO PCT/CN2020/125521 patent/WO2021129151A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8126847B1 (en) * | 2008-04-30 | 2012-02-28 | Network Appliance, Inc. | Single file restore from image backup by using an independent block list for each file |
CN103577528A (zh) * | 2012-08-07 | 2014-02-12 | 国际商业机器公司 | 用于数据传送优化的方法和系统 |
CN108733507A (zh) * | 2017-04-17 | 2018-11-02 | 伊姆西Ip控股有限责任公司 | 文件备份和恢复的方法和设备 |
CN109491618A (zh) * | 2018-11-20 | 2019-03-19 | 上海科技大学 | 基于混合存储的数据管理系统、方法、终端及介质 |
CN110008062A (zh) * | 2019-03-28 | 2019-07-12 | 维沃移动通信有限公司 | 一种数据管理方法及移动终端 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021129151A1 (zh) * | 2019-12-28 | 2021-07-01 | 华为技术有限公司 | 文件备份方法、装置及终端设备 |
CN112286879A (zh) * | 2020-07-15 | 2021-01-29 | 上海柯林布瑞信息技术有限公司 | 基于元数据的数据资产构建方法及装置 |
WO2024001643A1 (zh) * | 2022-06-27 | 2024-01-04 | 中兴通讯股份有限公司 | 后备存储设备、元数据管理方法、装置、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021129151A1 (zh) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9836244B2 (en) | System and method for resource sharing across multi-cloud arrays | |
CN110062925B (zh) | 用于云集成的快照元数据布置 | |
CN111176896A (zh) | 文件备份方法、装置及终端设备 | |
US10430398B2 (en) | Data storage system having mutable objects incorporating time | |
JP4107370B2 (ja) | 分散型データアーカイブシステム | |
US9081771B1 (en) | Encrypting in deduplication systems | |
US8458425B2 (en) | Computer program, apparatus, and method for managing data | |
JP4464340B2 (ja) | 分散型データアーカイブシステム | |
CN102629247B (zh) | 一种数据处理方法、装置和系统 | |
US20110022566A1 (en) | File system | |
CN106682186B (zh) | 文件访问控制列表管理方法和相关装置和系统 | |
US20090006792A1 (en) | System and Method to Identify Changed Data Blocks | |
US10013312B2 (en) | Method and system for a safe archiving of data | |
EP1654659A4 (en) | EMULATED STORAGE SYSTEM | |
JP2009535704A (ja) | サンプリングを利用して重複データを無くすシステム、及び方法 | |
US9749132B1 (en) | System and method for secure deletion of data | |
US20060066902A1 (en) | Electronic document storage apparatus, program and electronic document reference apparatus | |
US10078648B1 (en) | Indexing deduplicated data | |
US20170235493A1 (en) | Low-Cost Backup and Edge Caching Using Unused Disk Blocks | |
CN115004147A (zh) | 利用去重的主存储 | |
CN111045857A (zh) | 数据备份和恢复的方法、电子设备和计算机可读存储介质 | |
US20140244582A1 (en) | Apparatus and Methods for Selective Location and Duplication of Relevant Data | |
CA2825891A1 (en) | Storage system for storing data in a plurality of storage devices | |
US20120317387A1 (en) | Fast copy using file system block mappings | |
CN108121504B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200519 |