CN112925746A - 文件归档方法和装置 - Google Patents
文件归档方法和装置 Download PDFInfo
- Publication number
- CN112925746A CN112925746A CN202110320066.9A CN202110320066A CN112925746A CN 112925746 A CN112925746 A CN 112925746A CN 202110320066 A CN202110320066 A CN 202110320066A CN 112925746 A CN112925746 A CN 112925746A
- Authority
- CN
- China
- Prior art keywords
- file
- archived
- information
- package
- archive
- 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
Images
Classifications
-
- 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/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种文件归档方法和装置,方法包括:确定待归档文件;按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息;在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。本发明的归档文件包中包括两个部分,一个部分为文件信息,另一个部分为文件内容,且文件内容在归档文件包的位置位于文件信息的尾部,在后续对文件进行检索时,可以直接读取位于归档文件包头部的文件信息,而无需读取整个归档文件包,即可确定出该归档文件包中包括哪些已归档文件,提高了文件检索效率。
Description
技术领域
本发明涉及文件处理技术领域,尤其涉及一种文件归档方法和装置。
背景技术
在计算机中存储有各种各样的文件,当存储文件较多时,可以通过文件归档的方式对文件进行备份管理。现有技术中,可以采用文件打包存储的方式进行文件归档。但是现有的文件归档方法在进行了文件归档之后,存在检索效率低的问题。因此,需要提供一种检索效率更高的文件归档方法。
发明内容
本发明要解决的技术问题在于文件检索效率低,针对现有技术中的缺陷,提供一种文件检索效率更高的文件归档方法和装置。
为了解决上述技术问题,本发明提供了一种文件归档方法,包括:
确定待归档文件;
按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息;
在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。
优选地,在所述确定待归档文件之后,所述在归档文件包中依次写入每一个待归档文件的文件信息之前,进一步包括:
遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息;
确定已归档的至少一个归档文件包;
针对每一个归档文件包,均执行:读取该归档文件包中的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息;
根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从所述待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件。
优选地,所述唯一标识信息包括:文件名称、文件存储路径和文件哈希值中的至少一项。
优选地,在所述在归档文件包中依次写入每一个待归档文件的文件信息之前,进一步包括:
在归档文件包的头部,写入文件类型、文件个数和文件总大小中的至少一项属性信息;
在该归档文件包中写入的属性信息的尾部开始,执行所述在归档文件包中依次写入每一个待归档文件的文件信息。
优选地,所述写入每一个待归档文件的文件信息,包括:
针对每一个待归档文件,均执行:确定该待归档文件的文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息;将确定的信息写入到归档文件包中与该待归档文件的文件信息对应的位置处。
优选地,所述文件附加项信息包括:附加项类型、附加项内容长度和附加项内容。
本发明实施例还提供了一种文件归档装置,包括:
第一确定单元,用于确定待归档文件;
写入单元,用于按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息;以及
所述写入单元,用于在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。
优选地,进一步包括:
文件遍历单元,用于遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息;
第二确定单元,用于确定已归档的至少一个归档文件包;以及
所述第二确定单元,还用于针对每一个归档文件包,均执行:读取位于该归档文件包头部的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息;
去重单元,用于根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从所述待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件;
和/或,
所述写入单元,进一步用于执行如下操作:
在归档文件包的头部,写入文件类型、文件个数和文件总大小中的至少一项属性信息;
在该归档文件包中写入的属性信息的尾部开始,执行所述在归档文件包中依次写入每一个待归档文件的文件信息;
和/或,
所述写入单元,用于在执行所述写入每一个待归档文件的文件信息时,具体包括:针对每一个待归档文件,均执行:确定该待归档文件的文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息;将确定的信息写入到归档文件包中与该待归档文件的文件信息对应的位置处。
本发明实施例还提供了一种文件归档装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行上述任一项所述的文件归档方法。
本发明实施例还提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述任一项所述的文件归档方法。
本发明实施例提供的文件归档方法和装置,具有以下有益效果:利用该文件归档方法进行归档得到的归档文件包中包括两个部分,一个部分为文件信息,另一个部分为文件内容,且文件内容在归档文件包的位置位于文件信息的尾部,在后续对文件进行检索时,可以直接读取位于归档文件包头部的文件信息,而无需读取整个归档文件包,即可确定出该归档文件包中包括哪些已归档文件,提高了文件检索效率。
附图说明
图1是本发明实施例一提供的文件归档方法流程图;
图2是本发明实施例二提供的文件归档方法流程图;
图3是本发明实施例二提供的归档文件包的示意图;
图4是本发明实施例三提供的一种文件归档装置所在设备的示意图;
图5是本发明实施例三提供的一种文件归档装置结构图;
图6是本发明实施例三提供的另一种文件归档装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
如图1所示,本发明实施例提供的文件归档方法,可以包括以下内容:
步骤101:确定待归档文件。
步骤102:按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息。
步骤103:在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。
利用上述实施例的文件归档方法进行归档得到的归档文件包对应的归档文件结构包括两个部分,一个部分为文件信息,另一个部分为文件内容,且文件内容在归档文件包的位置位于文件信息的尾部,在后续对文件进行检索时,可以直接读取位于归档文件包头部的文件信息,而无需读取整个归档文件包,即可确定出该归档文件包中包括哪些已归档文件,提高了文件检索效率。
在本发明一个实施例中,对于本次需要归档的待归档文件中可能存在已经归档的文件,可以将本次需要归档的待归档文件中存在的已经归档的文件去除,只对未进行过归档的待归档文件进行归档。那么在步骤101之后,在步骤102之前,可以进一步包括:
遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息;
确定已归档的至少一个归档文件包;
针对每一个归档文件包,均执行:读取位于该归档文件包中的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息;
根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从该待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件。
通过上述方法从待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件中均为未被归档的文件,防止已归档文件在本次归档过程中再次归档,节省了存储空间。
在本发明一个实施例中,在根据待归档文件的唯一标识信息和已归档文件的唯一标识信息,确定待归档文件与已归档文件是否重合时,该唯一标识信息可以包括:文件名称、文件存储路径和文件哈希值中的至少一项。其中,该唯一标识信息用于表征该文件的唯一性。
以文件名称为例,首先遍历每一个待归档文件,以获取每一个待归档文件的文件名称,然后针对每一个归档文件包,通过读取归档文件包中的文件信息可以确定出每一个已归档文件的文件名称,最后从待归档文件的文件名称中确定是否存在与已归档文件相同的文件名称,将该相同的文件名称对应的待归档文件从本次需要进行归档的各待归档文件中去除,得到的去重后的待归档文件。
利用唯一标识信息对待归档文件进行去重,从而可以准确的得到去重后的待归档文件。
在本发明一个实施例中,在对文件进行归档过程中,在生成归档文件包时,在该在归档文件包中依次写入每一个待归档文件的文件信息之前,可以进一步包括:
在归档文件包的头部,写入文件类型、文件个数和文件总大小中的至少一项属性信息;
在该归档文件包中写入的属性信息的尾部开始,执行该在归档文件包中依次写入每一个待归档文件的文件信息。
此时,预设归档文件结构依次包括:属性信息、文件信息和文件内容。其中,属性信息位于归档文件包的头部,文件信息位于归档文件包的中间部位,文件内容位于归档文件包的尾部。
本实施例中,在归档文件包的头部写入的属性信息,在后续检索时,通过读取位于归档文件包头部的属性信息,可以快速的获知到该归档文件包的文件类型、已归档文件的文件个数以及该归档文件包中所包括的已归档文件的文件总大小。其中,该文件类型可以为自定义类型。例如,该文件类型可以使用约定的类型标识符来标识,根据该类型标识符可以确定出该归档文件包对应的归档文件结构。
在本发明一个实施例中,在归档文件包中写入每一个待归档文件的文件信息,目的是在对归档文件包中包括的已归档文件进行检索时,能够获知到该归档文件包中包括哪些已归档文件,以及每一个已归档文件的相关信息,因此,该写入每一个待归档文件的文件信息,可以包括:
针对每一个待归档文件,均执行:确定该待归档文件的文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息;将确定的信息写入到归档文件包中与该待归档文件的文件信息对应的位置处。
其中,该文件附加项信息可以包括:附加项类型、附加项内容长度和附加项内容。附加项类型可以用于表征该待归档文件的类型,比如,该待归档文件为压缩格式、图片格式、视频格式等。
在对文件进行归档形成归档文件包之后,通过读取归档文件包中的文件信息,可以确定出每一个已归档文件的相关信息,例如,可以获知到唯一标识信息等。
实施例二
下面以归档文件结构包括属性信息、文件信息和文件内容为例,对该文件归档方法的方案进行详细说明。
请参考图2,本发明实施例提供了一种文件归档方法,该方法可以包括以下内容:
步骤201:确定本次需要进行归档的待归档文件。
对文件进行归档,可以是对本地存储文件的备份,归档方式可以采用打包存储的方式。每次归档时,可以直接将本地存储的所有文件进行归档。
而对于一些特定业务场景,比如,软件的增量发布,每次发布时只需要发布发生变动的文件;再如,在案件审理过程中,每次开庭有新的证据产生时,仅提交新证据文件;再如,在收集一类媒体资源时,每隔一段时间都会收集到一些新的媒体资源等。只需要对增量文件进行归档即可,而无需将本地存储的所有文件进行归档,从而可以减少空间占用。
针对上述特定业务场景,在进行文件归档时,对于本地存储的所有文件,需要确定出哪些是增量文件,该确定方法可以通过步骤202-205来实现。
步骤202:遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息。
其中,该唯一标识信息用于表征该文件的唯一性。该唯一标识信息可以包括:文件名称、文件存储路径和文件哈希值中的至少一项。其中,文件名称和文件存储路径可以直接获取,文件哈希值可以利用获取到的文件信息计算得到。
优选地,可以使用文件哈希值来作为该唯一标识信息。哈希值是采用哈希函数计算得到的值,不同文件哈希值都不相同。其中,哈希值的影响因素可以是文件大小、内容、创建日期等。
本实施例中,可以利用***提供的API接口来遍历每一个待归档文件,以获取到每一个待归档文件的唯一标识信息。
步骤203:确定已归档的至少一个归档文件包。
每进行一次归档,都会形成一个归档文件包。并且,每一次形成归档文件包都是按照预设归档文件结构来生成的。
本发明一个实施例中,该预设归档文件结构依次可以包括:属性信息、文件信息和文件内容。属性信息位于归档文件包的头部,文件信息位于归档文件包的中间部位,文件内容位于归档文件包的尾部。
首先对属性信息进行说明。该属性信息可以包括:文件类型、文件个数和文件总大小中的至少一项。
请参考下表1,为本实施例一个优选的归档文件结构:
表1:
文件类型 | 文件个数 | 文件总大小 | n个文件信息 | n个文件内容 |
其中,n用于表征待归档文件的个数,n为正整数。
需要说明的是,在属性信息包括文件类型、文件个数和文件总大小时,表1中文件类型、文件个数和文件总大小的位置关系为一种优选方式,除此位置关系以外,还可以是其他位置关系,例如,文件个数位于文件总大小的后面等。
文件类型用于表明该归档文件包对应的归档文件结构,如果采用的是表1所示的归档文件结构,那么可以使用约定的类型标识符来标识。如果该归档文件包的归档文件结构为表1所示的结构,那么该类型标识符可以为0FF0。如果归档文件包的归档文件结构为其他结构,那么可以使用其他约定好的类型标识符来表示该文件类型,例如,00F0、0F00等。
文件总大小用于表明该归档文件包中所包含所有文件的总大小。
在本实施例中,可以预先设定好文件类型、文件个数、文件总大小所使用的字节数。例如,文件类型使用的字节数可以为2~6个,文件个数所使用的字节数可以为6~10个,文件总大小所使用的的字节数可以为6~10个。本实施例中以如下字节数为例进行说明:文件类型使用的字节数为4个、文件个数所使用的字节数为8个,文件总大小所使用的的字节数为8个。
其次对文件信息进行说明。在本发明一个实施例中,文件信息可以包括:文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息。请参考表2,为本实施例一个优选的文件信息结构:
表2:
文件大小 | 文件全路径长度 | 文件全路径内容 | 文件附加项个数 | 文件附加项信息 |
其中,该文件附加项信息可以包括:附加项类型、附加项内容长度和附加项内容。
文件大小是指存储该文件所占用空间的字节数。
文件全路径长度是指文件全路径内容所占用的字节数。
文件全路径内容为存储该文件的路径。例如,该文件全路径内容为a.log。
文件附加项个数为几个,后面就包括几个文件附加项信息。
附加项类型用于表征对该文件对应的类型,例如,压缩格式、图片格式、视频格式等。不同附加项类型使用预先约定好的符号来表示。例如,附加项类型为0001用来表征压缩格式,附加项类型为0010用来表征图片格式,附加项类型为0011用来表征视频格式。
附加项内容长度是指附加项内容所占用的字节数。
附加项内容可以表征该文件在归档文件包中所占用空间对应的字节数。
在本实施例中,可以预先设定好文件大小、文件全路径长度、附加项个数、附加项类型、附加项内容长度所使用的字节数。例如,文件大小使用的字节数可以为6~10个,文件全路径长度所使用的字节数可以为2~6个,附加项个数所使用的的字节数可以为2~6个,附加项类型所使用的的字节数可以为2~6个,附加项内容长度所使用的字节数可以为2~6个。文件全路径内容以及附加项内容所使用的字节数是可变的,根据实际使用字节数而定。其中,文件全路径长度的内容用于指示该文件全路径内容实际使用的字节数,附加项内容长度的内容用于指示该附加项内容实际使用的字节数。例如,文件全路径长度的内容为5,那么表明文件全路径内容所占字节数为5个字节。
本实施例中以如下字节数为例进行说明:文件大小使用的字节数为8个,文件全路径长度所使用的字节数为4个,附加项个数所使用的的字节数为4个,附加项类型所使用的的字节数为4个,附加项内容长度所使用的的字节数为4个。
需要说明的是,表2中文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及文件附加项信息的位置关系为一种优选方式,除此位置关系以外,还可以是其他位置关系,但需要保证文件全路径长度位于文件全路径内容的前面、文件附加项个数位于文件附加项信息前面。
最后对文件内容进行说明。文件内容即是该文件的实际内容,例如,该文件为图片,那么该实际内容即为该图片。
步骤204:针对每一个归档文件包,均执行:读取该归档文件包中的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息。
针对确定的一个归档文件包,需要检索该归档文件包中所包括的已归档文件。为了获知该归档文件包中所包括的已归档文件有哪些,可以通过读取该归档文件包中每一个已归档文件对应的文件信息即可。而根据表1可知,只需要读取归档文件包的属性信息和文件信息,而无需读取位于尾部且占用较大空间的文件内容,即可获知到唯一标识信息,进而可以获知到该归档文件包中所包括的已归档文件,节省了读取文件内容的时间,从而提高了文件检索效率。
其中,确定出每一个已归档文件的唯一标识信息需要与步骤202中待归档文件的唯一标识信息相同。例如,步骤202中将文件哈希值作为唯一标识信息,那么在本步骤204中,也需要确定已归档文件的文件哈希值。
步骤205:根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从该待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件。
步骤206:按照预设归档文件结构,在归档文件包中依次写入属性信息、每一个待归档文件的文件信息、每一个待归档文件的文件内容,得到归档文件包。
以步骤205中得到的去重后的待归档文件包括两个文件,按照表1所示归档文件结构为例,对该归档文件包的生成过程进行说明。
首先,由于是按照表1所示的归档文件结构形成归档文件包,那么根据预先约定的与该归档文件结构对应的标识符0FF0表征文件类型,且文件个数为2个,两个文件的原始大小总共为10字节。根据该内容在归档文件包的头部写入以下属性信息:
文件类型:0FF0。
文件个数:2。
文件总大小:10个字节。
其中,写入的文件类型所使用的字节数为4个字节,文件个数所使用的字节数为8个字节,文件总大小所使用的字节数为8个字节。其中,该文件总大小用于表征两个文件原始大小,即未被压缩前所占用的空间。
其次,在归档文件包的属性信息后依次写入每一个待归档文件的文件信息。
针对第一个待归档文件,可以获知该待归档文件的文件名为a.log,原始大小为6个字节,,文件全路径长度为5个字节,文件全路径内容为a.log,由于该待归档文件是压缩文件,可以填写1个附加项,附加类型为压缩格式,用0001表示,附加项内容为压缩后该待归档文件的数据长度为3个字节,附加项内容长度占8个字节。根据该内容可以针对第一个待归档文件写入以下文件信息:
文件大小:6。
文件全路径长度:5。
文件全路径内容:a.log。
文件附加项个数:1。
附加项类型:0001。
附加项内容长度:8。
附加项内容:3。
针对第二个待归档文件,可以获知该待归档文件的文件名为b/c.log,原始大小为4个字节,文件全路径长度为6个字节,文件全路径内容为b/c.log,该待归档文件没有附加项。根据该内容可以针对第二个待归档文件写入以下文件信息:
文件大小:4。
文件全路径长度:6。
文件全路径内容:b/c.log。
文件附加项个数:0。
最后,在归档文件包的属性信息后依次写入每一个待归档文件的文件内容。
其中,文件内容的写入顺序与文件信息的写入顺序相同。在写入文件信息时,先写入的第一个待归档文件a.log的文件信息,然后写入第二个待归档文件的b/c.log的文件信息,那么在写入文件内容时,先写入第一待归档文件a.log的文件内容,然后再写入第二个待归档文件的b/c.log的文件内容。
根据上述过程,得到如图3所示的归档文件包。
需要说明的是,归档文件包在形成后,归档文件包中的已归档文件是不可被修改的。如果下一次备份时,在读取该图3对应的归档文件包时,可以只读取属性信息和文件信息即可,无需读取文件内容,即可获知该归档文件包中包含的各已归档文件的信息,在检索时相对于读取全部归档文件包来说,提高了检索效率。
实施例三
如图4、图5所示,本发明实施例提供了一种文件归档装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图4所示,为本发明实施例提供的一种文件归档装置所在设备的一种硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图5所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的一种文件归档装置,包括:
第一确定单元501,用于确定待归档文件;
写入单元502,用于按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息;以及
该写入单元502,用于在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。
请参考图6,本发明一个实施例中,该装置可以进一步包括:
文件遍历单元503,用于遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息;
第二确定单元504,用于确定已归档的至少一个归档文件包;以及
该第二确定单元504,用于针对每一个归档文件包,均执行:读取位于该归档文件包头部的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息;
去重单元505,用于根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从该待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件。
在本发明一个实施例中,该唯一标识信息包括:文件名称、文件存储路径和文件哈希值中的至少一项。
在本发明一个实施例中,在该在归档文件包中依次写入每一个待归档文件的文件信息之前,该写入单元502可以进一步用于执行:在归档文件包的头部,写入文件类型、文件个数和文件总大小中的至少一项属性信息;在该归档文件包中写入的属性信息的尾部开始,继续执行该在归档文件包中依次写入每一个待归档文件的文件信息。
在本发明一个实施例中,该写入单元502在执行写入每一个待归档文件的文件信息时,具体包括:针对每一个待归档文件,均执行:确定该待归档文件的文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息;将确定的信息写入到归档文件包中与该待归档文件的文件信息对应的位置处。
在本发明一个实施例中,该文件附加项信息包括:附加项类型、附加项内容长度和附加项内容。
可以理解的是,本发明实施例示意的结构并不构成对一种文件归档装置的具体限定。在本发明的另一些实施例中,一种文件归档装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种文件归档装置,包括:至少一个存储区和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行本发明任一实施例中的一种文件归档方法。
本发明实施例还提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行本发明任一实施例中的一种文件归档方法。
具体地,可以提供配有存储介质的***或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该***或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作***等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到***计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种文件归档方法,其特征在于,包括:
确定待归档文件;
按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息;
在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。
2.根据权利要求1所述的方法,其特征在于,在所述确定待归档文件之后,所述在归档文件包中依次写入每一个待归档文件的文件信息之前,进一步包括:
遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息;
确定已归档的至少一个归档文件包;
针对每一个归档文件包,均执行:读取该归档文件包中的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息;
根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从所述待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件。
3.根据权利要求2所述的方法,其特征在于,所述唯一标识信息包括:文件名称、文件存储路径和文件哈希值中的至少一项。
4.根据权利要求1所述的方法,其特征在于,在所述在归档文件包中依次写入每一个待归档文件的文件信息之前,进一步包括:
在归档文件包的头部,写入文件类型、文件个数和文件总大小中的至少一项属性信息;
在该归档文件包中写入的属性信息的尾部开始,执行所述在归档文件包中依次写入每一个待归档文件的文件信息。
5.根据权利要求1-4中任一所述的方法,其特征在于,所述写入每一个待归档文件的文件信息,包括:
针对每一个待归档文件,均执行:确定该待归档文件的文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息;将确定的信息写入到归档文件包中与该待归档文件的文件信息对应的位置处。
6.根据权利要求5所述的方法,其特征在于,所述文件附加项信息包括:附加项类型、附加项内容长度和附加项内容。
7.一种文件归档装置,其特征在于,包括:
第一确定单元,用于确定待归档文件;
写入单元,用于按照预设归档文件结构,在归档文件包中依次写入每一个待归档文件的文件信息;以及
所述写入单元,还用于在该归档文件包中,从写入的文件信息的尾部开始,依次写入每一个待归档文件的文件内容,得到对确定的待归档文件进行归档后的归档文件包;其中,文件内容的写入顺序与文件信息的写入顺序相同。
8.根据权利要求7所述的装置,其特征在于,
进一步包括:
文件遍历单元,用于遍历每一个待归档文件,以获取每一个待归档文件的唯一标识信息;
第二确定单元,用于确定已归档的至少一个归档文件包;以及
所述第二确定单元,还用于针对每一个归档文件包,均执行:读取位于该归档文件包头部的文件信息,以确定出该归档文件包中包括的每一个已归档文件的唯一标识信息;
去重单元,用于根据每一个待归档文件的唯一标识信息和每一个已归档文件的唯一标识信息,从所述待归档文件中去除与已归档文件重合的文件,得到去重后的待归档文件;
和/或,
所述写入单元,进一步用于执行如下操作:
在归档文件包的头部,写入文件类型、文件个数和文件总大小中的至少一项属性信息;
在该归档文件包中写入的属性信息的尾部开始,执行所述在归档文件包中依次写入每一个待归档文件的文件信息;
和/或,
所述写入单元,用于在执行所述写入每一个待归档文件的文件信息时,具体包括:针对每一个待归档文件,均执行:确定该待归档文件的文件大小、文件全路径长度、文件全路径内容、文件附加项个数以及每一个文件附加项信息;将确定的信息写入到归档文件包中与该待归档文件的文件信息对应的位置处。
9.一种文件归档装置,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至6中任一项所述的方法。
10.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110320066.9A CN112925746A (zh) | 2021-03-25 | 2021-03-25 | 文件归档方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110320066.9A CN112925746A (zh) | 2021-03-25 | 2021-03-25 | 文件归档方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112925746A true CN112925746A (zh) | 2021-06-08 |
Family
ID=76176026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110320066.9A Pending CN112925746A (zh) | 2021-03-25 | 2021-03-25 | 文件归档方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112925746A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377386A (zh) * | 2021-06-23 | 2021-09-10 | 支付宝(杭州)信息技术有限公司 | 一种无解压的安装包安装方法、装置以及设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04122234A (ja) * | 1990-09-13 | 1992-04-22 | Olympus Optical Co Ltd | 内視鏡画像ファイルシステム |
US20130110779A1 (en) * | 2010-05-03 | 2013-05-02 | Panzura, Inc. | Archiving data for a distributed filesystem |
CN103294794A (zh) * | 2013-05-23 | 2013-09-11 | 上海爱数软件有限公司 | 一种在线归档和访问文件的*** |
CN103473298A (zh) * | 2013-09-04 | 2013-12-25 | 华为技术有限公司 | 数据归档方法和装置以及存储*** |
CN103678473A (zh) * | 2012-09-24 | 2014-03-26 | 国际商业机器公司 | 用于在去重虚拟介质中进行高效文件归档回收的方法和*** |
US20160019224A1 (en) * | 2014-07-18 | 2016-01-21 | Commvault Systems, Inc. | File system content archiving based on third-party application archiving rules and metadata |
CN111581171A (zh) * | 2020-04-30 | 2020-08-25 | 中国工商银行股份有限公司 | 日志处理方法、装置、计算设备和介质 |
-
2021
- 2021-03-25 CN CN202110320066.9A patent/CN112925746A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04122234A (ja) * | 1990-09-13 | 1992-04-22 | Olympus Optical Co Ltd | 内視鏡画像ファイルシステム |
US20130110779A1 (en) * | 2010-05-03 | 2013-05-02 | Panzura, Inc. | Archiving data for a distributed filesystem |
CN103678473A (zh) * | 2012-09-24 | 2014-03-26 | 国际商业机器公司 | 用于在去重虚拟介质中进行高效文件归档回收的方法和*** |
CN103294794A (zh) * | 2013-05-23 | 2013-09-11 | 上海爱数软件有限公司 | 一种在线归档和访问文件的*** |
CN103473298A (zh) * | 2013-09-04 | 2013-12-25 | 华为技术有限公司 | 数据归档方法和装置以及存储*** |
US20160019224A1 (en) * | 2014-07-18 | 2016-01-21 | Commvault Systems, Inc. | File system content archiving based on third-party application archiving rules and metadata |
CN111581171A (zh) * | 2020-04-30 | 2020-08-25 | 中国工商银行股份有限公司 | 日志处理方法、装置、计算设备和介质 |
Non-Patent Citations (1)
Title |
---|
张艳萍;: "建筑工程电子文件编制及归档著录管理***研究", 城建档案, no. 06 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377386A (zh) * | 2021-06-23 | 2021-09-10 | 支付宝(杭州)信息技术有限公司 | 一种无解压的安装包安装方法、装置以及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104951474B (zh) | 一种用于获取MySQL binlog增量日志的方法和装置 | |
CN109710572B (zh) | 一种基于HBase的文件分片方法 | |
CN110888837B (zh) | 对象存储小文件归并方法及装置 | |
US8812455B1 (en) | Efficient data backup | |
CN105376277A (zh) | 一种数据同步方法及装置 | |
CN111125298A (zh) | 重建ntfs文件目录树的方法、设备及存储介质 | |
US9858287B2 (en) | Storage system | |
CN109783274B (zh) | 一种磁盘快照的管理方法、装置以及可读存储介质 | |
CN107391769B (zh) | 一种索引查询方法及装置 | |
CN112925746A (zh) | 文件归档方法和装置 | |
US20090307247A1 (en) | Data block compression using coalescion | |
CN108304144B (zh) | 数据写入、读取方法与***、数据读写*** | |
CN109040827B (zh) | 一种视频文件的播放方法、存储介质及智能终端 | |
TWI420333B (zh) | 分散式的重複數據刪除系統及其處理方法 | |
JP5494817B2 (ja) | ストレージシステム、データ管理装置、方法及びプログラム | |
CN114281769A (zh) | 磁盘上文件管理方法、装置、计算机设备及存储介质 | |
CN112181830B (zh) | 内存泄露的检测方法、装置、终端及介质 | |
CN111698330B (zh) | 存储集群的数据恢复方法、装置及服务器 | |
JP4513876B2 (ja) | ファイル構造解析装置、ファイル構造解析方法およびプログラム | |
CN112131194A (zh) | 一种只读文件***的文件存储控制方法及装置、存储介质 | |
CN109241011B (zh) | 一种虚拟机文件处理方法及装置 | |
CN111309526A (zh) | 文件备份、恢复方法及其装置 | |
US20200174925A1 (en) | Efficient data unit reuse method and system | |
CN113568620A (zh) | 一种代码文件处理方法、装置、设备及介质 | |
CN110018990B (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 |