CN110807000B - 一种文件修复方法、装置、电子设备和存储介质 - Google Patents

一种文件修复方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN110807000B
CN110807000B CN201911024739.5A CN201911024739A CN110807000B CN 110807000 B CN110807000 B CN 110807000B CN 201911024739 A CN201911024739 A CN 201911024739A CN 110807000 B CN110807000 B CN 110807000B
Authority
CN
China
Prior art keywords
file
metadata
target
target file
parent
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.)
Active
Application number
CN201911024739.5A
Other languages
English (en)
Other versions
CN110807000A (zh
Inventor
高宇
陈二奇
申航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN201911024739.5A priority Critical patent/CN110807000B/zh
Publication of CN110807000A publication Critical patent/CN110807000A/zh
Application granted granted Critical
Publication of CN110807000B publication Critical patent/CN110807000B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/113Details of archiving
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

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)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开关于一种文件修复方法、装置、电子设备和存储介质,属于文件存储技术领域,该方法包括:若检测到文件系统对任一目标文件获取失败,则获取目标文件在父文件中的文件标识和父文件的文件信息如文件标识,根据这些信息从文件系统中查询得到目标文件的第一元数据,从第一元数据中获取目标文件在文件系统中的存储位置的描述信息,根据该存储位置的描述信息从文件系统中获取目标文件,进而根据获取结果对目标文件进行修复,这样,在文件系统对任一目标文件获取失败时,直接对目标文件进行修复,而不必对文件系统中所有文件的元数据均进行修复,需要修复的文件数量大幅减少,因此,可缩短修复时间,降低对相关业务的影响。

Description

