CN110825698B - 元数据管理方法及相关装置 - Google Patents
元数据管理方法及相关装置 Download PDFInfo
- Publication number
- CN110825698B CN110825698B CN201911083084.9A CN201911083084A CN110825698B CN 110825698 B CN110825698 B CN 110825698B CN 201911083084 A CN201911083084 A CN 201911083084A CN 110825698 B CN110825698 B CN 110825698B
- Authority
- CN
- China
- Prior art keywords
- storage node
- storage
- node
- file
- metadata
- 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
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/13—File access structures, e.g. distributed indices
- G06F16/134—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/178—Techniques for file synchronisation in file systems
-
- 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/18—File system types
- G06F16/182—Distributed 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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及分布式存储领域,提供了一种元数据管理方法及相关装置,所述方法包括:基于接收的写请求,从多个存储节点中确定第一存储节点;将第一文件标识发送至第一存储节点,以使第一存储节点依据第一文件标识确定第二存储节点;依据接收到的第二存储节点的节点标识,向第二存储节点发送连接请求;接收第二存储节点基于连接请求确定第三存储节点的节点标识;将第一文件标识指示的第一目标文件进行切分,生成第一预设个数的数据块,将数据块的元数据存储至第三存储节点;将第一目标文件的元数据存储至第二存储节点,将元数据分散存储于不同存储节点,由此解决了因管理节点负载过大对分布式文件系统整体性能影响的问题。
Description
技术领域
本发明涉及分布式存储领域,具体而言,涉及一种元数据管理方法及相关装置。
背景技术
集中式存储架构是分布式存储领域常见的存储架构之一,其典型代表为Hadoop分布式文件系统HDFS(Hadoop Distributed File System)。HDFS由数据节点(DataNode)和管理节点(NameNoe)组成。为了保证数据的可靠性,在纠删模式下,文件的数据被切分为分片(block)后保存在不同的DataNode上,文件的元数据信息以副本方式保存在主备NameNode上。访问文件时,通过访问文件的元数据找到待访问的文件所在的DataNode,最终找到待访问的文件。
发明内容
本发明的目的在于提供了一种元数据管理方法及相关装置,其能够将文件的元数据和文件的数据块的元数据分开存储,并各自分散存储于分布式文件系统中的多个存储节点,由此解决了因管理节点负载过大对分布式文件系统整体性能影响的问题。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本发明实施例提供一种元数据管理方法,应用于客户端,客户端与分布式文件系统中的多个存储节点均通信连接,所述方法包括:基于接收的写请求,从多个存储节点中确定第一存储节点,其中,写请求包括第一文件标识;将第一文件标识发送至第一存储节点,以使第一存储节点依据第一文件标识从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端;依据接收到的第二存储节点的节点标识,向第二存储节点发送连接请求;接收第二存储节点基于连接请求从多个存储节点中确定的第一预设个数的第三存储节点的节点标识;将第一文件标识指示的第一目标文件进行切分,生成第一预设个数的数据块,将每一数据块的元数据存储至每一第三存储节点,其中,每一数据块的元数据包括该数据块的块标识及第一文件标识;将第一目标文件的元数据存储至第二存储节点,其中,第一目标文件的元数据包括第三存储节点的节点标识。
第二方面,本发明实施例提供一种元数据管理方法,应用于分布式文件系统中的多个通信连接的存储节点,每一存储节点均与客户端通信连接,所述方法包括:多个存储节点中的第一存储节点接收客户端发送的第一文件标识;第一存储节点依据第一文件标识从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端;第二存储节点接收客户端依据第二存储节点的节点标识发送的连接请求,并基于连接请求从多个存储节点中确定第一预设个数的第三存储节点并将第三存储节点的节点标识发送至客户端;每一第三存储节点存储一个数据块的元数据,第一预设个数的数据块为客户端将第一文件标识指示的第一目标文件进行切分后生成的;其中,每一数据块的元数据包括该数据块的块标识及第一文件标识,第一预设个数的第三存储节点存储的数据块的块标识各不相同;第二存储节点存储第一目标文件的元数据,其中,第一目标文件的元数据包括第三存储节点的节点标识。
第三方面,本发明实施例提供一种元数据管理装置,应用于客户端,客户端与分布式文件系统中的多个存储节点均通信连接,所述装置包括接收模块、确定模块、连接模块和存储模块,其中,接收模块,用于基于接收的写请求,从多个存储节点中确定第一存储节点,其中,写请求包括第一文件标识;确定模块,用于将第一文件标识发送至第一存储节点,以使第一存储节点依据第一文件标识从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端;确定模块还用于接收第二存储节点基于连接请求从多个存储节点中确定的第一预设个数的第三存储节点的节点标识;连接模块,用于依据接收到的第二存储节点的节点标识,向第二存储节点发送连接请求;存储模块,用于将第一文件标识指示的第一目标文件进行切分,生成第一预设个数的数据块,将每一数据块的元数据存储至每一第三存储节点,其中,每一数据块的元数据包括该数据块的块标识及第一文件标识;存储模块,还用于将第一目标文件的元数据存储至第二存储节点,其中,第一目标文件的元数据包括第三存储节点的节点标识。
第四方面,本发明实施例提供一种客户端,客户端包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前述实施方式中任一项所述的应用于客户端的元数据管理方法。
第五方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前述实施方式中任一项所述的元数据管理方法。
相对于现有技术,本发明实施例提供了一种元数据管理方法及相关装置,通过首先从多个存储节点中确定第一存储节点,再由第一存储节点从多个存储节点中确定存储文件的元数据的第二存储节点,由第二存储节点从多个存储节点中确定存储文件的数据块的元数据的第三存储节点,由此将元数据分成文件的元数据和文件的数据块的元数据,并分散存储于分布式文件系统中的不同存储节点,由此解决了因管理节点负载过大对分布式文件系统整体性能影响的问题。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的现有的分布式文件系统的场景图。
图2示出了本发明实施例提供的改进后的分布式文件系统的场景图。
图3示出了本发明实施例提供的一种应用于客户端的元数据管理方法的流程图。
图4示出了本发明实施例提供的另一种应用于客户端的读文件的方法的流程图。
图5示出了本发明实施例提供的一种应用于存储节点的元数据管理方法的流程图。
图6示出了本发明实施例提供的另一种应用于存储节点的元数据管理方法的流程图。
图7示出了本发明实施例提供的客户端与存储节点的交互图。
图8示出了本发明实施例提供的应用于存储节点的新存储节点加入分布式文件系统时的处理方法的流程图。
图9示出了本发明实施例提供的应用于存储节点的存储节点异常时的处理方法的流程图。
图10示出了本发明实施例提供的应用于客户端的元数据管理装置的方框示意图。
图11示出了本发明实施例提供的客户端的结构框图。
图标:10-客户端;11-存储器;12-通信接口;13-处理器;14-总线;20-数据节点;30-管理节点;40-存储节点;100-元数据管理装置;110-接收模块;120-发送模块;130-存储模块;140-读取模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
请参照图1,图1示出了本发明实施例提供的现有的分布式文件系统的场景图。分布式文件系统包括多个数据节点20和管理节点30,其中,管理节点30至少为两个互为备份的主管理节点和备管理节点。多个数据节点20之间可以通过心跳通信连接,客户端10与分布式文件系统中的数据节点20和管理节点30均通信连接,数据节点20用于存储文件切分后生成的数据块,由此,实现文件的分散存储,管理节点30用于存储文件的元数据,文件的元数据表征了存储该文件的数据节点20的信息。客户端10接收到写文件的请求时,首先确定存储该写文件的数据节点20及存储该写文件的元数据的管理节点30,将数据节点20的信息存储于管理节点30,将写文件切成数据块,存储于该数据节点20上。当需要读该文件时,首先找到存储该文件的元数据的管理节点30,从该管理节点30中找到存储该文件的数据节点20,最终找到该文件。
由于文件的元数据集中存储于管理节点上,当访问量非常大时,管理节点的负载也会随之增加,成为整个HDFS的瓶颈,极大地影响了HDFS的整体性能。
为了缓解管理节点的负载,通常采用的方案是增加管理节点的数量,由此分散管理节点的负载,但是由于HDFS本身架构的原因,管理节点只能以冷备的方式避免单点故障,因此,此方案中,管理节点的利用率低,造成管理节点资源的极大浪费。
有鉴于此,本发明实施例提供了一种元数据管理方法及相关装置,无需增加管理节点,即可实现元数据的分散存储,解决了由于管理节点的负载过高而影响分布式文件系统整体性能的问题。
请参考图2,图2示出了本发明实施例提供的改进后的分布式文件系统的场景图,改进后的分布式文件系统包括多个存储节点40,多个存储节点40不再区分数据节点20和管理节点30,各存储节点40在功能上完全一样,不再区分数据节点还是管理节点,客户端10与每个存储节点40均通信连接,多个存储节点40之间可以通过心跳通信连接。当客户端10接收到写文件请求时,首先从多个存储节点40中确定第一存储节点,再由第一存储节点确定存储写文件的元数据的第二存储节点,第二存储节点确定存储写文件切分后生成的数据块的元数据的第三存储节点,同时将数据块及该数据块的元数据存储于第三存储节点,由此实现了写文件的元数据及写文件的数据块的元数据均可分散存储于多个存储节点40上,即使访问压力很大时,对写文件的元数据及写文件的数据块的元数据的访问压力也会分散于多个存储节点,由此可以避免因写文件的元数据集中存储于管理节点而导致的管理节点的负载过高而影响分布式文件系统整体性能的问题。
基于图2,本发明实施例提供一种元数据管理方法,应用于客户端,请参照图3示出了本发明实施例提供的一种应用于客户端的元数据管理方法的流程图,该方法包括以下步骤:
步骤S101,基于接收的写请求,从多个存储节点中确定第一存储节点,其中,写请求包括第一文件标识。
在本实施例中,第一存储节点是分布式文件系统处理写请求的入口,客户端10可以通过任意一个存储节点处理写请求,客户端10可以通过不同的存储节点处理不同的写请求。客户端10从多个存储节点中选择第一存储节点的方式可以是:将多个存储节点中当前待处理访问请求最少的存储节点作为第一存储节点,其中,访问请求包括读请求和写请求,也可以将多个存储节点中当前访问性能最高的存储节点作为第一存储节点,或者预先设定的规则,指定文件的访问请求发送至指定的存储节点,该指定的存储节点即为该指定文件对应的第一存储节点。
在本实施例中,第一文件标识用于唯一表征第一目标文件,第一目标文件为写请求需要写的文件,第一文件标识可以是能够唯一表示第一目标文件的文件名,或者能够唯一第一目标文件的编号等。
步骤S102,将第一文件标识发送至第一存储节点,以使第一存储节点依据第一文件标识按照预设算法从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端。
在本实施例中,客户端10将第一文件标识发送至第一存储节点,第一存储节点可以按照预设算法根据第一文件标识确定第二存储节点,例如,该预设算法可以是哈希算法,或者是取余运算等,第二存储节点用于存储第一目标文件的元数据。
在本实施例中,每一存储节点均有一个节点标识,用于唯一表征该存储节点,节点标识可以是存储节点的编号,或者存储节点的IP地址等。第一存储节点确定第二存储节点后,将第二存储节点的节点标识反馈至客户端10。
步骤S103,依据接收到的第二存储节点的节点标识,向第二存储节点发送连接请求。
在本实施例中,客户端10收到第二存储节点的节点标识后,根据第二存储节点的节点标识向第二存储节点发送连接请求。
步骤S104,接收第二存储节点基于连接请求从多个存储节点中确定的第一预设个数的第三存储节点的节点标识。
在本实施例中,第二存储节点在接收到客户端10发送的连接请求后,基于该连接请求确定第一预设个数的第三存储节点的节点标识,并将第三存储节点的节点标识反馈至客户端10。第一预设个数与分布式文件系统采用的纠删码策略相关,纠删码是一种数据保护方法,它将待存储的数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置,采用的纠删码策略不同,其分割成的片段的数量也不一样,冗余的效果也不一样,例如,纠删码策略为4+2,则将待存储的数据分割成4个数据块,根据4个数据块生成2个校验块,则需要存储的数据块一共为6个,因此,第一预设个数为6。
在本实施例中,确定第三存储节点的方法与步骤S101中确定第一存储节点的方法类似,例如,可以选择多个存储节点中访问负载最小的第一预设个数的存储节点作为第三存储节点,也可以按照预设顺序依次从多个存储节点中选取第三存储节点,具体详细过程此处不再赘述。
步骤S105,对第一文件标识指示的第一目标文件进行切分,生成第一预设个数的数据块,将每一数据块的元数据存储至每一第三存储节点,其中,每一数据块的元数据包括该数据块的块标识及第一文件标识。
在本实施例中,客户端10根据预设纠删码策略对第一目标文件进行切分,并按照纠删码策略对切分后的数据块进行纠删码编码,生成第一预设个数的数据块,第三存储节点用于存储数据块的元数据及对应的数据块,其中,每一数据块的元数据包括、但不限于:该数据块的块标识,可以是该数据块在第一目标文件中的序号或者编号等、该数据块所属的第一目标文件的第一文件标识及数据块的大小等。例如,对于n+m纠删码策略,将待存储的文件切分成n块原始数据块,对n块原始数据块进行纠删码编码,生成m块校验块,将n+m块数据块中每一数据块分别存储于一个存储节点。
步骤S106,将第一目标文件的元数据存储至第二存储节点,其中,第一目标文件的元数据包括第三存储节点的节点标识。
在本实施例中,根据第一目标文件的元数据即可找到存储该第一目标文件的第三存储节点,从而找到该第一目标文件。
需要说明的是,第一目标文件的元数据包括、但不限于:存储第一目标文件的第三存储节点的节点标识、第一目标文件的存储时间、第一目标文件的大小等。
还需要说明的是,步骤S105和步骤S106的执行顺序可以相互交换,步骤S105也可以和步骤S106同时进行。
本发明实施例提供上述方法,通过首先从多个存储节点中确定第一存储节点,再由第一存储节点从多个存储节点中确定存储文件的元数据的第二存储节点,由第二存储节点从多个存储节点中确定存储文件的数据块的元数据的第三存储节点,由此将元数据分成文件的元数据和文件的数据块的元数据,并分散存储于分布式文件系统中的不同存储节点,由此解决了因管理节点负载过大对分布式文件系统整体性能影响的问题。另外,由于将文件的元数据与文件的数据块的元数据分开存储,在分布式文件系统中的存储节点发生变化(例如有新的存储节点加入或者有存储节点出现异常)时,只需要迁移第二存储节点中存储的文件的元数据,不需要迁移数据块及数据块的元数据,极大地降低了迁移负载,减小了迁移对分布式文件系统整体性能的影响。
为了实现分布式文件系统在入口处实现接收的访问请求的负载均衡,本发明实施例还给出了一种客户端10确定第一存储节点的具体实施方式,该方式包括:
首先,获取每一存储节点的访问负载。
在本实施例中,存储节点的访问负载用于表征该存储节点处理访问请求的压力,访问负载可以、但不限于表示为:存储节点的待处理的访问请求的数量,存储节点的处理访问请求的平均处理时间等。例如,待处理的访问请求的数量越多,处理访问请求的压力越大。
其次,将访问负载最低的存储节点作为第一存储节点。
本发明实施例提供上述方法,客户端10从多个存储节点中选取访问负载最低的存储节点作为第一存储节点,可以从分布式文件系统访问入口时就实现接收的访问请求的负载均衡,保证访问请求不会集中地通过同一个存储节点进入分布式文件系统,提高了分布式文件系统处理访问请求的负载均衡。
本发明实施例提供的上述方法可以将第一目标文件的元数据、数据块的元数据及数据块均衡地分散存储于分布式文件系统中的多个存储节点,基于此,本发明实施例还给出了一种应用于客户端的读文件的流程图,可以快速地读出之前写入的文件的数据,请参照图4,图4示出了本发明实施例提供的一种应用于客户端的读文件的方法的流程图,该方法包括以下步骤:
步骤S201,基于接收读请求,从多个存储节点中确定第四存储节点,其中,读请求包括第二文件标识。
在本实施例中,第二文件标识表征欲读取文件的文件标识,与步骤S101中的第一文件标识类似,此处不再赘述。第四存储节点是分布式文件系统处理读请求的入口,确定第四存储节点的方法与步骤S101中确定第一存储节点的方法类似,此处不再赘述。
步骤S202,将第二文件标识发送至第四存储节点,以使第四存储节点依据第二文件标识按照预设算法确定第五存储节点并将第五存储节点的节点标识返回至客户端。
在本实施例中,第五存储节点存储了第二文件标识指示的第二目标文件的元数据。为了能够读取到之前写入分布式文件系统中的文件,此处依据第二文件标识确定第五存储节点的方法与步骤S102中依据第一文件标识确定第二存储节点的方法相同,即二者采用的预设算法是相同的,也就是说在第一文件标识与第二文件标识相同的情况下,步骤S101确定的第二存储节点与步骤S202确定的第五存储节点也是相同的。
步骤S203,依据第五存储节点的节点标识从第五存储节点读取第二文件标识指示的第二目标文件的元数据,其中,第二目标文件的元数据包括存储第二目标文件的第二预设个数的第六存储节点的节点标识。
在本实施例中,第二预设个数与第一预设个数可以是根据同一个纠删码策略确定的,第二预设个数可以是通过纠删码解码得到纠删码编码前的原数据的数据块的个数,例如,纠删码策略为4+2,则将待存储的原始数据分割成4个数据块,根据4个数据块生成2个校验块,即纠删码编码后需要存储的数据块一共为6个,而获取存储的原始数据时,只需要读取6个数据块中的任意4个数据块,对此4个数据块进行纠删码解码后组合,最终可以得到原始数据。
在本实施例中,第六存储节点中存储有第二目标文件的数据块的元数据及对应的数据块本身的数据,例如,第六存储节点包括存储节点1、存储节点2和存储节点3共3个存储节点,第二目标文件经过纠删码编码后生成3个数据块:数据块1、数据块2和数据块3,3个数据块及对应的数据块的元数据分别存储于3个存储节点中,例如,存储节点1存储数据块1及数据块1的元数据、存储节点2存储数据块2及数据块2的元数据,以此类推。
需要说明的是,上述的纠删码策略,也可以用异或校验策略等其他可以实现数据冗余的策略代替。
步骤S204,依据每一第六存储节点的节点标识从该第六存储节点中读取第二目标文件的数据块及数据块的块标识。
步骤S205,依据所有数据块的块标识将所有数据块进行合并,得到第二目标文件。
在本实施例中,按照纠删码的实现原理,对于n+m纠删码策略,当需要读取该文件时,从此n+m个存储节点中任意读取n个数据块,将此n个数据块进行纠删码解码后按照数据块在该文件中的顺序进行组合,即可得到该文件。
本发明实施例提供上述方法,通过读取第二目标文件的元数据可以确定第二目标文件的数据块及数据块的元数据存储的存储节点,通过读取数据块的元数据及数据块,即可得到第二目标文件的数据,由于第二目标文件的数据块及数据块的元数据分散存储于多个存储节点中,因此,在读取第二目标文件时,避免对同一个存储节点的集中访问而导致的对分布式文件系统整体性能的影响。
为了配合客户端10实现第二目标文件的元数据及数据块的元数据的存储,本发明实施例还提供一种应用于存储节点的元数据管理方法,请参照图5,图5示出了本发明实施例提供的一种应用于存储节点的元数据管理方法的流程图,所述方法包括:
步骤S301,多个存储节点中的第一存储节点接收客户端发送的第一文件标识。
步骤S302,第一存储节点依据第一文件标识按照预设算法从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端。
在本实施例中,本步骤中的预设算法与步骤S102中的预设算法相同。
步骤S303,第二存储节点接收客户端依据第二存储节点的节点标识发送的连接请求,并基于连接请求从多个存储节点中确定第一预设个数的第三存储节点并将第三存储节点的节点标识发送至客户端。
步骤S304,每一第三存储节点存储一个数据块的元数据,第一预设个数的数据块为客户端将第一文件标识指示的第一目标文件进行切分后生成的,其中,每一数据块的元数据包括该数据块的块标识及第一文件标识,第一预设个数的第三存储节点存储的数据块的块标识各不相同。
在本发明实施例中,每一第三存储节点除了存储数据块的元数据,还可以存储该数据块本身的数据,以便于找到该数据块的元数据的同时即可找到对应的数据块。当然,也可以将数据块与数据块的元数据分开存储,通过数据块的元数据即可找到对应的数据块,本发明对此不予限定。
步骤S305,第二存储节点存储第一目标文件的元数据,其中,第一目标文件的元数据包括第三存储节点的节点标识。
需要说明的是,分布式文件系统中的每一个存储节点均可以执行上述步骤,在处理针对单个写请求时,不同存储节点执行其中的一个或者几个步骤,共同配合该写请求的处理过程,由此实现第一文件标识指示的第一目标文件的元数据和第一目标文件的数据块的元数据的分散存储。
本发明实施例提供上述方法,在客户端10确定第一存储节点后,第一存储节点确定第二存储节点,第二存储节点确定第三存储节点,通过逐层确定存储第一目标文件的元数据及第一目标文件的数据块的元数据的存储节点,将对写请求的处理分散至多个存储节点完成,一方面,分散存储第一目标文件的元数据及第一目标文件的数据块的元数据实现了分布式文件系统处理写请求的负载均衡,另一方面也提高了处理多个写请求的并发度,加快了多个写请求的处理效率,进而提高了分布式文件系统的整体性能。
在图5的基础上,本发明实施例还提供了另一种应用于存储节点的元数据管理方法,请参照图6,图6示出了本发明实施例提供的另一种应用于存储节点的元数据管理方法的流程图,步骤S302包括以下子步骤:
子步骤S3021,第一存储节点依据第一文件标识按照预设算法确定初始存储节点。
子步骤S3022,第一存储节点将存储节点分组表中以初始存储节点为主存储节点的分组确定为目标分组。
在本发明实施例中,每一存储节点均存储有存储节点分组表,存储节点分组表中包括至少一个将分布式文件系统中的所有存储节点按照预设规则划分的分组,每一分组包括一个主存储节点,主存储节点可以是该分组中存储节点标识最大或者最小的,本发明实施例对此不予限定。例如,分布式文件系统中一共有5个存储节点:存储节点1~5,共划分成4个分组:(1,2,3)、(2,3,4)、(3,4,5)和(4,5,1),将分组中排在第一个存储节点作为主存储节点,分组(1,2,3)的主存储节点为存储节点1,其他分组与之类似,此处不再赘述。
需要说明的是,分组也可以以文件的形式进行保存。每一分组还可以包括一个或者多个备存储节点,主存储节点与多个备存储节点互为备份,以使分组中任一存储节点出现异常时,分组中的其他存储节点可以继续提供服务,增强分布式文件系统的鲁棒性。
子步骤S3023,第一存储节点将目标分组中存储节点的访问负载最小的作为第二存储节点。
在本发明实施例中,第一存储节点获取目标分组中各存储节点的访问负载,将访问负载最小的存储节点作为第二存储节点。
继续参照图6,步骤S303包括以下子步骤:
子步骤S3031,第二存储节点获取分布式文件系统中所有存储节点的存储资源负载。
在本发明实施例中,存储资源负载用于衡量存储节点的存储容量及存储性能,可以包括存储节点中已经使用的存储空间的大小,以使用的存储空间越大,存储资源负载也越大,还可以包括存储节点的CPU或者内存的利用率,例如CPU的利用率越高或者内存的利用率越高,存储资源负载也越大。
子步骤S3032,第二存储节点从分布式文件系统中所有存储节点中依次选出存储资源负载最小的第一预设个数的存储节点,作为第三存储节点。
在本发明实施例中,为了更清楚地描述元数据管理方法的整个处理流程,本发明实施例还提供了元数据管理方法处理过程中客户端与存储节点的交互图,请参照图7,图7示出了本发明实施例提供的客户端与存储节点的交互图。
S1,客户端向第一存储节点发送第一文件标识。
S2,第一存储节点依据第一文件标识确定第二存储节点的节点标识。
S3,第一存储节点将第二存储节点的节点标识返回至客户端。
S4,客户端向第二存储节点发送连接请求。
S5,第二存储节点基于该连接请求确定第三存储节点的节点标识。
S6,第二存储节点将第三存储节点的节点标识返回至客户端。
S7,客户端将第一目标文件进行切分,生成第一预设个数的数据块。
S8,客户端将数据块的元数据发送至第三存储节点。
S9,第三存储节点将数据块的元数据进行存储。
S10,客户端将第一目标文件的元数据发送至第二存储节点。
S11,第二存储节点将第一目标文件的元数据进行存储。
在本发明实施例中,当元数据管理方法中采用存储节点分组表的实现方式时,本发明实施例还提供了两种场景下更新存储节点分组表的方法,请参照图8,图8示出了本发明实施例提供的应用于存储节点的新存储节点加入分布式文件系统时的处理方法的流程图,该方法包括:
步骤S401,当检测到有新的存储节点加入分布式文件系统时,从多个存储节点中确定具有领导者权限的第一领导者节点。
在本实施例中,当有新的存储节点加入分布式文件系统时,新的存储节点会主动上报本存储节点的信息至分布式文件系统中原有的存储节点,原有的存储节点和新的存储节点可以通过竞选的方式确定具有领导者权限的第一领导者节点,竞选标准可以是采用存储节点的节点标识大小,可以将节点标识最大的存储节点作为第一领导者节点,也可以将节点标识最小的存储节点作为第一领导者节点,本发明对具体的竞选标准不予限定。
步骤S402,第一领导者节点依据变化后的存储节点生成新的存储节点分组表并将新的存储节点分组表发送至其余各存储节点,以使其余各存储节点中每一存储节点依据新的存储节点分组表对该存储节点存储的文件的元数据进行迁移。
在本实施例中,变化后的存储节点包括新的存储节点及新的存储节点加入前原有的存储节点。第一领导者节点根据变化后的存储节点生成新的存储节点分组表。例如,原有的存储节点为:1~5,更新前的存储节点分组表包括4个分组:(1,2,3)、(2,3,4)、(3,4,5)和(4,5,1),新的存储节点为6,更新后的存储节点分组表包括6个分组:(1,2,3)、(2,3,4)、(3,4,5)、(4,5,6)、(5,6,1)和(6,1,2)。
在本实施例中,根据采用的分组算法的不同,对于任一存储节点,该存储节点对应的分组在新的存储节点分组表与更新前的存储节点分组表可以一样,此时,该存储节点存储的文件的元数据无需迁移,该存储节点对应的分组在新的存储节点分组表与更新前的存储节点分组表也可以不一样,此时,按照新的存储节点分组表中的分组对该存储节点中的文件的元数据进行迁移。例如,按照一种分组算法,对于存储节点1,更新前的分组和新的分组均为(1,2,3),则存储节点1存储的文件的元数据无需迁移。对于存储节点4,更新前的分组为(4,5,1),更新后的分组为(4,5,6),则需要将(4,5,1)中的存储节点1中的元数据迁移至存储节点6中,其他存储节点与之类似,此处不再一一赘述。再例如,按照取余的hash算法进行分组,首先将待存储文件的文件名转换成数字,然后对该数字进行取余的hash,将分布式文件系统中存储节点的个数作为取余的基数,更新前的存储节点的个数为5,则将文件名对应的数字进行取余运算:108%5=3,所以此待存储文件由分组(3,4,5)保存,更新后的存储节点的个数为6,则108%6=0,所以此文件由(6,1,2)这组来保存,因此,该待存储文件的元数据从分组(3,4,5)迁移至(6,1,2)。
需要说明的是,hash算法包括、但不限于取余、整除等,本发明实施例对此不予限定。
步骤S403,第一领导者节点依据新的存储节点分组表对本地存储的文件的元数据进行迁移。
本发明实施例提供上述方法,在新的存储节点加入分布式文件系统中时,通过第一领导者节点对存储节点分组表进行统一更新,再将更新后的存储节点分组表同步至除第一领导者节点之外的其他存储节点,使得分布式文件系统中的所有存储节点均可以根据更新后的存储节点分组表进行本存储节点的文件的元数据的更新,由此,及时地使文件的元数据均衡地分布于所有存储节点。
在本发明实施例中,除了有新的存储节点加入分布式文件系统,分布式文件系统中的存储节点也有出现异常的场景,针对该场景,本发明实施例还提供了一种该场景下更新存储节点分组表的方法,请参照图9,图9示出了本发明实施例提供的应用于存储节点的存储节点异常时的处理方法的流程图,该方法包括:
步骤S501,当检测到存储节点发生异常时,从剩余的存储节点中确定具有领导者权限的第二领导者节点。
在本实施例中,剩余的存储节点为分布式文件系统中除发生异常的存储节点之外的其余的存储节点。确定第二领导者节点的方法与确定第一领导者节点的方法类似,此处不再赘述。
存储节点发生异常可以是存储节点意外断电,或者存储节点网络断掉,或者存储节点出现软件或者硬件故障,导致存储节点无法对外提供正常服务,本发明实施例对于具体异常情况不予限定。
步骤S502,第二领导者节点依据剩余的存储节点生成新的存储节点分组表并将新的存储节点分组表发送至除第二领导者节点之外的剩余的存储节点,以使除第二领导者节点之外的剩余的存储节点中每一存储节点依据新的存储节点分组表对该存储节点存储的文件的元数据进行迁移。
步骤S503,第二领导者节点依据新的存储节点分组表对本地存储的文件的元数据进行迁移。
在本实施例中,步骤S502与步骤S402类似,步骤S503与步骤S403类似,此处不再赘述。
本发明实施例提供上述方法,在分布式文件系统中的存储节点发生异常时,通过第二领导者节点对存储节点分组表进行统一更新,再将更新后的存储节点分组表同步至剩余的除第二领导者节点之外的存储节点,使得分布式文件系统中的剩余的存储节点均可以根据更新后的存储节点分组表进行本存储节点的文件的元数据的更新,由此,及时地使文件的元数据均衡地分布于剩余的存储节点。
在上述描述的实施例中,为了提高第一目标文件的元数据的访问性能,并且保证存储节点重新上电后,第一目标文件的元数据可以及时得以恢复,第二存储节点可以将第一目标文件的元数据存储于本地的内存,第三存储节点可以将第一目标文件的块数据的元数据存储于硬盘。当任一存储节点重新上电后,内存中的第一目标文件的元数据会丢失,由于每一第三存储节点的本地存储有第一目标文件的数据块的元数据,每一数据块的元数据中包括了第一目标文件的文件标识,每一第三存储节点可以依据第一目标文件的文件标识按照预设算法得到存储第一目标文件的元数据的第二存储节点,并将对应的数据块的块标识上报至该第二存储节点,由此,可以将第一目标文件的元数据恢复至第二存储节点。
需要说明的是,图2中的分布式文件系统中存储节点均可以执行上述步骤S301~S305及其S302的子步骤S3021~S3023、S305的子步骤S3031~S3032、以及步骤S401~S403和步骤S501~S503,只不过对于单个读请求或者写请求而言,涉及到的存储节点只执行其中的部分步骤。例如,当存储节点1为第一存储节点时,可以执行步骤S302及其子步骤S3021~S3023,当存储节点1为第二存储节点时,可以执行步骤S303和S305,当存储节点1为第三存储节点时,可以执行步骤S304,当存储节点1为第一领导者节点时,可以执行步骤S401~S403,当存储节点1为第二领导者节点时,可以执行步骤S501~S503。
为了执行上述实施例及各个可能的实施方式中的相应步骤,下面给出一种元数据管理装置的实现方式。请参阅图10,图10为本公开实施例提供的一种元数据管理装置100的功能模块图。需要说明的是,本实施例所提供的元数据管理装置100,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及指出,可参考上述实施例中的相应内容。元数据管理装置100包括接收模块110、发送模块120、存储模块130及读取模块140。
接收模块110,用于基于接收的写请求,从多个存储节点中确定第一存储节点,其中,写请求包括第一文件标识。
作为一种具体实施方式,接收模块110具体用于:获取每一存储节点的访问负载;将访问负载最低的存储节点作为第一存储节点。
作为另一种实施方式,接收模块110还用于:基于接收读请求,从多个存储节点中确定第四存储节点,其中,读请求包括第二文件标识。
作为另一种实施方式,接收模块110还用于:接收第二存储节点基于连接请求从多个存储节点中确定的第一预设个数的第三存储节点的节点标识。
发送模块120,用于将第一文件标识发送至第一存储节点,以使第一存储节点依据第一文件标识按照预设算法从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端。
作为一种具体实施方式,发送模块120还用于:依据接收到的第二存储节点的节点标识,向第二存储节点发送连接请求。
作为一种具体实施方式,发送模块120还用于:将第二文件标识发送至第四存储节点,以使第四存储节点依据第二文件标识按照预设算法确定第五存储节点并将第五存储节点的节点标识返回至客户端。
存储模块130,用于将第一文件标识指示的第一目标文件进行切分,生成第一预设个数的数据块,将每一数据块的元数据存储至每一第三存储节点,其中,每一数据块的元数据包括该数据块的块标识及第一文件标识。
存储模块130,用于将第一目标文件的元数据存储至第二存储节点,其中,第一目标文件的元数据包括第三存储节点的节点标识。
读取模块140,用于:依据第五存储节点的节点标识从第五存储节点读取第二文件标识指示的第二目标文件的元数据,其中,第二目标文件的元数据包括存储第二目标文件的第二预设个数的第六存储节点的节点标识;依据每一第六存储节点的节点标识从该第六存储节点中读取第二目标文件的数据块及数据块的块标识。依据所有数据块的块标识将所有数据块进行合并,得到第二目标文件。
本发明实施例还提供一种客户端,用于实现上述实施例揭示的应用于客户端的元数据管理方法,请参照图11,图11示出了本发明实施例提供的客户端10的结构框图。
客户端10还包括存储器11、通信接口12、处理器13和总线14。存储器11、通信接口12,处理器13通过总线14连接。
存储器11用于存储程序,例如上述的元数据管理装置100,元数据管理装置100包括至少一个可以软件或固件(firmware)的形式存储于存储器11中的软件功能模块,处理器13在接收到执行指令后,执行所述程序以实现上述实施例揭示的元数据管理方法。
存储器11可能包括高速随机存取存储器(RAM:Random Access Memory),也可能还包括非易失存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器11可以是内置于处理器13中的存储装置,也可以是独立于处理器13的存储装置。
通过至少一个通信接口12(可以是有线或者无线)实现客户端10与其他外部设备或者存储节点的通信连接。
总线14可以是ISA总线、PCI总线或EISA总线等。图11中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器13可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器13中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器13可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前述实施方式中任一项所述的元数据管理方法。
综上所述,本发明实施例提供一种元数据管理方法及装置,应用于客户端的元数据管理方法包括:基于接收的写请求,从多个存储节点中确定第一存储节点,其中,写请求包括第一文件标识;将第一文件标识发送至第一存储节点,以使第一存储节点依据第一文件标识按照预设算法从多个存储节点中确定第二存储节点并将第二存储节点的节点标识反馈至客户端;依据接收到的第二存储节点的节点标识,向第二存储节点发送连接请求;接收第二存储节点基于连接请求从多个存储节点中确定的第一预设个数的第三存储节点的节点标识;对第一文件标识指示的第一目标文件进行切分,生成第一预设个数的数据块,将每一数据块的元数据存储至每一第三存储节点,其中,每一数据块的元数据包括该数据块的块标识及第一文件标识;将第一目标文件的元数据存储至第二存储节点,其中,第一目标文件的元数据包括第三存储节点的节点标识。相对于现有技术,本发明实施例具有以下有益效果:通过首先从多个存储节点中确定第一存储节点,再由第一存储节点从多个存储节点中确定存储文件的元数据的第二存储节点,由第二存储节点从多个存储节点中确定存储文件的数据块的元数据的第三存储节点,由此将元数据分成文件的元数据和文件的数据块的元数据,并分散存储于分布式文件系统中的不同存储节点,由此解决了因管理节点负载过大对分布式文件系统整体性能影响的问题。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种元数据管理方法,其特征在于,应用于客户端,所述客户端与分布式文件系统中的多个存储节点均通信连接,所述方法包括:
基于接收的写请求,从所述多个存储节点中确定第一存储节点,其中,所述写请求包括第一文件标识;
将所述第一文件标识发送至第一存储节点,以使所述第一存储节点依据所述第一文件标识按照预设算法从所述多个存储节点中确定第二存储节点并将所述第二存储节点的节点标识反馈至所述客户端;
依据接收到的所述第二存储节点的节点标识,向所述第二存储节点发送连接请求;
接收所述第二存储节点基于所述连接请求从所述多个存储节点中确定的第一预设个数的第三存储节点的节点标识;
对所述第一文件标识指示的第一目标文件进行切分,生成所述第一预设个数的数据块,将每一所述数据块及该数据块的元数据存储至每一所述第三存储节点,其中,所述每一所述数据块的元数据包括该数据块的块标识及第一文件标识,所述第一预设个数的第三存储节点存储的所述数据块的块标识各不相同;
将所述第一目标文件的元数据存储至所述第二存储节点,其中,所述第一目标文件的元数据包括所述第三存储节点的节点标识。
2.如权利要求1所述的元数据管理方法,其特征在于,所述基于接收的写请求,从所述多个存储节点中确定第一存储节点的步骤,包括:
获取每一所述存储节点的访问负载;
将访问负载最低的所述存储节点作为第一存储节点。
3.如权利要求1所述的元数据管理方法,其特征在于,所述方法还包括:
基于接收读请求,从所述多个存储节点中确定第四存储节点,其中,所述读请求包括第二文件标识;
将所述第二文件标识发送至所述第四存储节点,以使所述第四存储节点依据所述第二文件标识按照所述预设算法确定第五存储节点并将所述第五存储节点的节点标识返回至所述客户端;
依据所述第五存储节点的节点标识从所述第五存储节点读取所述第二文件标识指示的第二目标文件的元数据,其中,所述第二目标文件的元数据包括存储所述第二目标文件的第二预设个数的第六存储节点的节点标识;
依据每一所述第六存储节点的节点标识从该第六存储节点中读取所述第二目标文件的数据块及所述数据块的块标识;
依据所有数据块的块标识将所有数据块进行合并,得到所述第二目标文件。
4.一种元数据管理方法,其特征在于,应用于分布式文件系统中的多个通信连接的存储节点,每一所述存储节点均与客户端通信连接,所述方法包括:
多个所述存储节点中的第一存储节点接收所述客户端发送的第一文件标识;
所述第一存储节点依据所述第一文件标识按照预设算法从多个所述存储节点中确定第二存储节点并将所述第二存储节点的节点标识反馈至所述客户端;
所述第二存储节点接收所述客户端依据所述第二存储节点的节点标识发送的连接请求,并基于所述连接请求从多个所述存储节点中确定第一预设个数的第三存储节点并将所述第三存储节点的节点标识发送至所述客户端;
每一所述第三存储节点存储一个数据块及该数据块的元数据,所述第一预设个数的数据块为所述客户端将所述第一文件标识指示的第一目标文件切分后生成的;其中,所述每一所述数据块的元数据包括该数据块的块标识及所述第一文件标识,所述第一预设个数的第三存储节点存储的所述数据块的块标识各不相同;
所述第二存储节点存储所述第一目标文件的元数据,其中,所述第一目标文件的元数据包括所述第三存储节点的节点标识。
5.如权利要求4所述的元数据管理方法,其特征在于,每一所述存储节点均存储有存储节点分组表,所述存储节点分组表将所述分布式文件系统中的所有存储节点按照预设规则进行分组,所述存储节点分组表中的每一分组均包括一个主存储节点,所述第一存储节点依据所述第一文件标识从多个所述存储节点中确定第二存储节点的步骤包括:
所述第一存储节点依据所述第一文件标识按照预设算法确定初始存储节点;
所述第一存储节点将所述存储节点分组表中以所述初始存储节点为主存储节点的分组确定为目标分组;
所述第一存储节点将所述目标分组中存储节点的访问负载最小的作为第二存储节点。
6.如权利要求4所述的元数据管理方法,其特征在于,所述从多个所述存储节点中确定第一预设个数的第三存储节点的步骤,包括:
所述第二存储节点获取所述分布式文件系统中所有存储节点的存储资源负载;
所述第二存储节点从所述分布式文件系统中所有存储节点中依次选出存储资源负载最小的第一预设个数的存储节点,作为所述第三存储节点。
7.如权利要求4所述的元数据管理方法,其特征在于,所述方法还包括:
当检测到有新的存储节点加入所述分布式文件系统时,从多个所述存储节点中确定具有领导者权限的第一领导者节点;
所述第一领导者节点依据变化后的存储节点生成新的存储节点分组表并将所述新的存储节点分组表发送至其余各存储节点,以使所述其余各存储节点中每一存储节点依据所述新的存储节点分组表对该存储节点存储的文件的元数据进行迁移;
所述第一领导者节点依据所述新的存储节点分组表对本地存储的文件的元数据进行迁移。
8.如权利要求4所述的元数据管理方法,其特征在于,所述方法还包括:
当检测到存储节点发生异常时,从剩余的存储节点中确定具有领导者权限的第二领导者节点;
所述第二领导者节点依据剩余的存储节点生成新的存储节点分组表并将所述新的存储节点分组表发送至除所述第二领导者节点之外的剩余的存储节点,以使除所述第二领导者节点之外的剩余的存储节点中每一存储节点依据所述新的存储节点分组表对该存储节点存储的文件的元数据进行迁移;
所述第二领导者节点依据所述新的存储节点分组表对本地存储的文件的元数据进行迁移。
9.如权利要求4所述的元数据管理方法,其特征在于,所述第二存储节点将所述第一目标文件的元数据存储于内存,所述第三存储节点将所述第一目标文件的块数据的元数据存储于硬盘。
10.一种元数据管理装置,其特征在于,应用于客户端,所述客户端与分布式文件系统中的多个存储节点均通信连接,所述装置包括:
接收模块,用于基于接收的写请求,从所述多个存储节点中确定第一存储节点,其中,所述写请求包括第一文件标识;
发送模块,用于将所述第一文件标识发送至第一存储节点,以使所述第一存储节点依据所述第一文件标识从所述多个存储节点中确定第二存储节点并将所述第二存储节点的节点标识反馈至所述客户端;
发送模块,还用于依据接收到的所述第二存储节点的节点标识,向所述第二存储节点发送连接请求;
接收模块,还用于接收所述第二存储节点基于所述连接请求从所述多个存储节点中确定的第一预设个数的第三存储节点的节点标识;
存储模块,用于将所述第一文件标识指示的第一目标文件进行切分,生成所述第一预设个数的数据块,将每一所述数据块及该数据块的元数据存储至每一所述第三存储节点,其中,所述每一所述数据块的元数据包括该数据块的块标识及第一文件标识,所述第一预设个数的第三存储节点存储的所述数据块的块标识各不相同;
存储模块,还用于将所述第一目标文件的元数据存储至所述第二存储节点,其中,所述第一目标文件的元数据包括所述第三存储节点的节点标识。
11.一种客户端,其特征在于,所述客户端包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-3中任一项所述的元数据管理方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-3中任一项所述的元数据管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911083084.9A CN110825698B (zh) | 2019-11-07 | 2019-11-07 | 元数据管理方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911083084.9A CN110825698B (zh) | 2019-11-07 | 2019-11-07 | 元数据管理方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110825698A CN110825698A (zh) | 2020-02-21 |
CN110825698B true CN110825698B (zh) | 2021-02-09 |
Family
ID=69553256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911083084.9A Active CN110825698B (zh) | 2019-11-07 | 2019-11-07 | 元数据管理方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110825698B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111638995A (zh) * | 2020-05-08 | 2020-09-08 | 杭州海康威视系统技术有限公司 | 元数据备份方法、装置及设备、存储介质 |
EP3992979A1 (en) | 2020-10-29 | 2022-05-04 | Wuhan United Imaging Healthcare Co., Ltd. | Systems and methods for file archiving |
CN112530551A (zh) * | 2020-12-10 | 2021-03-19 | 武汉联影医疗科技有限公司 | 图像的处理系统及方法 |
CN112968922A (zh) * | 2021-01-19 | 2021-06-15 | 河北蜂之巢互联网技术有限公司 | 一种流数据存储的方法及流数据存储系统 |
CN113127420B (zh) * | 2021-03-30 | 2023-03-14 | 山东英信计算机技术有限公司 | 一种元数据请求处理方法、装置、设备、介质 |
CN115118761A (zh) * | 2022-07-15 | 2022-09-27 | 济南浪潮数据技术有限公司 | 一种数据存储方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291876A (zh) * | 2017-06-19 | 2017-10-24 | 华中科技大学 | 一种分布式数据管理方法 |
CN107436733A (zh) * | 2017-06-29 | 2017-12-05 | 华为技术有限公司 | 分片管理方法和分片管理装置 |
CN108509275A (zh) * | 2018-03-29 | 2018-09-07 | 新华三技术有限公司 | 一种目录迁移方法和元数据负载均衡方法 |
CN109388351A (zh) * | 2018-12-18 | 2019-02-26 | 平安科技(深圳)有限公司 | 一种分布式数据存储的方法及相关装置 |
CN110413694A (zh) * | 2019-08-01 | 2019-11-05 | 重庆紫光华山智安科技有限公司 | 元数据管理方法及相关装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10127237B2 (en) * | 2015-12-18 | 2018-11-13 | International Business Machines Corporation | Assignment of data within file systems |
US10356158B2 (en) * | 2016-05-16 | 2019-07-16 | Carbonite, Inc. | Systems and methods for aggregation of cloud storage |
CN109376124A (zh) * | 2018-08-22 | 2019-02-22 | 香港中文大学(深圳) | 一种元数据存储方法及计算机可读存储介质 |
CN109840247B (zh) * | 2018-12-18 | 2020-12-18 | 深圳先进技术研究院 | 文件系统及数据布局方法 |
CN110321225B (zh) * | 2019-07-08 | 2021-04-30 | 腾讯科技(深圳)有限公司 | 负载均衡方法、元数据服务器及计算机可读存储介质 |
CN110389940B (zh) * | 2019-07-19 | 2022-02-18 | 苏州浪潮智能科技有限公司 | 一种数据均衡方法、装置和计算机可读存储介质 |
-
2019
- 2019-11-07 CN CN201911083084.9A patent/CN110825698B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291876A (zh) * | 2017-06-19 | 2017-10-24 | 华中科技大学 | 一种分布式数据管理方法 |
CN107436733A (zh) * | 2017-06-29 | 2017-12-05 | 华为技术有限公司 | 分片管理方法和分片管理装置 |
CN108509275A (zh) * | 2018-03-29 | 2018-09-07 | 新华三技术有限公司 | 一种目录迁移方法和元数据负载均衡方法 |
CN109388351A (zh) * | 2018-12-18 | 2019-02-26 | 平安科技(深圳)有限公司 | 一种分布式数据存储的方法及相关装置 |
CN110413694A (zh) * | 2019-08-01 | 2019-11-05 | 重庆紫光华山智安科技有限公司 | 元数据管理方法及相关装置 |
Non-Patent Citations (3)
Title |
---|
Research on Metadata Management Scheme of Distributed File System;Lin Huo,等;《2015 International Conference on Computer Science and Applications (CSA)》;20170116;第37-41页 * |
分布式存储异构资源下的数据布局方法研究;周炜;《中国博士学位论文全文数据库信息科技辑》;20190515;第1-86页 * |
大规模分布式文件系统元数据管理综述;王洋,等;《集成技术》;20160331;第5卷(第2期);第57-69页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110825698A (zh) | 2020-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110825698B (zh) | 元数据管理方法及相关装置 | |
US10735545B2 (en) | Routing vault access requests in a dispersed storage network | |
US10289319B2 (en) | Varying rebuild task priorities | |
US10592335B2 (en) | Using data object copies to improve the performance of a distributed storage network | |
US10951358B2 (en) | Using slice routers for improved storage placement determination | |
US20190102089A1 (en) | Requester-associated storage entity data | |
JP2020510256A (ja) | 散在ストレージ・ネットワークにおけるデータ・コンテンツの部分更新の方法 | |
US10681138B2 (en) | Storing and retrieving multi-format content in a distributed storage network | |
CN113824755A (zh) | 区块链数据处理的方法、系统及相关装置 | |
US10936452B2 (en) | Dispersed storage network failover units used to improve local reliability | |
US20180129576A1 (en) | Handling degraded conditions using a redirect module | |
US10318382B2 (en) | Determining missing encoded data slices | |
JP2018524705A (ja) | データ転送中にデータアクセス要求を処理するための方法及びシステム | |
US10498822B2 (en) | Adaptive scanning rates | |
US10067998B2 (en) | Distributed sync list | |
US20180032269A1 (en) | Elastic storage in a dispersed storage network | |
US11221916B2 (en) | Prioritized data reconstruction in a dispersed storage network | |
US11132340B2 (en) | Storage unit selection of memory devices used for distributed storage network memory | |
US20190079862A1 (en) | Logically expanding existing memories in a dispersed storage network | |
US20190220415A1 (en) | Associating a processing thread and memory section to a memory device | |
US20190004730A1 (en) | Using index structure to guide load balancing in a distributed storage system | |
US20190065315A1 (en) | Identifying encoded data slices for rebuilding | |
US10073638B2 (en) | Automatic namespace ordering determination | |
CN111352916A (zh) | 基于nas存储系统的数据存储方法、系统及存储介质 | |
US10127112B2 (en) | Assigning prioritized rebuild resources optimally |
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 |