CN114116613A - 基于分布式文件系统的元数据查询方法、设备和存储介质 - Google Patents

基于分布式文件系统的元数据查询方法、设备和存储介质 Download PDF

Info

Publication number
CN114116613A
CN114116613A CN202111423724.3A CN202111423724A CN114116613A CN 114116613 A CN114116613 A CN 114116613A CN 202111423724 A CN202111423724 A CN 202111423724A CN 114116613 A CN114116613 A CN 114116613A
Authority
CN
China
Prior art keywords
directory
modification operation
metadata
path
file
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
Application number
CN202111423724.3A
Other languages
English (en)
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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111423724.3A priority Critical patent/CN114116613A/zh
Publication of CN114116613A publication Critical patent/CN114116613A/zh
Priority to PCT/CN2022/120227 priority patent/WO2023093245A1/zh
Pending legal-status Critical Current

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/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/13File access structures, e.g. distributed indices
    • G06F16/134Distributed indices
    • 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/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • 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)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供了一种基于分布式文件系统的元数据查询方法、装置、设备和存储介质,涉及计算机技术领域,尤其涉及分布式文件系统技术领域和数据存储技术领域。具体实现方案为:获取客户端对待查询文件的元数据查询请求;响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;其中,所述页面置换缓存根据客户端的目录修改操作调整。本公开实施例能够简化元数据查询流程,降低查询延迟。

Description