一种文件修复方法、装置、电子设备和存储介质
技术领域
本公开涉及文件存储技术领域,尤其涉及一种文件修复方法、装置、电子设备和存储介质。
背景技术
文件系统主要包括元数据节点和数据节点,其中,数据节点用于存储文件的内容,元数据节点用于存储文件的元数据,元数据用于描述文件的属性如文件的创建时间、所有者、最近一次修改时间、文件大小、文件名等。
相关技术中,客户端访问文件时,先从元数据节点先获取文件的元数据,再根据获取到的文件的元数据从数据节点中获取文件内容,在该过程中,如果未成功获取到文件,则认为获取到的文件的元数据不正确,进而认定元数据节点发生故障。技术人员会对文件系统中所有文件的元数据进行修复,由于文件系统中的文件数量比较多,所以修复时间一般会比较长,而且修复时间无法估计,难免会对文件系统所服务的业务产生影响。
发明内容
本公开提供一种文件修复方法、装置、电子设备和存储介质,以至少解决相关技术中当文件获取失败时,对文件系统中所有文件的元数据进行修复而存在的修复时间比较长的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种文件修复方法,包括:
若检测到文件系统对任一目标文件获取失败,则获取所述目标文件在父文件中的文件标识和所述父文件的文件信息,所述父文件的文件信息至少包括所述父文件的文件标识;
根据所述目标文件在父文件中的文件标识和所述父文件的文件信息,从所述文件系统中查询得到所述目标文件的第一元数据,所述第一元数据中至少包括所述目标文件在所述文件系统中的存储位置的描述信息;
从所述第一元数据中获取所述目标文件在所述文件系统中的存储位置的描述信息,根据所述存储位置的描述信息从所述文件系统中获取所述目标文件;
根据获取结果对所述目标文件进行修复。
可选地,根据获取结果对所述目标文件进行修复,包括:
若所述获取结果为获取到所述目标文件,则根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复;
若所述获取结果为未获取到所述目标文件,则从所述第一元数据中获取所述目标文件的文件类型信息,若所述目标文件的文件类型信息表示所述目标文件为目录文件,则在对应存储位置重构所述目标文件。
可选地,根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复,包括:
根据获取到的所述目标文件生成所述目标文件的第二元数据;
根据所述第二元数据对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复。
可选地,重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构相同;或者
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构不同。
可选地,还包括:
若所述目标文件的文件类型信息表示所述目标文件不为目录文件,则删除所述文件系统中存储的所述目标文件的第一元数据。
可选地,获取所述目标文件在父文件中的文件标识和所述父文件的文件信息之前,还包括:
获取所述文件系统的日志文件;
根据所述日志文件中每个文件的操作记录对所述文件系统中存储的该文件的元数据进行修复。
根据本公开实施例的第二方面,提供一种文件修复装置,包括:
第一获取模块,被配置为执行若检测到文件系统对任一目标文件获取失败,则获取所述目标文件在父文件中的文件标识和所述父文件的文件信息,所述父文件的文件信息至少包括所述父文件的文件标识;
查询模块,被配置为执行根据所述目标文件在父文件中的文件标识和所述父文件的文件信息,从所述文件系统中查询得到所述目标文件的第一元数据,所述第一元数据中至少包括所述目标文件在所述文件系统中的存储位置的描述信息;
第二获取模块,被配置为执行从所述第一元数据中获取所述目标文件在所述文件系统中的存储位置的描述信息,根据所述存储位置的描述信息从所述文件系统中获取所述目标文件;
修复模块,被配置为执行根据获取结果对所述目标文件进行修复。
可选地,所述修复模块包括元数据修复单元和文件重构单元:
所述元数据修复单元,被配置为执行若所述获取结果为获取到所述目标文件,则根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复;
所述文件重构单元,被配置为执行若所述获取结果为未获取到所述目标文件,则从所述第一元数据中获取所述目标文件的文件类型信息,若所述目标文件的文件类型信息表示所述目标文件为目录文件,则在对应存储位置重构所述目标文件。
可选地,所述元数据修复单元被具体配置为执行:
根据获取到的所述目标文件生成所述目标文件的第二元数据;
根据所述第二元数据对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复。
可选地,重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构相同;或者
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构不同。
可选地,所述修复模块还包括删除单元,所述删除单元被配置为执行:
若所述目标文件的文件类型信息表示所述目标文件不为目录文件,则删除所述文件系统中存储的所述目标文件的第一元数据。
可选地,还包括预修复模块,所述预修复模块被配置为执行:
在获取所述目标文件在父文件中的文件标识和所述父文件的文件信息之前,获取所述文件系统的日志文件;根据所述日志文件中每个文件的操作记录对所述文件系统中存储的该文件的元数据进行修复。
根据本公开实施例的第三方面,提供一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,所述至少一个处理器能够执行上述任一文件修复方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,所述电子设备能够执行上述任一文件修复方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,该程序产品在被计算机调用执行时,可使计算机执行上述任一文件修复方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
若检测到文件系统对任一目标文件获取失败,则获取目标文件在父文件中的文件标识和父文件的文件信息如文件标识,根据这些信息从文件系统中查询得到目标文件的第一元数据,从目标文件的第一元数据中获取目标文件在文件系统中的存储位置的描述信息,根据存储位置的描述信息从文件系统中获取目标文件,进而根据获取结果对目标文件进行修复,这样,当确定文件系统对任一目标文件获取失败时,可直接对目标文件进行修复,而不必对文件系统中所有文件的元数据均进行修复,需要修复的文件数量大幅减少,因此,可缩短修复时间,降低对相关业务的影响。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种文件修复方法的应用场景示意图。
图2是根据一示例性实施例示出的一种文件的存储结构示意图。
图3是根据一示例性实施例示出的一种文件修复方法的流程示意图。
图4是根据一示例性实施例示出的一种文件修复方法的流程图。
图5是根据一示例性实施例示出的又一种文件修复方法的流程图。
图6是根据一示例性实施例示出的又一种文件的存储结构示意图。
图7是根据一示例性实施例示出的一种用于实现文件修复方法的电子设备的结构示意图。
图8是根据一示例性实施例示出的一种文件修复装置的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
为了便于理解本公开,本公开涉及的技术术语中:
索引节点(index node,inode)编号,一种文件标识,用于在文件系统中唯一标识一个文件。
文件的元数据,用于描述文件的属性,如文件权限、文件拥有者的用户标识、文件大小、文件内容最近一次变动时间,文件最近一次打开时间、文件类型、文件存储位置的描述信息、文件的index node编号、包含的文件个数,包含的每个文件的文件名等。
目录文件,是指包含有子文件的文件,目录文件中存储的为各子文件的元数据,而不是目录文件的文件中存储的为该文件的文件内容。另外,不是目录文件的文件可称作普通文件。
父文件,是指一个文件的上一级文件,一个文件只能有一个父文件,每个父文件中保存的是子文件的元数据。
子文件,相对于父文件而言,是指一个文件的下一级文件,一个文件可以有多个子文件。
其中,父文件和子文件在文件系统中均具有唯一的文件标识如ionde编号,子文件在父文件中也具有文件标识如文件名。
图1是根据一示例性实施例示出的一种文件修复方法的应用场景示意图,包括多个数据节点、多个元数据节点和多个客户端,其中,每个数据节点,用于存储文件的内容;每个元数据节点,用于存储文件的元数据。客户端在访问文件时,先从元数据节点获取该文件的元数据,再根据该文件的元数据访问该文件的内容。
下面结合具体的实施例对客户端访问文件系统中的文件的过程进行介绍。
图2是根据一示例性实施例示出的一种文件的存储结构示意图,其中,文件的存储结构为树状,根节点中的文件为root,root有2个子文件:dir A和dir B,dir A有1个子文件:dir C,dir C有3个子文件:file 1、file 2和file 3,其中,dir X表示目录文件X,fileY表示普通文件Y。
具体实施时,客户端成功登录文件系统后,为客户端提供服务的元数据节点可获取root中存储的各子文件的元数据,并将获取的各子文件的元数据发送给客户端,此时,用户可看到root下面有dir A和dir B,如果用户点击dir A,客户端可向元数据节点发送一个文件访问请求,文件访问请求中携带dir A的文件名和dir A的父文件root的文件标识,元数据节点接收到文件访问请求后,获取dir A中存储的各子文件的元数据,并将获取的各子文件的元数据发送给客户端,此时,用户可看到dir A下面有dir C,如果用户点击dir C,客户端可再向元数据节点发送一个文件访问请求,文件访问请求中携带dir C的文件名和dirC的父文件dir A的文件标识,元数据节点接收到文件访问请求后,获取dir C中存储的各子文件的元数据,并将获取的各子文件的元数据发送给客户端,此时,用户可看到dir C下面有file 1、file 2和file 3,如果用户点击file 1,则元数据节点可根据file 1的元数据从数据节点中获取file 1的内容,并将获取到的file 1的内容发送给客户端,至此客户端完成对文件系统中file 1的访问。
实际应用中,每个文件的元数据包含多项描述信息,在根据该文件的元数据获取文件时,如果该文件的元数据中某一项描述信息与该文件的实际信息不符,如文件大小不符、文件的子文件数量不符等,都会导致文件系统无法成功获取到该文件,这说明获取到的该文件的元数据不正确,从而认定元数据节点发生故障,之后,技术人员会对文件系统中所有文件的元数据进行修复,而文件系统中的文件数量庞大,元数据修复时间会比较长、且无法估计,难免会对文件系统所服务的业务产生影响。
为了解决上述问题,本公开提供一种文件修复方法,图3是根据一示例性实施例示出的一种文件修复方法的示意图,包括元数据节点、数据节点和终端。
具体实施时,终端若检测到文件系统对任一目标文件获取失败,则可获取目标文件在父文件中的文件标识和父文件的文件信息(至少包括父文件的文件标识),根据目标文件在父文件中的文件标识和父文件的文件信息,从文件系统中查询得到目标文件的第一元数据,从得到的目标文件的第一元数据中获取目标文件在文件系统中的存储位置的描述信息,根据该存储位置的描述信息从文件系统中获取目标文件,进而根据获取结果对目标文件进行修复。
这样,当文件系统对任一目标文件获取失败时,可直接对目标文件进行修复,而不必对文件系统中所有文件的元数据均进行修复,需要修复的文件数量大幅减少,因此,可缩短修复时间,降低对相关业务的影响。
上述过程中,虽然客户端和终端都获取了目标文件的元数据,但文件系统是为客户端提供文件访问服务的,所以客户端是根据目标文件的元数据中的每项描述信息从文件系统中获取目标文件,此时,当任一描述项信息和文件系统中目标文件的实际信息不一致时,文件系统都认定自身对目标文件获取失败。而终端是要对目标文件进行修复,不必要求获取到的目标文件的元数据的每项描述信息和文件系统中目标文件的实际信息都一致,所以终端获取到目标文件的元数据之后,可从目标文件的元数据中仅获取目标文件在文件系统中的存储位置的描述信息,进而直接根据存储位置的描述信息从文件系统中获取目标文件。也就是说,本公开实施例中,终端根据目标文件的元数据获取目标文件的机制和客户端根据目标文件的元数据获取目标文件的机制是不同的,这也是本公开实施例中终端可以修复目标文件的原因。
需要说明的是,图3仅是示意,实际应用中,文件1、文件2……文件n的元数据可存储在同一元数据节点中,文件1、文件2……文件n一般会分布存储在不同的数据节点中。
图4是根据一示例性实施例示出的一种文件修复方法的流程图,该方法的执行主体为图3中的终端,该方法的流程图包括以下步骤。
S401:检测到文件系统对任一目标文件获取失败。
分析图2中客户端访问文件系统中文件的过程可知,在文件系统中,当用户请求访问的文件是目录文件时,文件系统是从元数据节点中获取目录文件的元数据,当用户请求访问的文件不是目录文件时,文件系统是从数据节点中获取文件内容,而无论是从元数据节点中获取的目录文件的文件个数不对,还是从数据节点中获取的文件内容不全,都会被认定是文件系统对该文件获取失败,因此,本公开实施例中,文件系统对任一目标文件获取失败即可是指元数据节点未成功获取到文件的元数据,也可以是指数据节点未成功获取到文件内容。
S402:获取目标文件在父文件中的文件标识和父文件的文件信息。
其中,目标文件在父文件中的文件标识是指用户层面的标识如目标文件在父文件中的文件名,父文件的文件信息至少包括父文件的文件标识如inode编号。
具体实施时,文件系统是在客户端的请求下逐步加载自身存储的文件的,虽然文件系统未成功获取到目标文件,但客户端可请求获取目标文件,则说明文件系统是成功获取到了目标文件的父文件的元数据的,而文件标识是元数据的一项描述信息,因此,终端可获取到目标文件的父文件的文件标识。并且,客户端可请求获取目标文件,说明目标文件用户层面的标识如文件名用户也是可以看到的,因此,终端也可获取到目标文件用户层面的标识。
S403:根据目标文件在父文件中的文件标识和父文件的文件信息,从文件系统中查询得到目标文件的第一元数据。
其中,目标文件的第一元数据至少包括目标文件在文件系统中的存储位置的描述信息,根据存储位置的描述信息就可从文件系统中获取目标文件。
具体实施时,文件系统中的元数据是以键值对(key,value)的形式存储的,其中,key是利用哈希算法对文件的文件标识如inode编号进行哈希计算得到的,value是文件的元数据。
下面给出一种根据文件的inode编号确定文件的key的方案。
具体地,对任一文件,文件系统可利用预设的哈希算法对该文件的inode编号进行哈希计算,得到第一哈希值,对第一哈希值加上第一随机数之后的值再次使用该哈希算法进行哈希计算,得到第二哈希值,对第二哈希值加上第二随机数之后的值再次使用该哈希算法进行哈希计算,得到第三哈希值,以第三哈希值为该文件的key。
需要说明的是,这里仅为举例,并不构成对本公开中文件系统根据文件的inode编号确定文件的key的限定。
具体实施时,终端可将目标文件在父文件中的文件标识和父文件的文件信息发送给文件系统,文件系统根据父文件的文件信息可查询得到父文件中所有子文件的元数据,由于目标文件在父文件中的文件标识是目标文件的元数据的一项描述信息,因此,文件系统可根据目标文件在父文件中的文件标识从各子文件的元数据中筛选出目标文件的元数据,进而将筛选出的目标文件的元数据发送给终端,这样,终端即从文件系统中查询得到了目标文件的第一元数据。
S404:从查询得到的目标文件的第一元数据中获取目标文件在文件系统中的存储位置的描述信息,根据该存储位置的描述信息从文件系统中获取目标文件。
具体实施时,目标文件的元数据中还包括目标文件的文件类型信息,如果目标文件的文件类型信息表示目标文件是目录文件,则根据存储位置的描述信息是从元数据节点中获取目标文件中各子文件的元数据,如果目标文件的文件类型信息表示目标文件不是目录文件,则根据存储位置的描述信息是从数据节点中获取目标文件的文件内容。
S405:根据获取结果对目标文件进行修复。
在一种可能的实施方式下,获取结果为获得目标文件,这说明文件系统中的目标文件未丢失,文件系统获取目标文件失败是因为元数据节点中目标文件的第一元数据中用于描述目标文件的信息跟目标文件的实际信息有不一致,此时,终端可根据获取到的目标文件对文件系统中存储的第一元数据中的其它描述信息(指除存储位置之外的描述信息)进行修复。
具体实施时,可根据获取到的目标文件生成第二元数据,比如调用用于生成元数据的接口生成目标文件的第二元数据,进而根据第二元数据对文件系统中存储的第一元数据中的其它描述信息进行修复。
这里,可直接用第二元数据中除存储位置之外的描述信息替换文件系统中存储的第一元数据中相应的描述信息;也可比对第二元数据和查询得到的第一元数据,确定两者之间不一致的描述信息,进而根据第二元数据中相应的描述信息,对文件系统中第一元数据与第二元数据不一致的描述信息进行修改。
下面结合具体的实施例对上述过程进行说明。
假设目标文件的第二元数据中用于描述目标文件的文件大小的描述信息为100兆,用于描述目标文件包含的子文件个数的描述信息为4,用于描述目标文件的父文件的描述信息为文件M的文件标识。而获取到的目标文件的第一元数据中用于描述目标文件的文件大小的描述信息为120兆,用于描述目标文件包含的子文件个数的描述信息为5,用于描述目标文件的父文件的描述信息为文件M的文件标识。
那么,可将直接将文件系统中第一元数据中用于描述目标文件包含的子文件个数的描述信息修改为4,将文件系统中第一元数据中用于描述目标文件的文件大小的描述信息修改为120兆,将文件系统中用于描述目标文件的父文件的描述信息为文件M的文件标识。也可以比对第二元数据和第一元数据,确定两者之间不一致的描述信息:子文件个数和文件大小,进而将文件系统中第一元数据中用于描述目标文件包含的子文件个数的描述信息修改为4,将文件系统中第一元数据中用于描述目标文件的文件大小的描述信息修改为120兆。
在另一种可能的实施方式下,获取结果为未获得目标文件,这说明文件系统中的目标文件丢失,此时,可从查询得到的目标文件的第一元数据中获取目标文件的文件类型信息,若目标文件的文件类型信息表示目标文件为目录文件,则可在目标文件的存储位置重构目标文件。
具体实施时,可创建一个新文件,将目标文件的文件标识(从查询得到的目标文件的第一元数据中获取)作为新文件的文件标识。然后,对每个数据节点中的文件进行扫描,对扫描到的每个文件,若该文件的父文件的文件标识与新文件的文件标识相同,则确定该文件为新文件的子文件,调用用于生成元数据的接口生成子文件的元数据,进而在新文件中保存各子文件的元数据,最后,将文件系统中存储的目标文件的元数据更新为新文件的元数据。
其中,在新文件中保存各子文件的元数据包括以下几种情况。
第一种情况,可直接将新文件的各子文件的元数据保存在新文件中,此时,如果目标文件中的数据未进行分区存储,则新文件的数据存储结构与目标文件的数据存储结构相同;如果目标文件中的数据进行了分区存储,则新文件的数据存储结构与目标文件的数据存储结构不同。
第二种情况,可从目标文件的父文件中获取目标文件中数据的分区存储信息,按照目标文件中数据的分区存储信息,对新文件的各子文件的元数据进行存储,这样,可使新文件的数据存储结构与目标文件的数据存储结构相同。
也就是说,在本公开实施例中,重构后目标文件的数据存储结构可与重构前目标文件的数据存储结构相同,重构后目标文件的数据存储结构也可与重构前目标文件的数据存储结构不同。
另外,上述过程中,若目标文件的文件类型信息表示目标文件不为目录文件,则说明目标文件的文件内容丢失,此时,删除文件系统中存储的目标文件的元数据即可,因为客户端是通过目标文件的元数据访问目标文件的,删除了文件系统中存储的目标文件的元数据,即代表再也不能访问目标文件的文件内容了。
具体实施时,还可提供手动修复选项,如果技术人员选择该选项,则由技术人员手动地对目标文件进行修复。考虑到文件系统中存储的目标文件的元数据和目标文件的内容都是经过序列化处理以后的数据,因此,如果技术人员选择该选项,则可先对获取到的目标文件的元数据和目标文件的获取结果进行反序列化处理,进而输出反序列化处理后的目标文件的元数据和目标文件的获取结果,这样,可提高目标文件的元数据和目标文件的获取结果的可读性,便于技术人员快速修复目标文件。
实际应用中,客户端对文件系统中文件的修改可实时生效,但文件系统中文件的元数据是根据日志文件随后进行的,因此,如果日志文件中的文件操作记录有丢失,文件系统必然无法成功获取到相应文件。
鉴于此,本公开实施例中,若检测到文件系统对任一目标文件获取失败,还可先获取文件系统的日志文件,进而根据日志文件中每个文件的操作记录对文件系统中存储的该文件的元数据进行修复,之后再对目标文件进行修复,这样,可将文件系统中的元数据恢复到最新版本,尽可能地减少需要进行修复的元数据中的描述信息,进一步缩短修复时间。
参见图5,图5是根据一示例性实施例示出的又一种文件修复方法的流程图,该方法的执行主体为图3中的终端,该方法的流程图包括以下步骤。
S501:检测到文件系统对任一目标文件获取失败。
S502:获取文件系统的日志文件,根据日志文件中每个文件的操作记录对文件系统中存储的该文件的元数据进行修复。
比如,日志文件中某文件的操作记录为该文件最近一次修改时间是2019年10月15日16时30分29秒,修改后的文件大小为200兆;而文件系统中存储的该文件的元数据中该文件最近一次修改时间是2019年10月15日11时20分19秒,文件大小为100兆。那么,根据日志文件中该文件的操作记录,可将文件系统中存储的该文件的元数据中该文件最近一次修改时间的描述信息修改为2019年10月15日16时30分29秒,将文件系统中存储的该文件的元数据中该文件的文件大小的描述信息修改为200兆。
再比如,日志文件中某文件的操作记录为该文件从文件P下移动到文件Q下,而文件系统中存储的该文件的元数据中该文件的父文件为文件P的文件标识。那么,根据日志文件中该文件的操作记录,可将文件系统中存储的该文件的元数据中该文件的父文件的描述信息修改为文件Q的文件标识。
S503:获取目标文件在父文件中的文件标识和父文件的文件信息。
其中,目标文件在父文件中的文件标识如目标文件在父文件中的文件名,父文件的文件信息至少包括父文件的文件标识如inode编号。
S504:根据目标文件在父文件中的文件标识和父文件的文件信息,从文件系统中查询得到目标文件的第一元数据。
其中,目标文件的第一元数据至少包括目标文件在文件系统中的存储位置的描述信息,根据存储位置的描述信息就可从文件系统中获取目标文件。
S505:从得到的目标文件的第一元数据中获取目标文件在文件系统中的存储位置的描述信息,根据该存储位置的描述信息从文件系统中获取目标文件。
S506:根据获取结果对目标文件进行修复。
该步骤的实施参见S405,在此不再赘述。
下面结合具体的实施例对本公开的技术方案进行说明。
图6是根据一示例性实施例示出的又一种文件的存储结构示意图,其中,根节点的文件为root,root的某下级文件有文件:dir D和dir E,dir D有1个子文件:dir F,dir F有两个分片frag 1和frag 2,有3个子文件:file 4、file 5和file 6,且file 4和file 5的元数据存储在frag 1中、file 6的元数据存储在frag 2中,其中,dir X表示目录文件X,fileY开头的表示普通文件Y,frag Z表示分片Z。
具体实施时,终端在检测到文件系统对任一目标文件获取失败时,可获取文件系统的日志文件,根据日志文件中每个文件的操作记录对文件系统中该文件的元数据进行修复,这样,可使文件系统中各文件的元数据恢复到最新版本,减少需要进行修复的元数据中的描述信息,进一步缩短修复时间。
假设目标文件是file 4,则终端可获取file 4在父文件dirF中的文件名和父文件dirF的inode编号,根据file 4在父文件dirF中的文件名和父文件dirF的inode编号,从文件系统中查询file 4的第一元数据,从file 4的第一元数据中获取file 4在文件系统中的存储位置的描述信息,根据该存储位置的描述信息从文件系统中获取file 4,进而根据获取结果对file 4的进行修复。
具体实施时,若获取结果为获得file 4,则可调用生成元数据的接口生成file 4的第二元数据,进而根据file 4的第二元数据对文件系统中存储的file 4的第一元数据中除存储位置之外的描述信息进行修复;若获取结果为未获得file 4,则说明file 4丢失,可直接删除文件系统中存储的file 4的第一元数据。
假设目标文件是dir F,则终端可获取dir F在父文件dir D中的文件名和父文件dir D的inode编号,根据dir F在父文件dir D中的文件名和父文件dir D的inode编号,从文件系统中查询dir F的第一元数据,从dir F的第一元数据中获取dir F在文件系统中的存储位置的描述信息,进而根据该存储位置的描述信息从文件系统中获取dir F,并根据获取结果对dirF的进行修复。
具体实施时,若获取结果为获得dir F,则可调用生成元数据的接口生成dir F的第二元数据,进而根据dir F的第二元数据对文件系统中存储的dir F的第一元数据中除存储位置之外的描述信息进行修复;若获取结果为未获得dir F,则说明dir F丢失,可在相应的存储位置重构dir F。
具体地,从dir F的第一元数据中获取dir F的inode编号,并创建一个代替dir F的文件new dir F,以dir F的inode编号作为new dir F的inode编号,之后,对数据节点中的文件进行扫描,对扫描到的每个文件,若该文件的父文件的inode编号与new dir F的inode编号相同,则确定该文件为new dir F的子文件,根据用于生成元数据的接口生成该子文件的元数据,进而在new dir F中保存new dir F的各子文件的元数据。
比如,直接将new dir F的各子文件的元数据保存在new dir F中,因为dirF中的数据进行了分区存储,而这种重构方式未考虑dir F的数据存储结构,所以new dir F和dirF的数据存储结构不同。
再比如,从dir F的父文件dirA中获取dir F中数据的分片信息,按照dir F的分片信息所描述的dir F的数据存储结构,对new dir F的各子文件的元数据进行存储,这样,new dir F的数据存储结构与dir F的数据存储结构相同。
进一步地,将文件系统中dir F的第一元数据更新为new dir F的元数据,即将dirF的父文件dir D中存储的dir F的文件的元数据更新为new dir F的元数据,从而完成对dir F的重构。
图7是根据一示例性实施例示出的一种电子设备的结构示意图,该电子设备包括收发器701以及处理器702等物理器件,其中,处理器702可以是一个中央处理单元(centralprocessing unit,CPU)、微处理器、专用集成电路、可编程逻辑电路、大规模集成电路、或者为数字处理单元等等。收发器701用于电子设备和其他设备进行数据收发。
该电子设备还可以包括存储器703用于存储处理器702执行的软件指令,当然还可以存储电子设备需要的一些其他数据,如电子设备的索引节点编号、电子设备的加密信息、用户数据等。存储器703可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器703也可以是非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器703是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器703可以是上述存储器的组合。
本公开实施例中不限定上述处理器702、存储器703以及收发器701之间的具体连接介质。本公开实施例在图7中仅以存储器703、处理器702以及收发器701之间通过总线704连接为例进行说明,总线在图7中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器702可以是专用硬件或运行软件的处理器,当处理器702可以运行软件时,处理器702读取存储器703存储的软件指令,并在所述软件指令的驱动下,执行前述任一实施例中涉及的文件修复方法。
当本公开实施例中提供的方法以软件或硬件或软硬件结合实现的时候,电子设备中可以包括多个功能模块,每个功能模块可以包括软件、硬件或其结合。具体的,图8是根据一示例性实施例示出的一种文件修复装置的框图,该装置包括第一获取模块801、查询模块802、第二获取模块803和修复模块804。
第一获取模块801,被配置为执行若检测到文件系统对任一目标文件获取失败,则获取所述目标文件在父文件中的文件标识和所述父文件的文件信息,所述父文件的文件信息至少包括所述父文件的文件标识;
查询模块802,被配置为执行根据所述目标文件在父文件中的文件标识和所述父文件的文件信息,从所述文件系统中查询得到所述目标文件的第一元数据,所述第一元数据中至少包括所述目标文件在所述文件系统中的存储位置的描述信息;
第二获取模块803,被配置为执行从所述第一元数据中获取所述目标文件在所述文件系统中的存储位置的描述信息,根据所述存储位置的描述信息从所述文件系统中获取所述目标文件;
修复模块804,被配置为执行根据获取结果对所述目标文件进行修复。
可选地,所述修复模块804包括元数据修复单元8041和文件重构单元8042:
所述元数据修复单元8041,被配置为执行若所述获取结果为获取到所述目标文件,则根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复;
所述文件重构单元8042,被配置为执行若所述获取结果为未获取到所述目标文件,则从所述第一元数据中获取所述目标文件的文件类型信息,若所述目标文件的文件类型信息表示所述目标文件为目录文件,则在对应存储位置重构所述目标文件。
可选地,所述元数据修复单元8041具体被配置为执行:
根据获取到的所述目标文件生成所述目标文件的第二元数据;
根据所述第二元数据对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复。
可选地,重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构相同;或者
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构不同。
可选地,所述修复模块804还包括删除单元8043,所述删除单元8043被配置为执行:
若所述目标文件的文件类型信息表示所述目标文件不为目录文件,则删除所述文件系统中存储的所述目标文件的第一元数据。
可选地,还包括预修复模块805,所述预修复模块805被配置为执行:
在获取所述目标文件在父文件中的文件标识和所述父文件的文件信息之前,获取所述文件系统的日志文件;根据所述日志文件中每个文件的操作记录对所述文件系统中存储的该文件的元数据进行修复。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本公开各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。各个模块相互之间的耦合可以是通过一些接口实现,这些接口通常是电性通信接口,但是也不排除可能是机械接口或其它的形式接口。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本公开实施例还提供了一种计算机可读存储介质,存储为执行上述处理器所需执行的计算机可执行指令,其包含用于执行上述处理器所需执行的程序。
在一些可能的实施方式中,本公开提供的文件修复方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在电子设备上运行时,所述程序代码用于使所述电子设备执行本说明书上述描述的根据本公开各种示例性实施方式的文件修复方法中的步骤。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本公开的实施方式的用于文件修复的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算设备上运行。然而,本公开的程序产品不限于此,在本公开中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言诸如Java、C++等,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本公开的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本公开范围的所有变更和修改。
显然,本领域的技术人员可以对本公开进行各种改动和变型而不脱离本公开的精神和范围。这样,倘若本公开的这些修改和变型属于本公开权利要求及其等同技术的范围之内,则本公开也意图包含这些改动和变型在内。