基于分布式文件系统的元数据查询方法、设备和存储介质
技术领域
本公开涉及计算机技术领域,尤其涉及分布式文件系统技术领域和数据存储技术领域,具体涉及一种基于分布式文件系统的元数据查询方法、装置、电子设备和计算机可读存储介质。
背景技术
元数据是指描述数据的数据,主要是描述数据属性的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。在分布式文件系统中,元数据是描述文件系统的重要单元。大部分分布式文件系统的典型应用中,如互联网,科学计算等,元数据查询请求占到所有请求一半以上的比例。因此,分布式文件系统中元数据的查询效率,降低元数据查询延迟对整个文件系统的性能有着极其重要的影响。
发明内容
本公开提供了一种用于基于分布式文件系统的元数据查询方法、装置、设备和存储介质。
根据本公开的一方面,提供了一种基于分布式文件系统的元数据查询方法,包括:
获取客户端对待查询文件的元数据查询请求;
响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;
在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;
其中,所述页面置换缓存根据客户端的目录修改操作调整。
根据本公开的又一方面,提供了一种基于分布式文件系统的元数据查询装置,包括:
元数据查询请求获取模块,用于获取客户端对待查询文件的元数据查询请求;
父索引节点标识确定模块,用于响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;
元数据查询模块,用于在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;
其中,所述页面置换缓存根据客户端的目录修改操作调整。
根据本公开的又一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任意实施例所提供的基于分布式文件系统的元数据查询方法。
根据本公开的又一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行本公开任意实施例所提供的基于分布式文件系统的元数据查询方法。
根据本公开的又一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开任意实施例所提供的基于分布式文件系统的元数据查询方法。
根据本公开的技术,能够简化元数据查询流程,降低查询延迟。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例提供的一种基于分布式文件系统的元数据查询方法的示意图;
图2是根据本公开实施例提供的另一种基于分布式文件系统的元数据查询方法的示意图;
图3是根据本公开实施例提供的一种基于分布式文件系统的元数据查询装置的示意图;
图4是用来实现本公开实施例的基于分布式文件系统的元数据查询方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
以下结合附图,对本公开实施例提供的该方案进行详细说明。
分布式文件系统的典型架构一般包括如下几个部分:客户端、元数据管理集群、元数据库和存储集群。其中,客户端是以库的形式编译进业务进程中的,客户端向业务提供文件系统的相关访问接口如:创建文件夹/文件接口、打开/关闭文件接口、目录下子目录/子文件列举接口、文件数据读取接口和文件数据写入接口等;元数据管理集群由多个元数据管理节点(master)组成,每个元数据管理节点完全对等,没有主、从之分,元数据管理节点可以水平扩容。
元数据管理节点用于管理目录树、文件夹/文件的索引节点(inode)信息、文件数据块信息和数据块到存储节点的映射信息。元数据管理节点对外提供元数据查询与修改等功能。元数据管理节点本地不持久化目录树等元数据,所有的元数据都持久化到外部的元数据库中。
元数据库用于持久化分布式文件系统的所有元数据,如目录树、文件的索引节点信息、文件的数据块信息和数据块到存储节点的映射信息等。存储集群由多个存储节点组成,用来存储分布式文件系统的文件数据。每个文件的数据被水平切割成多个数据块(block),每个存储节点存储了多个文件的数据块。
在上述分布式文件系统中,元数据管理节点查询一个路径深度为N的文件的索引节点标识(inodeid),目前主要有如下两个方法来实现:1)串行逐级查询法:假设一个文件目录路径为/a/b/c,需要查询文件c的inodeid;首先通过根节点inodeid+a去数据库查询a的inodeid,然后通过a的inodeid+b查询到b的inodeid,最后通过b的inodeid+c查询到文件c的inodeid。利用串行逐级查询法,查询一个路径深度为N文件的inodeid需要串行查询数据库N次。2)缓存加速查询法:在元数据管理节点设置缓存,当需要查询文件的inodeid时,首先从缓存获取该文件目录路径的父目录索引节点标识,然后向元数据库并发执行N次主键查询,当所有子请求都返回成功,就代表查询成功,如果某个子请求查询失败,则代表查询失败。为了便于理解,继续上例进行说明,假设本地分别缓存了/a、/a/b、/a/b/c的inodeid,那么为了查询c的实际inodeid,向数据库并发执行3次查询:根目录inodeid+a,查询a的inodeid;a的inodeid+b,查询b的inodeid;b的inodeid+c,查询c的inodeid;如果3次查询均返回成功,则查询成功。如果3次查询有某个子请求查询失败,则查询失败。
上述两种元数据查询方法,查询一个路径深度为N文件的索引节点标识均需要查询元数据库N次,查询流程复杂。基于此,本公开提供了一种基于分布式文件系统的元数据查询方案。
图1是根据本公开实施例提供的一种基于分布式文件系统的元数据查询方法的示意图,本公开实施例可适用于在分布式文件系统中查询元数据的情况。该方法可由一种基于分布式文件系统的元数据查询装置来执行,该装置可采用硬件和/或软件的方式来实现,可配置于电子设备中。参考图1,该方法具体包括如下:
S110、获取客户端对待查询文件的元数据查询请求。
其中,元数据是指描述数据的数据,主要是描述数据属性的信息,用来支持如指示存储位置、历史数据、资源查找和文件记录等功能。待查询文件的元数据是用于描述待查询文件属性的信息。元数据查询请求由客户端产生,用于向元数据管理节点请求待查询文件的元数据。可选的,待查询文件的元数据查询请求包括待查询文件标识,如文件名称。可选的,待查询文件可以是文件或者文件夹。获取客户端对待查询文件的元数据查询请求,具体的,由元数据管理节点获取客户端对待查询文件的元数据查询请求。
S120、响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识。
其中,页面置换缓存是指利用页面置换缓存算法设计的缓存结构,其中,页面置换缓存算法可以为LRU(The Least Recently Used,最近最久未使用算法)。页面置换缓存设置在元数据管理节点中,由元数据管理节点维护。页面置换缓存中存储有元数据管理节点最近访过的文件所属父目录路径的父索引节点标识。其中,索引节点标识(inodeid)分布式文件系统为每个文件分配的全局唯一标识信息。索引点标识用于区分分布式系统中的不同文件,不同文件的索引点标识不同。
元数据管理节点响应于接收到元数据查询请求,确定自身维护的页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识。
S130、在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据。
其中,所述页面置换缓存根据客户端的目录修改操作调整。具体的,页面置换缓存中所包括的目录路径根据客户端的目录修改操作调整。
其中,客户端的目录修改操作是指客户端对非空目录进行的修改操作,可选的,目录修改操作包括重命名操作或者删除操作。
元数据管理节点根据客户端的目录修改操作对自身维护的页面置换缓存中目录路径的索引节点标识进行调整,保证了元数据管理节点的页面置换缓存中索引节点标识的一致性,进而保证了元数据管理节点的页面置换缓存中索引节点标识的准确性。
可以知道的是,在分布式文件系统中,每文件的元数据均以键值对(key-value)的形式存储在元数据库中,key值是由文件的父目录的索引节点标识和文件标识组成,value值包含文件的元数据如索引节点标识和创建时间等。
在分布式文件系统中查询文件的元数据时,元数据管理节点会在自身维护的页面置换缓存中获取待查询文件的父目录的父索引节点标识,然后依据父目录的父索引节点标识和待查询文件标识从元数据库查询待查询文件的索引节点标识。若元数据管理节点自身维护的页面置换缓存中存在有待查询文件所属父目录路径的父索引节点标识,元数据管理节点则根据该父索引节点标识和待查询文件的文件名,从元数据库中直接查询待查询文件的元数据。
其中,元数据库用于持久化分布式文件系统的所有元数据,如目录树、文件的索引节点信息、文件的数据块信息和数据块到存储节点的映射信息等。可选的,元数据库为NewSQL数据库。
若元数据管理节点在自身页面置换缓存未找到待查询文件所属父目录路径的父索引节点标识,则元数据管理节点需要采用串行逐级查询法在元数据库中查询待查询文件的元数据。
不同于现有的串行逐级查询法和缓存加速查询法,查询一个路径深度为N文件的索引节点标识均需要查询元数据库N次,执行本公开提供的技术方案,仅需要查询在元数据库中查询一次,减少了查询次数,简化了元数据查询流程,降低了查询延迟。
本公开实施例的技术方案,获取客户端对待查询文件的元数据查询请求;响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;其中,所述页面置换缓存根据客户端的目录修改操作调整,保证了页面置换缓存中目录路径的索引节点标识的一致性,简化了元数据查询的流程,降低了查询延迟。
本实施例是在上述实施例的基础上提出的一种可选方案。具体的,对根据客户端的目录修改操作,调整页面置换缓存所包括的目标路径的索引节点标识进行了细化。
一方面,在检测到客户端对第一目录路径的目录修改操作的情况下,从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识,且控制其他元数据管理节点从其他页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
其中,第一目录路径是指存储在元数据管理节点自身页面置换缓存中的目录路径,目录路径用于指示文件存储位置。元数据管理节点在检测到客户端对第一目录路径的目录修改操作的情况下,元数据管理节点为了保证自身页面置换缓存中数据一致性,会从自身页面置换缓存中删除第一目录路径以及第一目录路径的子目录路径的索引节点标识。
示例性的,元数据管理节点自身置换缓存中存储的第一目录路径为/a和/a/b,以及/a和/a/b的索引节点标识,客户端执行了对第一目录路径的重命名操作,将/a/b重命名为/f/b,后又创建了目录路径/a/b和/a/b/c,若元数据管理节点不从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。此时,元数据管理节点自身页面置换缓存中/a/b的索引节点标识是不准确的,和实际/a/b的索引节点标识并不一致,元数据管理节点从自身置换缓存查询到的/a/b/c的索引节点标识,实际上为/f/b/c的索引节点标识。
元数据管理节点在从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识以后,还会控制其他元数据管理节点从其他页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识,保证了整个分布式文件系统的数据一致性。具体的,检测到客户端对第一目录路径的目录修改操作的元数据管理节点,向分布式文件系统中的其他的元数据管理节点发送页面置换缓存调整请求,使得其他元数据管理节点根据页面置换缓存调整请求,在各自的页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
另一方面,在检测到客户端对第一目录路径的目录修改操作的情况下,将对第一目录路径的目录修改操作添加到修改操作记录中,用于根据所述修改操作记录中的目录修改操作调整各元数据管理节点中的页面置换缓存。
其中,修改操作记录用于记录客户端的目录修改操作,可选的,修改操作记录包括:已修改目录标识、修改时间以及修改内容中的至少一项。
可选的,将修改操作记录持久化到元数据库中。示例性的,元数据库可以为NewSQL数据库。
检测到客户端对第一目录路径的目录修改操作的元数据管理节点,将第一目录路径的目录修改操作添加至修改操作记录中,可以使得分布式文件系统中各元数据管理节点,根据修改操作记录中目录修改操作调整各元数据管理节点中的页面置换缓存。将目录修改操作添加至修改操作记录,保证了目录修改操作的可查询性以及共享性,通过将第一目录路径的目录修改操作添加至修改操作记录中,可以提高元数据管理节点的页面置换缓存调整成功率。即使某个元数据管理节点出现异常,无法接收到其他元数据管理节点发送过来的缓存调整请求,也能根据修改操作记录中的目录修改操作,在一定时间内从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
可选的,在检测到客户端对第一目录路径的目录修改操作的元数据管理节点,向分布式文件系统中的其他的元数据管理节点发送页面置换缓存调整请求以后,收到页面置换缓存调整请求的元数据管理节点,根据页面置换缓存调整请求,从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识,并向发送页面置换缓存调整请求的元数据管理节点反馈缓存调整完毕消息,以使发送页面置换缓存调整请求的元数据管理节点,在接收到所有其他元数据管理节点反馈的缓存调整完毕消息后,向用户反馈目录修改操作成功的消息;若由于网络时延等问题,导致某个元数据管理节点缓存调整完毕消息反馈超时,则发送页面置换缓存调整请求的元数据管理节点需要等待一段时间后再向用户返回目录修改操作成功的消息,在这段时间内,发生异常的元数据管理节点可以根据元数据库中修改操作记录的目录修改操作,从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
在一个可选的实施例中,所述将对第一目录路径的目录修改操作添加到修改操作记录中之后,还包括:在自身已根据对第一目录路径的目录修改操作调整自身页面置换缓存,且其他元数据管理节点已根据对第一目录路径的目录修改操作调整其他页面置换缓存的情况下,从所述修改操作记录中删除对第一目录路径的目录修改操作。
检测到客户端对第一目录路径的目录修改操作的元数据管理节点,在自身已根据对第一目录路径的目录修改操作调整自身页面置换缓存,且分布式文件系统中其他元数据管理节点已根据对第一目录路径的目录修改操作调整其他页面置换缓存的情况下,也就是说分布式文件系统中各元数据管理节点各自页面置换缓存中第一目录路径的相关内容均已调整完毕。此时,可以从修改操作记录中删除对第一目录路径的目录修改操作。这样做可以提高数据管理效率,提高资源利用率。可选的,从元数据库已持久化保存的修改操作记录中删除对第一目录路径的目录修改操作。
本公开实施例的技术方案通过在检测到客户端对第一目录路径的目录修改操作的情况下,对从自身页面置换缓存进行调整且控制其他元数据管理节点对各自的页面置换缓存进行调整;还将对第一目录路径的目录修改操作添加到修改操作记录中,以使元数据管理节点根据修改操作记录中的目录修改操作调整各元数据管理节点中的页面置换缓存。保证了分布式文件系统中各元数据管理节点自身页面置换缓存中数据的一致性,保证了在页面置换缓存中数据的准确性。
图2是根据本公开实施例提供的另一种基于分布式文件系统的元数据查询方法的示意图。本实施例是在上述实施例的基础上提出的一种可选方案。参见图2,本实施例提供的基于分布式文件系统的元数据查询方法包括:
S210、从所述修改操作记录中拉取对第二目录路径的目录修改操作。
其中,第二目录路径是指记录在修改操作记录中的目标路径,第二目录路径包括但不限于第一目录路径,第二目录路径可以是由分布式文件系统中其他元数据管理节点添加至修改操作记录中,具体的可以是检测到客户端对第二目录路径的目录修改操作的元数据管理节点。
元数据管理节点从修改操作记录中拉取对第二目录路径的目录修改操作,根据第二目标路径的目录修改操作对自身页面置换缓存进行调整。具体的,每个元数据管理节点可以定期从元数据库中拉取修改操作记录,根据修改操作记录中对第二目录路径的目录修改操作,清除自身页面置换缓存,使得元数据管理节点在异常情况下未收到其他元数据管理节点发送过来的页面置换缓存调整请求,也能在短时间内在自身页面置换缓存删除发生变化的目录,保证了各个元数据管理节点的缓存一致性。
在一个可选实施例中,从所述修改操作记录中拉取对第二目录路径的目录修改操作,包括:获取自身元数据管理节点已拉取的目录修改操作标识;根据已拉取的目录修改操作标识,从所述修改操作记录中拉取对第二目录路径的目录修改操作。
其中,目录修改操作标识用于区分不同的目录修改操作。考虑到资源利用率,元数据管理节点已拉取的目录修改操作不必再次拉取,元数据管理节点获取自身已拉取的目录修改操作标识,根据已拉取的目录修改操作标识,从修改操作记录中拉取尚未拉取的目录修改操作。
可选的,目录修改操作标识为目录修改操作的编号。元数据管理节点可以按照一定的编号顺序,如从小到的顺序,从修改操作记录中拉取目录修改操作。示例性的,若元数据管理节点已拉取的编号为1-198的目录修改操作,则元数据管理节点再次拉取目录修改操作时直接从编号为199的目录修改操作开始拉取。这样做可以提高资源利用率。
在一个可选的实施例中,在从所述修改操作记录中连续N次拉取目录修改操作失败的情况下,清空自身页面置换缓存。
由于网络时延等原因,可能造成元数据管理节点不能成功拉取目录修改操作,为了提高页面置换缓存调整成功率,若元数据管理节点拉取目录修改操作失败,可以等待预设时间,再次拉取目录修改操作,直到该元数据管理节点连续N次拉取目录修改操作均失败。其中,N和预设时间均是由相关技术人员根据实际业务需求预先设定的,N和预设时间的具体数值在这里不作限定,具体根据实际情况确定。示例性的,N的取值可以为3,预设时间可以为几秒。
若元数据管理节点从修改操作记录中连续N次拉取目录修改操作均失败,则表明该元数据管理节点异常,可能出现了宕机情况,为了保证数据准确性,该元数据管理节点自身页面置换缓存中数据不再被信任,该元数据管理节点需要清空自身页面置换缓存。
S220、从自身页面置换缓存中删除第二目录路径和第二目录路径的子目录路径的索引节点标识。
元数据管理节点根据拉取到的第二目录路径的目录修改操作,从自身页面置换缓存中删除第二目录路径和第二目录路径的子目录路径的索引节点标识。
本公开实施例的技术方案通过从修改操作记录中拉取对第二目录路径的目录修改操作,从自身页面置换缓存中删除第二目录路径和第二目录路径的子目录路径的索引节点标识。保证了元数据管理节点自身页面置换缓存中数据的一致性和准确性,为元数据查询提供了准确有力的数据支持。
图3是根据本公开实施例提供的一种基于分布式文件系统的元数据查询装置的示意图,本实施例可适用于在分布式文件系统中查询元数据的情况,该装置配置于电子设备中,可实现本公开任意实施例所述的基于分布式文件系统的元数据查询方法。参考图3,该基于分布式文件系统的元数据查询装置300具体包括如下:
元数据查询请求获取模块310,用于获取客户端对待查询文件的元数据查询请求;
父索引节点标识确定模块320,用于响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;
元数据查询模块330,用于在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;
其中,所述页面置换缓存根据客户端的目录修改操作调整。
在一种可选实施方式中,所述装置还包括:索引节点标识处理模块,具体用于在检测到客户端对第一目录路径的目录修改操作的情况下,从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识,且控制其他元数据管理节点从其他页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
在一种可选实施方式中,所述装置还包括:目录修改操作添加模块,具体用于在检测到客户端对第一目录路径的目录修改操作的情况下,将对第一目录路径的目录修改操作添加到修改操作记录中,用于根据所述修改操作记录中的目录修改操作调整各元数据管理节点中的页面置换缓存。
在一种可选实施方式中,所述装置还包括:目录修改操作拉取模块,用于从所述修改操作记录中拉取对第二目录路径的目录修改操作;索引节点标识删除模块,用于从自身页面置换缓存中删除第二目录路径和第二目录路径的子目录路径的索引节点标识。
在一种可选实施方式中,所述目录修改操作拉取模块,包括:已拉取目录修改操作标识获取子模块,用于获取自身元数据管理节点已拉取的目录修改操作标识;目录修改操作拉取子模块,用于根据已拉取的目录修改操作标识,从所述修改操作记录中拉取对第二目录路径的目录修改操作。
在一种可选实施方式中,所述装置还包括:自身页面置换缓存清空模块,具体用于在从所述修改操作记录中连续N次拉取目录修改操作失败的情况下,清空自身页面置换缓存。
在一种可选实施方式中,所述装置还包括:目录修改操作删除模块,具体用于将对第一目录路径的目录修改操作添加到修改操作记录中之后,在自身已根据对第一目录路径的目录修改操作调整自身页面置换缓存,且其他元数据管理节点已根据对第一目录路径的目录修改操作调整其他页面置换缓存的情况下,从所述修改操作记录中删除对第一目录路径的目录修改操作。
本公开实施例的技术方案,获取客户端对待查询文件的元数据查询请求;响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;其中,所述页面置换缓存根据客户端的目录修改操作调整,保证了页面置换缓存中目录路径的索引节点标识的一致性,简化了元数据查询的流程,降低了查询延迟。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图4示出了可以用来实施本公开的实施例的示例电子设备400的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图4所示,设备400包括计算单元401,其可以根据存储在只读存储器(ROM)402中的计算机程序或者从存储单元408加载到随机访问存储器(RAM)403中的计算机程序,来执行各种适当的动作和处理。在RAM403中,还可存储设备400操作所需的各种程序和数据。计算单元401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种执行机器学习模型算法的计算单元、数字信息处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理,例如基于分布式文件系统的元数据查询方法。例如,在一些实施例中,基于分布式文件系统的元数据查询方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到RAM 403并由计算单元401执行时,可以执行上文描述的基于分布式文件系统的元数据查询方法的一个或多个步骤。备选地,在其他实施例中,计算单元401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于分布式文件系统的元数据查询方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上执行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (17)

1.基于分布式文件系统的元数据查询方法,所述方法包括:
获取客户端对待查询文件的元数据查询请求;
响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;
在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;其中,所述页面置换缓存根据客户端的目录修改操作调整。
2.根据权利要求1所述的方法,所述方法还包括:
在检测到客户端对第一目录路径的目录修改操作的情况下,从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识,且控制其他元数据管理节点从其他页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
3.根据权利要求1所述的方法,所述方法还包括:
在检测到客户端对第一目录路径的目录修改操作的情况下,将对第一目录路径的目录修改操作添加到修改操作记录中,用于根据所述修改操作记录中的目录修改操作调整各元数据管理节点中的页面置换缓存。
4.根据权利要求3所述的方法,所述方法还包括:
从所述修改操作记录中拉取对第二目录路径的目录修改操作;
从自身页面置换缓存中删除第二目录路径和第二目录路径的子目录路径的索引节点标识。
5.根据权利要求4所述的方法,其中,所述从所述修改操作记录中拉取对第二目录路径的目录修改操作,包括:
获取自身元数据管理节点已拉取的目录修改操作标识;
根据已拉取的目录修改操作标识,从所述修改操作记录中拉取对第二目录路径的目录修改操作。
6.根据权利要求3所述的方法,所述方法还包括:
在从所述修改操作记录中连续N次拉取目录修改操作失败的情况下,清空自身页面置换缓存。
7.根据权利要求3所述的方法,所述将对第一目录路径的目录修改操作添加到修改操作记录中之后,还包括:
在自身已根据对第一目录路径的目录修改操作调整自身页面置换缓存,且其他元数据管理节点已根据对第一目录路径的目录修改操作调整其他页面置换缓存的情况下,从所述修改操作记录中删除对第一目录路径的目录修改操作。
8.基于分布式文件系统的元数据查询装置,所述装置包括:
元数据查询请求获取模块,用于获取客户端对待查询文件的元数据查询请求;
父索引节点标识确定模块,用于响应于所述元数据查询请求,确定自身页面置换缓存中是否存在有待查询文件所属父目录路径的父索引节点标识;
元数据查询模块,用于在存在的情况下,根据所述父索引节点标识和待查询文件的文件名,从元数据库中查询待查询文件的元数据;
其中,所述页面置换缓存根据客户端的目录修改操作调整。
9.根据权利要求8所述的装置,所述装置还包括:
索引节点标识处理模块,具体用于在检测到客户端对第一目录路径的目录修改操作的情况下,从自身页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识,且控制其他元数据管理节点从其他页面置换缓存中删除第一目录路径和第一目录路径的子目录路径的索引节点标识。
10.根据权利要求8所述的装置,所述装置还包括:
目录修改操作添加模块,具体用于在检测到客户端对第一目录路径的目录修改操作的情况下,将对第一目录路径的目录修改操作添加到修改操作记录中,用于根据所述修改操作记录中的目录修改操作调整各元数据管理节点中的页面置换缓存。
11.根据权利要求10所述的装置,所述装置还包括:
目录修改操作拉取模块,用于从所述修改操作记录中拉取对第二目录路径的目录修改操作;
索引节点标识删除模块,用于从自身页面置换缓存中删除第二目录路径和第二目录路径的子目录路径的索引节点标识。
12.根据权利要求11所述的装置,其中,所述目录修改操作拉取模块,包括:
已拉取目录修改操作标识获取子模块,用于获取自身元数据管理节点已拉取的目录修改操作标识;
目录修改操作拉取子模块,用于根据已拉取的目录修改操作标识,从所述修改操作记录中拉取对第二目录路径的目录修改操作。
13.根据权利要求10所述的装置,所述装置还包括:
自身页面置换缓存清空模块,具体用于在从所述修改操作记录中连续N次拉取目录修改操作失败的情况下,清空自身页面置换缓存。
14.根据权利要求10所述的装置,所述装置还包括:目录修改操作删除模块,具体用于将对第一目录路径的目录修改操作添加到修改操作记录中之后,在自身已根据对第一目录路径的目录修改操作调整自身页面置换缓存,且其他元数据管理节点已根据对第一目录路径的目录修改操作调整其他页面置换缓存的情况下,从所述修改操作记录中删除对第一目录路径的目录修改操作。
15.一种电子设备,其中,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7中任一项所述的方法。
CN202111423724.3A 2021-11-26 2021-11-26 基于分布式文件系统的元数据查询方法、设备和存储介质 Pending CN114116613A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111423724.3A CN114116613A (zh) 2021-11-26 2021-11-26 基于分布式文件系统的元数据查询方法、设备和存储介质
PCT/CN2022/120227 WO2023093245A1 (zh) 2021-11-26 2022-09-21 基于分布式文件系统的元数据查询方法、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111423724.3A CN114116613A (zh) 2021-11-26 2021-11-26 基于分布式文件系统的元数据查询方法、设备和存储介质