Claims (12)

1.一种文件修复方法,其特征在于,包括:
若检测到文件系统对任一目标文件获取失败,则获取所述目标文件在父文件中的文件标识和所述父文件的文件信息,所述父文件的文件信息至少包括所述父文件的文件标识;
根据所述目标文件在父文件中的文件标识和所述父文件的文件信息,从所述文件系统中查询得到所述目标文件的第一元数据,所述第一元数据中至少包括所述目标文件在所述文件系统中的存储位置的描述信息;
从所述第一元数据中获取所述目标文件在所述文件系统中的存储位置的描述信息,根据所述存储位置的描述信息从所述文件系统中获取所述目标文件;
根据获取结果对所述目标文件进行修复;
根据获取结果对所述目标文件进行修复,包括:
若所述获取结果为获取到所述目标文件,则根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复;
若所述获取结果为未获取到所述目标文件,则从所述第一元数据中获取所述目标文件的文件类型信息,若所述目标文件的文件类型信息表示所述目标文件为目录文件,则在对应存储位置重构所述目标文件。
2.根据权利要求1所述的方法,其特征在于,根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复,包括:
根据获取到的所述目标文件生成所述目标文件的第二元数据;
根据所述第二元数据对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复。
3.根据权利要求1所述的方法,其特征在于,
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构相同;或者
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构不同。
4.根据权利要求1所述的方法,其特征在于,还包括:
若所述目标文件的文件类型信息表示所述目标文件不为目录文件,则删除所述文件系统中存储的所述目标文件的第一元数据。
5.根据权利要求1-4任一所述的方法,其特征在于,获取所述目标文件在父文件中的文件标识和所述父文件的文件信息之前,还包括:
获取所述文件系统的日志文件;
根据所述日志文件中每个文件的操作记录对所述文件系统中存储的该文件的元数据进行修复。
6.一种文件修复装置,其特征在于,包括:
第一获取模块,被配置为执行若检测到文件系统对任一目标文件获取失败,则获取所述目标文件在父文件中的文件标识和所述父文件的文件信息,所述父文件的文件信息至少包括所述父文件的文件标识;
查询模块,被配置为执行根据所述目标文件在父文件中的文件标识和所述父文件的文件信息,从所述文件系统中查询得到所述目标文件的第一元数据,所述第一元数据中至少包括所述目标文件在所述文件系统中的存储位置的描述信息;
第二获取模块,被配置为执行从所述第一元数据中获取所述目标文件在所述文件系统中的存储位置的描述信息,根据所述存储位置的描述信息从所述文件系统中获取所述目标文件;
修复模块,被配置为执行根据获取结果对所述目标文件进行修复;
所述修复模块包括元数据修复单元和文件重构单元:
所述元数据修复单元,被配置为执行若所述获取结果为获取到所述目标文件,则根据获取到的所述目标文件对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复;
所述文件重构单元,被配置为执行若所述获取结果为未获取到所述目标文件,则从所述第一元数据中获取所述目标文件的文件类型信息,若所述目标文件的文件类型信息表示所述目标文件为目录文件,则在对应存储位置重构所述目标文件。
7.根据权利要求6所述的装置,其特征在于,所述元数据修复单元被具体配置为执行:
根据获取到的所述目标文件生成所述目标文件的第二元数据;
根据所述第二元数据对所述文件系统中存储的所述第一元数据中的其它描述信息进行修复。
8.根据权利要求6所述的装置,其特征在于,
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构相同;或者
重构后所述目标文件的数据存储结构与重构前所述目标文件的数据存储结构不同。
9.根据权利要求6所述的装置,其特征在于,所述修复模块还包括删除单元,所述删除单元被配置为执行:
若所述目标文件的文件类型信息表示所述目标文件不为目录文件,则删除所述文件系统中存储的所述目标文件的第一元数据。
10.根据权利要求6-9任一所述的装置,其特征在于,还包括预修复模块,所述预修复模块被配置为执行:
在获取所述目标文件在父文件中的文件标识和所述父文件的文件信息之前,获取所述文件系统的日志文件;根据所述日志文件中每个文件的操作记录对所述文件系统中存储的该文件的元数据进行修复。
11.一种电子设备,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,所述至少一个处理器能够执行如权利要求1至5中任一所述的文件修复方法。
12.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,所述电子设备能够执行如权利要求1至5中任一所述的文件修复方法。
CN201911024739.5A 2019-10-25 2019-10-25 一种文件修复方法、装置、电子设备和存储介质 Active CN110807000B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911024739.5A CN110807000B (zh) 2019-10-25 2019-10-25 一种文件修复方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911024739.5A CN110807000B (zh) 2019-10-25 2019-10-25 一种文件修复方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN110807000A CN110807000A (zh) 2020-02-18
CN110807000B true CN110807000B (zh) 2022-06-10

Family

ID=69489191

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911024739.5A Active CN110807000B (zh) 2019-10-25 2019-10-25 一种文件修复方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN110807000B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114116641A (zh) * 2020-08-31 2022-03-01 华为技术有限公司 元数据同步的方法和装置
CN113326511B (zh) * 2021-06-25 2024-04-09 深信服科技股份有限公司 一种文件修复方法、系统、设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617097A (zh) * 2013-11-19 2014-03-05 华为技术有限公司 文件恢复方法及装置
CN103699585A (zh) * 2013-12-06 2014-04-02 华为技术有限公司 文件的元数据存储以及文件恢复的方法、装置和系统
CN105607960A (zh) * 2015-10-26 2016-05-25 成都华为技术有限公司 文件系统目录树修复方法和装置
CN107741889A (zh) * 2017-09-01 2018-02-27 广州视源电子科技股份有限公司 文档恢复方法、系统、可读存储介质及终端
CN108733507A (zh) * 2017-04-17 2018-11-02 伊姆西Ip控股有限责任公司 文件备份和恢复的方法和设备
CN109241004A (zh) * 2018-09-26 2019-01-18 郑州云海信息技术有限公司 元数据文件大小恢复方法、系统、装置及可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617097A (zh) * 2013-11-19 2014-03-05 华为技术有限公司 文件恢复方法及装置
CN103699585A (zh) * 2013-12-06 2014-04-02 华为技术有限公司 文件的元数据存储以及文件恢复的方法、装置和系统
CN105607960A (zh) * 2015-10-26 2016-05-25 成都华为技术有限公司 文件系统目录树修复方法和装置
CN108733507A (zh) * 2017-04-17 2018-11-02 伊姆西Ip控股有限责任公司 文件备份和恢复的方法和设备
CN107741889A (zh) * 2017-09-01 2018-02-27 广州视源电子科技股份有限公司 文档恢复方法、系统、可读存储介质及终端
CN109241004A (zh) * 2018-09-26 2019-01-18 郑州云海信息技术有限公司 元数据文件大小恢复方法、系统、装置及可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Ext4元数据Extent树重构的数据恢复研究;位丽娜 等;《信息工程大学学报》;20170228(第01期);全文 *