Publications (1)

Publication Number Publication Date
CN114116613A true CN114116613A (zh) 2022-03-01

Family

ID=80370255

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111423724.3A Pending CN114116613A (zh) 2021-11-26 2021-11-26 基于分布式文件系统的元数据查询方法、设备和存储介质

Country Status (2)

Country Link
CN (1) CN114116613A (zh)
WO (1) WO2023093245A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114756509A (zh) * 2022-05-19 2022-07-15 北京百度网讯科技有限公司 文件系统的操作方法、系统、设备以及存储介质
WO2023093245A1 (zh) * 2021-11-26 2023-06-01 北京百度网讯科技有限公司 基于分布式文件系统的元数据查询方法、设备和存储介质
CN116303267A (zh) * 2023-03-06 2023-06-23 北京百度网讯科技有限公司 数据访问方法、装置、设备以及存储介质
WO2023179787A1 (zh) * 2022-03-25 2023-09-28 阿里巴巴(中国)有限公司 分布式文件系统的元数据管理方法和装置
CN117873967A (zh) * 2024-03-08 2024-04-12 腾讯科技(深圳)有限公司 分布式文件系统的数据管理方法、装置、设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117056379B (zh) * 2023-10-11 2024-01-26 宁波银行股份有限公司 一种元数据缓存方法、装置、电子设备及可读存储介质
CN117312297B (zh) * 2023-11-30 2024-04-02 中国光大银行股份有限公司 数据管理方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697168A (zh) * 2009-10-22 2010-04-21 中国科学技术大学 一种分布式文件系统动态元数据管理方法及系统
CN103020315A (zh) * 2013-01-10 2013-04-03 中国人民解放军国防科学技术大学 一种基于主从分布式文件系统的海量小文件存储方法
CN103019960A (zh) * 2012-12-03 2013-04-03 华为技术有限公司 分布式缓存方法及系统
CN103150394A (zh) * 2013-03-25 2013-06-12 中国人民解放军国防科学技术大学 面向高性能计算的分布式文件系统元数据管理方法
CN106874481A (zh) * 2017-02-20 2017-06-20 郑州云海信息技术有限公司 一种分布式文件系统元数据信息读取方法及系统
US10140304B1 (en) * 2015-12-10 2018-11-27 EMC IP Holding Company LLC Distributed metadata servers in a file system with separate metadata servers for file metadata and directory metadata
CN109241021A (zh) * 2018-09-04 2019-01-18 郑州云海信息技术有限公司 一种文件查询方法、装置、设备及计算机可读存储介质
CN109684282A (zh) * 2018-11-23 2019-04-26 华为技术有限公司 一种构建元数据缓存的方法及装置
US20200379948A1 (en) * 2019-06-03 2020-12-03 EMC IP Holding Company LLC Indexes and queries for files by indexing file directories
CN113127420A (zh) * 2021-03-30 2021-07-16 山东英信计算机技术有限公司 一种元数据请求处理方法、装置、设备、介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10649852B1 (en) * 2017-07-14 2020-05-12 EMC IP Holding Company LLC Index metadata for inode based backups
CN113010486B (zh) * 2021-02-05 2021-11-26 湖南国科亿存信息科技有限公司 用于无中心分布式文件系统的元数据分层缓存方法及装置
CN113010476B (zh) * 2021-03-15 2023-12-22 腾讯云计算(北京)有限责任公司 元数据查找方法、装置、设备及计算机可读存储介质
CN114116613A (zh) * 2021-11-26 2022-03-01 北京百度网讯科技有限公司 基于分布式文件系统的元数据查询方法、设备和存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697168A (zh) * 2009-10-22 2010-04-21 中国科学技术大学 一种分布式文件系统动态元数据管理方法及系统
CN103019960A (zh) * 2012-12-03 2013-04-03 华为技术有限公司 分布式缓存方法及系统
CN103020315A (zh) * 2013-01-10 2013-04-03 中国人民解放军国防科学技术大学 一种基于主从分布式文件系统的海量小文件存储方法
CN103150394A (zh) * 2013-03-25 2013-06-12 中国人民解放军国防科学技术大学 面向高性能计算的分布式文件系统元数据管理方法
US10140304B1 (en) * 2015-12-10 2018-11-27 EMC IP Holding Company LLC Distributed metadata servers in a file system with separate metadata servers for file metadata and directory metadata
CN106874481A (zh) * 2017-02-20 2017-06-20 郑州云海信息技术有限公司 一种分布式文件系统元数据信息读取方法及系统
CN109241021A (zh) * 2018-09-04 2019-01-18 郑州云海信息技术有限公司 一种文件查询方法、装置、设备及计算机可读存储介质
CN109684282A (zh) * 2018-11-23 2019-04-26 华为技术有限公司 一种构建元数据缓存的方法及装置
US20200379948A1 (en) * 2019-06-03 2020-12-03 EMC IP Holding Company LLC Indexes and queries for files by indexing file directories
CN113127420A (zh) * 2021-03-30 2021-07-16 山东英信计算机技术有限公司 一种元数据请求处理方法、装置、设备、介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
战科宇;李小勇;刘海涛;: "分布式文件系统元数据服务器高可用性设计", 小型微型计算机系统, no. 04, 15 April 2013 (2013-04-15), pages 115 - 119 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023093245A1 (zh) * 2021-11-26 2023-06-01 北京百度网讯科技有限公司 基于分布式文件系统的元数据查询方法、设备和存储介质
WO2023179787A1 (zh) * 2022-03-25 2023-09-28 阿里巴巴(中国)有限公司 分布式文件系统的元数据管理方法和装置
CN114756509A (zh) * 2022-05-19 2022-07-15 北京百度网讯科技有限公司 文件系统的操作方法、系统、设备以及存储介质
CN116303267A (zh) * 2023-03-06 2023-06-23 北京百度网讯科技有限公司 数据访问方法、装置、设备以及存储介质
CN117873967A (zh) * 2024-03-08 2024-04-12 腾讯科技(深圳)有限公司 分布式文件系统的数据管理方法、装置、设备及存储介质
CN117873967B (zh) * 2024-03-08 2024-05-17 腾讯科技(深圳)有限公司 分布式文件系统的数据管理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
WO2023093245A1 (zh) 2023-06-01