Also Published As

Publication number Publication date
CN110807000A (zh) 2020-02-18

Similar Documents

Publication Publication Date Title
US11741046B2 (en) Method and apparatus for creating system disk snapshot of virtual machine
CN109597717B (zh) 一种数据备份、恢复方法、装置、电子设备及存储介质
KR101780340B1 (ko) 가상 데이터베이스를 제공하기 위한 유효성 검증 데이터베이스 스냅샷의 생성 방법, 시스템 및 컴퓨터 판독가능 저장 매체
CN103019879B (zh) 浏览器崩溃信息的处理方法及系统
CA3068345C (en) Witness blocks in blockchain applications
US10496618B2 (en) Managing data replication in a data grid
CN110825420A (zh) 分布式集群的配置参数更新方法、装置、设备及存储介质
CN111614733B (zh) 一种分布式多分片集群的部署方法、装置及存储介质
CN106575227B (zh) 自动软件更新框架
CN103077108B (zh) 一种对浏览器崩溃进行预警的方法和系统
CN111399873A (zh) 一种模型更新方法及装置
CN110262926A (zh) 服务器的元数据修复方法、装置、系统和计算机设备
CN110807000B (zh) 一种文件修复方法、装置、电子设备和存储介质
US20180293265A1 (en) Enhanced FSCK Mechanism for Improved Consistency in Case of Erasure Coded Object Storage Architecture Built Using Clustered File System
US20200301944A1 (en) Method and apparatus for storing off-chain data
CN111737227B (zh) 数据修改方法及系统
US11210003B2 (en) Method, device and computer program product for restoring data based on replacing child node identifiers with parent node identifier
CN110968478A (zh) 日志采集方法、服务器及计算机存储介质
CN104765652A (zh) 一种数据备份和数据恢复方法及装置
CN111198885A (zh) 数据的处理方法及装置
CN111176904B (zh) 一种私有云架构下的数据备份的方法、系统、设备及介质
CN111625396B (zh) 备份数据的校验方法、服务器及存储介质
CN115883512A (zh) Dns域名处理方法、装置、系统、设备及介质
CN111694724A (zh) 分布式表格系统的测试方法、装置、电子设备及存储介质
CN115878721A (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
GR01 Patent grant
GR01 Patent grant