Similar Documents

Publication Publication Date Title
CN114116613A (zh) 基于分布式文件系统的元数据查询方法、设备和存储介质
US9830327B2 (en) Method, device, node and system for managing file in distributed data warehouse
CN109947668B (zh) 存储数据的方法和装置
CN102169507B (zh) 一种分布式实时搜索引擎的实现方法
EP2874077B1 (en) Stateless database cache
KR102423125B1 (ko) 데이터베이스 동기화
CN113868273B (zh) 元数据的快照方法及其装置
CN113010535A (zh) 缓存数据的更新方法、装置、设备和存储介质
CN116303267A (zh) 数据访问方法、装置、设备以及存储介质
CN116028517A (zh) 一种融合数据库系统及电子设备
CN113051244B (zh) 数据访问方法和装置、数据获取方法和装置
CN115905322A (zh) 业务处理方法、装置、电子设备及存储介质
CN115480704A (zh) 数据块组迁移映射表的构建方法、装置、设备及存储介质
CN114579059A (zh) 一种文件数据迁移方法、装置、设备及存储介质
CN112783914B (zh) 优化语句的方法和装置
CN114443910A (zh) 数据存储方法、搜索方法、装置和电子设备
CN107423375B (zh) 应用程序搜索方法和装置
CN113704242A (zh) 一种数据处理方法和装置
US11947822B2 (en) Maintaining a record data structure using page metadata of a bookkeeping page
CN113569144B (zh) 推广内容的检索方法、装置、设备、存储介质及程序产品
WO2016117032A1 (ja) データベースシステム、計算機システム、及び、データベース管理方法
CN117743290A (zh) 数据操作方法、装置、设备以及存储介质
US20230033592A1 (en) Information processing apparatus, method and program
CN117596298A (zh) 一种数据处理方法、装置、电子设备及存储介质
CN115756715A (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