CN111444157A - 分布式文件系统及数据访问方法 - Google Patents

分布式文件系统及数据访问方法 Download PDF

Info

Publication number
CN111444157A
CN111444157A CN201910040747.2A CN201910040747A CN111444157A CN 111444157 A CN111444157 A CN 111444157A CN 201910040747 A CN201910040747 A CN 201910040747A CN 111444157 A CN111444157 A CN 111444157A
Authority
CN
China
Prior art keywords
file
storage disk
file data
node
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.)
Granted
Application number
CN201910040747.2A
Other languages
English (en)
Other versions
CN111444157B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910040747.2A priority Critical patent/CN111444157B/zh
Publication of CN111444157A publication Critical patent/CN111444157A/zh
Application granted granted Critical
Publication of CN111444157B publication Critical patent/CN111444157B/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/18File system types
    • G06F16/182Distributed file systems
    • 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

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框架就是目前被广泛应用的一种。
Hadoop框架是一个由Apache基金会所开发的分布式系统基础架构,通过Hadoop,用户可以在不了解分布式底层细节的情况下,开发分布式程序。Hadoop框架主要包括HDFS(Hadoop Distributed File System)和MapReduce。其中,HDFS是一个分布式文件系统,为海量的数据提供存储,而MapReduce则为海量的数据提供计算。随着用户将数据和计算越来越多地迁移到云端,基于ECS(Elastic Compute Service)构建的HDFS文件系统的规模也越来越大,这包含了直接提供HDFS服务或者像HBase,Spark这样基于HDFS的产品。ECS上部署HDFS在磁盘上选择的是云盘,但相比于物理机部署HDFS,云盘方式的HDFS在有效存储容量上会有几倍的下降,这是因为:HDFS的一次写入需要映射到多个云盘副本,假如它的副本数是N(默认3),则磁盘有效容量只有1/N。例如,HDFS本身默认一份数据写3个副本,它选择3个节点写入数据,即选择3块云盘,每块云盘写入一份数据,但是,云盘本身同样是写3个副本,因此总共写入了9份数据。这种方式下,用户仅能获得1/3的实际存储容量,而多个副本造成的数据冗余也并不是用户所希望的。
因此,如何最大程度地提高上述方式中云盘容量的利用率,成为亟待解决的问题。
发明内容
有鉴于此,本发明实施例提供一种分布式文件系统及数据访问方法,以解决上述问题。
根据本发明实施例的第一方面,提供了一种分布式文件系统,包括:文件数据节点及其挂载的第一存储磁盘、元数据节点及其挂载的第二存储磁盘、以及配置中心;其中,所述文件数据节点和第一存储磁盘均包括多个,每个文件数据节点挂载有至少一个第一存储磁盘,每个第一存储磁盘挂载于至少两个文件数据节点,第一存储磁盘中存储有所述分布式文件系统的文件的文件数据;所述配置中心,用于存储第一存储磁盘与文件数据节点的挂载关系;所述元数据节点,用于接收客户端的文件操作请求,将从挂载的第二存储磁盘中获取的所述文件操作请求所请求的文件的元数据,或者,将从所述配置中心获取的与所述文件操作请求相匹配的文件数据节点的信息发送给所述客户端,以使所述客户端通过所述文件数据节点的信息所指示的文件数据节点访问所述第一存储磁盘,并通过所述第一存储磁盘进行所述文件操作请求所请求的文件操作。
根据本发明实施例的第二方面,提供了一种数据访问方法,所述方法应用于分布式文件系统,所述分布式文件系统至少包括:文件数据节点、元数据节点和配置中心;所述方法包括:客户端向所述元数据节点发送文件操作请求,并接收所述元数据节点返回的、与所述文件操作请求相匹配的文件数据节点的信息,其中,所述文件数据节点的信息中包含至少两个文件数据节点的信息,所述至少两个文件数据节点均为挂载所述文件操作请求所请求操作的目标存储磁盘的节点,所述文件数据节点的信息由所述元数据节点从所述配置中心获取;所述客户端从所述文件数据节点的信息指示的至少两个文件数据节点中选择一个文件数据节点;所述客户端通过选择的所述文件数据节点访问所述文件操作请求所请求操作的目标存储磁盘,并通过所述目标存储磁盘执行所述文件操作请求所请求的操作。
根据本发明实施例,在构建分布式文件系统时,使得每一个存储有文件数据的第一存储磁盘与至少两个文件数据节点具有挂载关系,并且,在分布式文件系统的配置中心中存储该挂载关系。据此,在对任意一个第一存储磁盘进行文件操作(如读取或写入)时,若挂载该第一存储磁盘的文件数据节点故障或异常,仍可以通过与该第一存储磁盘具有挂载关系的其它文件数据节点进行文件操作。由此,不管是在ECS上部署的HDFS,还是其它类似分布式文件系统,均可采用类似设置,只需写入一份文件数据,即可实现有效访问,无需再在不同存储磁盘上部署相同的文件来避免因文件数据节点失效而导致的无法访问文件数据,既防止了数据冗余,也提高了存储磁盘容量的利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例一的一种分布式文件系统的结构框图;
图2为根据本发明实施例二的一种分布式文件系统的结构示意图;
图3为图2所示实施例中的一种通过文件数据节点进行文件操作的示意图;
图4为根据本发明实施例三的一种数据访问方法的步骤流程图;
图5为根据本发明实施例四的一种数据访问方法的步骤流程图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
下面结合本发明实施例附图进一步说明本发明实施例具体实现。
实施例一
参照图1,示出了根据本发明实施例一的一种分布式文件系统的结构框图。
本实施例的分布式文件系统包括:文件数据节点部分102、元数据节点部分104和配置中心106。其中,文件数据节点部分102包括文件数据节点1022和第一存储磁盘1024;元数据节点部分包括元数据节点1042和第二存储磁盘1044。
其中:
文件数据节点1022和第一存储磁盘1024均包括多个,每个文件数据节点1022挂载有至少一个第一存储磁盘1024,每个第一存储磁盘1024挂载于至少两个文件数据节点1022,所述第一存储磁盘1024中存储有分布式文件系统的文件的文件数据。
本发明实施例中,若无特殊说明,“多个”意指两个及两个以上。此外,本发明实施例中,存储磁盘可以是任意适当的可用于分布式文件系统数据存储的磁盘如云盘,云盘是一种用于云服务的存储工具,它通过网络或互联网提供信息的存储,读取,下载等服务,具有安全稳定、海量存储的特点。其中,云是网络或互联网的一种比喻说法。云服务则指通过网络或互联网提供的服务,以使服务需求方可以按需、易扩展的方式获得所需服务。
在具体应用中,云盘的实现包括但不限于:利用磁性原理访问的HDD(Hard DiskDrive,硬盘驱动器)、可电性擦除的SSD(Solid State Disk,固态硬盘)以及其他存储介质。
本发明实施例中,第一存储磁盘1024与至少两个文件数据节点1022具有挂载关系,在需要对第一存储磁盘1024进行文件操作时,即使其中的一个文件数据节点1022出现异常,也可以通过其它的文件数据节点1022来访问第一存储磁盘1024,对其进行操作。因此,向第一存储磁盘1024中写入一份文件数据即可,无需为了避免文件数据节点1022不能访问而在不同的第一存储磁盘1024上均准备文件副本。一般情况下,具体的文件数据可以存储于不同的第一存储磁盘1024中,通过文件数据节点1022对第一存储磁盘1024进行文件操作,如文件读写操作等。
配置中心106用于存储第一存储磁盘1024与文件数据节点1022的挂载关系。如上所述,每一个第一存储磁盘1024挂载于至少两个文件数据节点1022上,因此,针对每一个第一存储磁盘1024,其对应的挂载关系中都包含有至少两个文件数据节点1022的信息。
元数据节点1042,用于接收客户端的文件操作请求,将从挂载的第二存储磁盘1044中获取的所述文件操作请求所请求的文件的元数据,或者,将从所述配置中心106获取的与所述文件操作请求相匹配的文件数据节点的信息发送给所述客户端,以使所述客户端通过所述文件数据节点的信息所指示的文件数据节点1022访问相应的第一存储磁盘1024(即所述文件操作请求所请求操作的目标存储磁盘),并通过所述第一存储磁盘1024进行所述文件操作请求所请求的文件操作。一般情况下,文件的元数据可存储于第二存储磁盘1044中,通过元数据节点1042实现对第二存储磁盘1044的文件操作,如文件读写操作等。
其中,所述客户端可以设置于所述分布式文件系统中,也可以独立于所述分布式文件系统设置。所述文件操作请求包括但不限于请求读取第一存储磁盘1024中的文件数据的文件读取请求,和,请求向第一存储磁盘1024中写入文件数据的文件写入请求。对于文件读取请求,元数据节点1042会向客户端返回所请求的文件的元数据,并将从配置中心106获取的文件数据节点的信息也返回给客户端;对于文件写入请求,元数据节点1042会将从配置中心106获取的文件数据节点的信息返回给客户端。
客户端在接收到文件数据节点的信息后,即可通过该信息所指示的文件数据节点访问相应的第一存储磁盘,对第一存储磁盘进行文件操作。如,读取第一存储磁盘中的文件数据,或者,向第一存储磁盘写入文件数据,等。
根据本实施例,在构建分布式文件系统时,使得每一个存储有文件数据的第一存储磁盘与至少两个文件数据节点具有挂载关系,并且,在分布式文件系统的配置中心中存储该挂载关系。据此,在对任意一个第一存储磁盘进行文件操作(如读取或写入)时,若挂载该第一存储磁盘的文件数据节点故障或异常,仍可以通过与该第一存储磁盘具有挂载关系的其它文件数据节点进行文件操作。由此,不管是在ECS上部署的HDFS,还是其它类似分布式文件系统,均可采用类似设置,只需写入一份文件数据,即可实现有效访问,无需再在不同存储磁盘上部署相同的文件来避免因文件数据节点失效而导致的无法访问文件数据,既防止了数据冗余,也提高了存储磁盘容量的利用率。
实施例二
本实施例基于前述实施例一中的分布式文件系统,并对该分布式文件系统进行了进一步改进。并且,本实施例中,以存储磁盘采用云盘的形式为本发明实施例的分布式文件系统进行说明。但本领域技术人员应当明了的是,在实际应用中,如实施例一中所述,其它形式的存储磁盘也同样适用于本实施例的方案。
本实施例中的分布式文件系统包括如实施例一中所述的文件数据节点部分102、元数据节点部分104和配置中心106,其中,文件数据节点部分102包括多个文件数据节点1022和多个第一云盘1024。除此之外,本实施例中的分布式文件系统还包括客户端108。该客户端108可以为独立的设备,也可以为内嵌于分布式文件系统中的设备如文件数据节点中的应用或功能模块。
此外,可选地,本实施例中的元数据节点部分104也可以包括至少两个元数据节点1042和至少一个第二云盘1044,每个元数据节点1042挂载一个或一个以上的第二云盘1044,每个第二云盘1044挂载于两个或两个以上的元数据节点1042;所述第二云盘1044中存储有所述分布式文件系统的文件的元数据。采用每个第二云盘1044挂载多个元数据节点1042的方式,使得对文件元数据的访问也更加可靠,且数据冗余少,云盘容量利用率高。
但不限于此,元数据节点部分104也可以采用常规设置,如,在分布式文件系统中设置一个第二云盘1044,将该第二云盘1044挂载于一个元数据节点1042上。也即,对于文件数据节点部分102采用本发明实施例提供的设置方案,而元数据节点部分104采用常规设置方案,这种方式仍可在一定程度上减轻数据冗余,提升部分云盘的容量利用率。
一种简单示意的本实施例的分布式文件系统如图2所示。
图2中,左侧虚线框示出了元数据节点部分104,其包括2个元数据节点1042,即MetaNode N1和MetaNode N2,还包括1个第二云盘1044,即Disk1,Disk1挂载于MetaNode N1和MetaNode N2上。本领域技术人员应当明了的是,图2中的元数据节点部分104仅为简单示例说明,在实际应用中,本领域技术人员可以根据实际需要,设置更多的元数据节点1042和更多的第二云盘1044,设置时,满足每个第二云盘1044挂载于至少两个元数据节点1042上即可。
图2中,右侧虚线框示出了文件数据节点部分102,其包括3个文件数据节点1022,即FileNode N3、FileNode N4和FileNode N5,还包括5个第一云盘1024,即Disk2、Disk3、Disk4、Disk5和Disk6。其中,Disk2挂载于FileNode N3和FileNode N5上,Disk3挂载于FileNode N3和FileNode N4上,Disk4挂载于FileNode N4和FileNode N5上,Disk5挂载于FileNode N3和FileNode N4上,Disk6挂载于FileNode N4和FileNode N5上。本领域技术人员应当明了的是,图2中的文件数据节点部分102仅为简单示例说明,在实际应用中,本领域技术人员可以根据实际需要,设置更多的文件数据节点1022和更多的第一云盘1024,设置时,满足每个第一云盘1024挂载于至少两个文件数据节点1022上即可。
图2中所示的分布式文件系统还设置了客户端108,即图2中的“Client”,该Client与FileNode N3相连,但本领域技术人员应当明了,在实际应用中,可以设置多个客户端108,每个文件数据节点1022可以连接一个或多个客户端108,或者,可以设置一个或多个客户端应用。在具体访问时,若Client要访问的第一云盘为该Client所在的文件数据节点挂载的云盘,则可以直接通过该文件数据节点进行访问;而若Client要访问的第一云盘为其它文件数据节点挂载的云盘,则该Client需要先连接需要访问的云盘所在的文件数据节点,通过该文件数据节点访问所要访问的云盘。
图2中还示出了配置中心106,即zookeeper,本实施例中,zookeeper不仅存储了文件数据节点1022与第一云盘1024的挂载关系,还存储有元数据节点1042与第二云盘1024的挂载关系。当然,在实际应用中,文件数据节点1022与第一云盘1024的挂载关系,以及,元数据节点1042与第二云盘1024的挂载关系也可以分开存储,或者存储在分布式文件系统中的不同设备中。由图2中所示可见,zookeeper中存储的挂载关系包括:Disk1与节点N1和N2的挂载关系,Disk2与节点N3和N5的挂载关系,Disk3与节点N3和N4的挂载关系,Disk4与节点N4和N5的挂载关系,Disk5与节点N3和N4的挂载关系,Disk6与节点N4和N5的挂载关系。
基于上述结构,当所述文件操作请求为文件读取请求时,元数据节点1042在接收到客户端108的文件读取请求后,从挂载的第二云盘1044中获取文件读取请求所请求的文件的元数据,其中,所述元数据中包括有所请求的文件所在的第一云盘1024的信息;将所述元数据发送给所述配置中心106,以使所述配置中心106根据所述第一云盘的信息和所述挂载关系,确定挂载所述第一云盘1024的文件数据节点1022的信息;将获取的所述元数据和确定的所述文件数据节点1022的信息发送给客户端108。
例如,图2中的Client发送了文件读取请求给MetaNode N1,MetaNode N1收到该文件读取请求后,从中获取所请求的文件例如文件A的信息,并从其挂载的Disk1中获取文件A的元数据,文件A的元数据中包含有文件A所在的第一云盘如Disk2的信息,MetaNode N1还会将文件A的元数据发送给zookeeper,zookeeper查找其存储的挂载关系,从中获取到Disk2与节点N3和N5的挂载关系后,将N3和N5的信息返回给MetaNode N1,再由MetaNode N1将文件A的元数据及N3和N5的信息发送给Client。可选地,MetaNode N1可以仅将文件A所在的Disk2的信息发送给zookeeper,以减少数据传输量,也提高zookeeper的数据处理和查找效率。
可选地,文件读取请求所请求的文件的元数据包括所请求的文件的物理地址,其中,所述物理地址包括:所请求的文件所在的第一云盘的信息、所请求的文件在所述第一云盘中的存储路径的信息、所请求的文件的唯一标识信息。
例如,文件“/root/source/people.txt”的物理地址为“<Disk2,subdir01,192eSf13-b378-4a82-9377-2bed6b162dfc>”,其中,“Disk2”为文件“/root/source/people.txt”所在的第一云盘的信息,“subdir01”为文件“/root/source/people.txt”在“Disk2”中的存储路径的信息,“192eSf13-b378-4a82-9377-2bed6b162dfc”为文件“/root/source/people.txt”对应的唯一标识信息。使用唯一标识信息来作为逻辑文件路径到物理文件的映射,在重命名文件时,可以只修改文件的元数据,而不需要移动文件数据本身。
而对于客户端108,其在接收到元数据节点1042发送的文件读取请求所请求文件的元数据和所述文件数据节点1022的信息后,从所述文件数据节点1022的信息指示的至少两个文件数据节点1022中选择一个文件数据节点1022,通过选择的文件数据节点1022访问所述元数据中的第一云盘的信息所指示的第一云盘1024,并从该第一云盘1024中读取所请求的文件的文件数据。
例如,图2中的Client接收到MetaNode N1发送的文件A的元数据及N3和N5的信息,然后从N3和N5中选择一个,例如N3,接着可以通过N3访问Disk2,读取Disk2中存储的文件A的文件数据。
此外,若客户端108通过选择的文件数据节点访问所述第一云盘失败,则从所述文件数据节点的信息指示的其它文件数据节点中重新选择一个文件数据节点,并通过重新选择的文件数据节点访问所述第一云盘,以确保实现所述文件读取请求所请求的文件读取操作。
例如,若Client通过N3访问Disk2失败,则Client将尝试通过N5访问Disk2,若成功,则读取Disk2中存储的文件A的文件数据。该过程具体如图3所示。
而当所述文件操作请求为文件写入请求时,则元数据节点1042在接收到客户端108的文件写入请求后,获取文件写入请求中携带的待写入文件的第一云盘1024的信息;将待写入文件的第一云盘1024的信息发送给配置中心106,以使配置中心106根据待写入文件的第一云盘1024的信息和所述挂载关系,确定挂载待写入文件的第一云盘1024的文件数据节点1022的信息;将确定的所述文件数据节点1022的信息发送给客户端108。
客户端108在接收到元数据节点1042发送的文件数据节点1022的信息后,从文件数据节点1022的信息指示的至少两个文件数据节点1022中选择一个文件数据节点1022,通过选择的文件数据节点1022访问所述文件写入请求中的第一云盘1024的信息所指示的第一云盘1024,并向该第一云盘1024写入所述文件写入请求所请求写入的文件数据。
例如,图2中的Client向MetaNode N1发送文件写入请求,请求向Disk6写入文件B的文件数据;MetaNode N1在接收到该文件写入请求后,将该请求或者将该请求中携带的待写入目标云盘即Disk6的信息发送给zookeeper,zookeeper查找其存储的挂载关系,从中获取到Disk6与节点N4和N5的挂载关系后,将N4和N5的信息返回给MetaNode N1,再由MetaNode N1将N4和N5的信息发送给Client。Client接收到MetaNode N1发送的N4和N5的信息后,从N4和N5中选择一个,例如N4,接着通过N4访问Disk6,将文件B的文件数据写入到Disk6中。
与文件读取请求的处理类似,若客户端108通过选择的文件数据节点访问所述第一云盘失败,则从所述文件数据节点的信息指示的其它文件数据节点中重新选择一个文件数据节点,并通过重新选择的文件数据节点访问所述第一云盘,以确保实现所述文件写入请求所请求的文件写入操作。
例如,若Client通过N4访问Disk6失败,则Client将尝试通过N5访问Disk6,若成功,则向Disk6中写入文件B的文件数据。
可选地,还可以在本实施例的分布式文件系统中设置管控中心(图中未示出),该管控中心用于接收针对该分布式文件系统的管控操作,其中,所述管控操作包括以下至少之一:用于指示增加文件数据节点的操作、用于指示增加第一存储磁盘的操作、用于指示对文件数据节点进行第一存储磁盘挂载均衡的操作;管控中心对文件数据节点1022或者第一存储磁盘1024进行所述管控操作所指示的操作,并将操作结果发送给元数据节点1042和配置中心106,以使元数据节点1042对第二存储磁盘1044中存储的元数据进行更新,或者,使配置中心106对存储的挂载关系进行更新。
以下,以一个实例对本发明实施例提供的分布式文件系统进行说明,该实例基于HDFS和ECS,通过共享云盘实现文件的共享访问。为便于说明,本实例中,将该分布式文件系统称为SFS(Shared Disk File System,云原生分布式文件系统)。在SFS中,一个云盘可以被多个ECS节点共享数据、同时读写,其可以在保证高可用的前提下只写一份文件数据到共享云盘,以最大程度提高云盘的容量利用率。
当前,共享云盘支持挂载到多个ECS,但是挂载的规模存在限制,这是因为:首先,云产品本身存在限制,比如阿里云共享云盘最多能挂载到16个节点,且ECS最多挂载15块云盘,这导致在大数据场景下,云盘不可能挂载到所有的节点;其次,多个节点同时访问一个文件时,需要分布式锁保证一致性,挂载规模越大性能越差。为此,本实例提供了一种更简洁的挂载方案,使得在有限挂载规模下(默认一个云盘挂载2个ECS),共享云盘对所有的ECS节点都可见,且集群总规模可以水平扩展到上千个节点和云盘。
具体地,在本实例的SFS中,数据分为元数据和文件数据两个部分,元数据由MetaNode节点管理,该角色全局唯一(存在备节点),文件数据由FileNode节点管理。在创建目录或者文件时,MetaNode在元数据云盘上创建对应的目录或者文件,然后通过RPC(Remote Procedure Call,远程过程调用)调用FileNode创建实际的文件。元数据上创建的文件,其内容是这个文件的属性,包括:物理地址、文件长度、权限、状态等,属性的更新保证是原子操作。其中,物理地址描述了一个文件真实存放的地址,可以包括<云盘ID,目录ID,UUID>3个部分,UUID是创建文件时生成的唯一ID,使用UUID来作为逻辑文件路径到物理文件的映射,这样的好处是在重命名文件时,只需要修改元数据,不需要移动文件数据本身。元数据映射的例子如:文件“/root/source/people.txt”映射到UUID,即:“192e5f13-b378-4a82-9377-1bed6b162dfc”,存储在云盘Disk2。
本实例的SFS是基于共享云盘构建,共享云盘可以挂载到多个ECS节点,这些ECS节点可以同时访问云盘上的数据。SFS提供一个云盘配置中心,记录着节点与云盘之间的挂载关系,SFS会自动平衡节点和云盘的挂载关系。本实例中,云盘配置中心的数据存储在zookeeper,可以被MetaNode访问。由此,SFS实现了在写一份云盘数据下保证读写服务的高可用。但不限于zookeeper,其它任意适当的可存储节点和云盘的挂载关系的方式均可适用,如ConfigServer、Redis等。
基于此,当客户端读取文件时,首先通过MetaNode获取存储这个文件的云盘,并通过云盘配置中心查到该云盘绑定的节点列表,如果客户端正好设置在这个节点中,则此种情况下,客户端也在这个列表中,则转化成本地访问,如果客户端不在这个列表,则从列表中随机选择一个节点,客户端通过RPC协议与该节点通信来访问文件。
例如,Disk2挂载到ECS1、ECS2两个节点,客户端请求读取文件F1时,客户端首先访问MetaNode节点,获取F1的物理地址<Disk2,subdir08,550e8400-e29b-41d4-a716-446655440000>,同时还会得知Disk2挂载到ECS1和ECS2。客户端首先选择ECS1进行读取文件数据,如果在读取过程中ECS1节点的数据服务失败(如FileNode进程退出、网络不通或者ECS宕机),那么客户端会重试ECS2节点,然后继续读取文件数据。
对于文件数据的写入,SFS与HDFS一样支持顺序写,且同一文件仅允许一个客户端写入。SFS保证云盘写入的高可用,当一个节点宕机时,由于云盘和多个节点挂载,其它的活着的节点依然可以写入这块云盘。但如果一个文件在写入过程中异常中断,不管是客户端原因还是服务端原因,这个文件都不接受新的写入,进入只读状态。上层应用需要根据自身情况进行异常处理,例如,重新写一个文件等。
此外,SFS支持集群规模的水平扩展,可以支持上千个节点和PB级别的数据。同时,SFS支持ECS和共享云盘的独立扩展。为此,SFS提供3个基本的管控操作:AddECS,AddDisk,Balance。其中,AddECS用于指示增加一个ECS,即增加一个FileNode节点,由于新增的节点不挂载云盘,所以该节点不提供数据服务,需要等到Balance指令将一些云盘挂载到新加入的节点;AddDisk用于指示增加一块云盘,假如设定一块云盘挂载2个节点,则从当前的节点列表中选择2个挂载盘数最少的节点与新加入的云盘挂载绑定;Balance用于指示均衡ECS和云盘的挂载关系,该指令会被周期性地调用,每次选择一个挂载最多云盘的节点A和一个挂载最少云盘的节点B,将A上的一块云盘卸载后挂载到B上。
由上可见,本实例的SFS通过利用共享云盘可以被多个节点同时访问的特性,能够在保持高可用的前提下只写入一份文件数据到云盘,相比传统的HDFS提高数倍的存储容量。另外,将共享云盘的挂载关系存储在zookeeper上,每一块共享云盘进行有限度的挂载,客户端通过MetaNode提供路由信息可以访问到任意一块云盘,这种结构下计算和存储可以独立水平扩展,支持PB级别容量。
通过图2所示的分布式文件系统和上述实例中的SFS,提供了一种基于共享存储磁盘可被多个节点同时访问的高可用、低成本的分布式文件系统,其通过存储磁盘交叉挂载,挂载信息中心化等设计,除实现了分布式文件系统只需写入一份文件数据,即可实现有效访问,既防止了数据冗余,也提高了存储磁盘容量的利用率之外,还支持共享存储磁盘的水平扩展,支持计算和存储的独立扩展。
实施例三
参照图4,示出了根据本发明实施例三的一种数据访问方法的步骤流程图。
本实施例的数据访问方法基于前述实施例一或实施例二所述的分布式文件系统,该分布式文件系统包括如前所述的文件数据节点、元数据节点和配置中心。
基于该分布式文件系统,本实施例的数据访问方法包括以下步骤:
步骤S302:客户端向元数据节点发送文件操作请求,并接收元数据节点返回的、与文件操作请求相匹配的文件数据节点的信息。
其中,文件数据节点的信息中包含至少两个文件数据节点的信息,所述至少两个文件数据节点均为挂载所述文件操作请求所请求操作的目标存储磁盘的节点,所述文件数据节点的信息由元数据节点从配置中心获取。
本实施例中,客户端可以设置于分布式文件系统之中,作为分布式文件系统的一个组成部分,也可以设置于分布式文件系统之外,通过相应节点访问分布式文件系统。该客户端可以是独立的设备,也可以是设置于设备中的应用或功能模块等。
元数据节点挂载有相应的存储磁盘,即前述第二存储磁盘,第二存储磁盘中存储有分布式文件系统中的文件的元数据,而分布式文件系统中的节点和存储磁盘的挂载关系则存储在配置中心中。元数据节点在接收到客户端发送的文件操作请求后,将根据该文件操作请求从配置中心获取相应的文件数据节点的信息,并返回给客户端。
步骤S304:客户端从文件数据节点的信息指示的至少两个文件数据节点中选择一个文件数据节点。
本实施例中的分布式文件系统中,文件数据节点挂载有相应的存储磁盘,即前述第一存储磁盘,每个第一存储磁盘挂载于至少两个文件数据节点上。本实施例中的目标存储磁盘为第一存储磁盘中的一个存储磁盘,该目标存储磁盘同样挂载于至少两个文件数据节点,元数据节点返回的文件数据节点的信息中也包含有该至少两个文件数据节点的信息,以保证对目标存储磁盘进行文件操作的高可用性。因此,客户端在接收到文件数据节点的信息后,从其携带的至少两个文件数据节点的信息对应的文件数据节点中选择一个文件数据节点,通过该文件数据节点对目标存储磁盘进行访问。其中,选择文件数据节点的方式可以由本领域技术人员根据实际需求采用任意适当的方式实现,如随机选择、按节点的序号顺序选择等,本发明实施例对此不作限制。
步骤S306:客户端通过选择的文件数据节点访问文件操作请求所请求操作的目标存储磁盘,并通过目标存储磁盘执行文件操作请求所请求的操作。
所述文件操作请求可以为实现任意适当的文件操作的请求,包括但不限于文件读取请求和文件写入请求。
在确定了文件数据节点后,客户端即可通过该文件数据节点访问目标存储磁盘并进行相应的文件操作,如,读取目标存储磁盘中的文件数据或者向目标存储磁盘写入数据,等。
通过本实施例,在构建分布式文件系统时,使得每一个存储有文件数据的第一存储磁盘与至少两个文件数据节点具有挂载关系,并且,在分布式文件系统的配置中心中存储该挂载关系。据此,在对任意一个第一存储磁盘进行文件操作(如读取或写入)时,若挂载该第一存储磁盘的文件数据节点故障或异常,仍可以通过与该第一存储磁盘具有挂载关系的其它文件数据节点进行文件操作。由此,不管是在ECS上部署的HDFS,还是其它类似分布式文件系统,均可采用类似设置,只需写入一份文件数据,即可实现有效访问,无需再在不同存储磁盘上部署相同的文件来避免因文件数据节点失效而导致的无法访问文件数据,既防止了数据冗余,也提高了存储磁盘容量的利用率。
本实施例为基于前述实施例一或二中所述分布式文件系统的数据访问方法,对于其中的某些技术手段描述较为简要,相关部分可参照前述实施例一或二中的描述即可。
实施例四
参照图5,示出了根据本发明实施例四的一种数据访问方法的步骤流程图。
与实施例三类似,本实施例的数据访问方法仍基于前述实施例一或实施例二所述的分布式文件系统,该分布式文件系统包括如前所述的文件数据节点、元数据节点和配置中心。
基于该分布式文件系统,本实施例的数据访问方法包括以下步骤:
步骤S402:客户端向元数据节点发送文件操作请求,并接收元数据节点返回的、与文件操作请求相匹配的文件数据节点的信息。
其中,所述文件数据节点的信息中包含至少两个文件数据节点的信息,所述至少两个文件数据节点均为挂载所述文件操作请求所请求操作的目标存储磁盘的节点,所述文件数据节点的信息由元数据节点从配置中心获取。
本实施例中,文件数据节点挂载有第一存储磁盘,文件数据节点和第一存储磁盘均包括多个,每个文件数据节点挂载有至少一个第一存储磁盘,每个第一存储磁盘挂载于至少两个文件数据节点,第一存储磁盘中存储有分布式文件系统的文件的文件数据;所述配置中心用于存储第一存储磁盘与文件数据节点的挂载关系。
可选地,本实施例中的元数据节点挂载有第二存储磁盘,所述元数据节点包括至少两个,所述第二存储磁盘包括至少一个,每个元数据节点挂载一个或一个以上的第二存储磁盘,每个第二存储磁盘挂载于两个或两个以上的元数据节点;所述第二存储磁盘中存储有分布式文件系统的文件的元数据。
通过上述设置方式,大大降低了分布式文件系统的数据冗余,提高了存储磁盘的容量利用率。
本实施例中,所述文件操作请求可以为文件读取请求或者为文件写入请求,当为文件读取请求时,该请求中携带有待读取的文件的信息;当为文件写入请求时,该请求中携带有待写入的目标存储磁盘的信息。
客户端向元数据节点发送文件操作请求后,若文件操作请求为文件读取请求,则元数据节点根据该请求中的文件的信息,从元数据节点挂载的第二存储磁盘中读取该文件的信息指示的文件的元数据,该元数据中包含文件所在的第一存储磁盘(目标存储磁盘)的信息;元数据节点可以将该元数据或者元数据中的第一存储磁盘的信息发送给配置中心,由配置中心根据其存储的挂载关系确定挂载该第一存储磁盘的至少两个文件数据节点后,将相应信息返回给元数据节点;元数据节点在接收到该至少两个文件数据节点的信息后,与文件的元数据一起发送给客户端。也即,当文件操作请求为文件读取请求时,客户端除接收元数据节点返回的文件数据节点的信息外,还接收元数据节点返回的、所述文件操作请求所请求的文件的元数据。
若文件操作请求为文件写入请求,则元数据节点从中获取待写入文件的第一存储磁盘(目标存储磁盘)的信息;元数据节点将该第一存储磁盘的信息发送给配置中心,由配置中心根据其存储的挂载关系确定挂载该第一存储磁盘的至少两个文件数据节点后,将相应的信息返回给元数据节点;元数据节点在接收到该至少两个文件数据节点的信息后,将其发送给客户端。
步骤S404:客户端从文件数据节点的信息指示的至少两个文件数据节点中选择一个文件数据节点。
客户端在接收到文件数据节点的信息后,从其携带的至少两个文件数据节点的信息对应的文件数据节点中选择一个文件数据节点,通过该文件数据节点对目标存储磁盘进行访问。
步骤S406:客户端通过选择的文件数据节点访问文件操作请求所请求操作的目标存储磁盘,并判断访问所述目标存储磁盘是否成功,若成功,则执行步骤S408;若失败,则执行步骤S410。
在实际应用中,有可能因为文件数据节点异常而导致无法对目标存储磁盘进行访问,为了确保文件操作可被正常执行,避免文件数据节点异常导致的文件操作失败,本实施例中,客户端会对是否能够正常访问目标存储磁盘进行判断,并根据判断结果进行不同的操作。
步骤S408:客户端通过目标存储磁盘执行文件操作请求所请求的操作。
其中,当所述文件操作请求为文件读取请求时,客户端通过选择的文件数据节点访问文件操作请求所请求操作的目标存储磁盘,并根据元数据节点返回的所述元数据对目标存储磁盘中所述元数据所对应的文件进行文件读取操作。
当所述文件操作请求为文件写入请求时,客户端通过选择的文件数据节点访问文件操作请求所请求操作的目标存储磁盘,并向目标存储磁盘写入所述文件写入请求所请求写入的文件数据。
步骤S410:客户端从文件数据节点的信息指示的其它文件数据节点中重新选择一个文件数据节点,并通过重新选择的文件数据节点访问目标存储磁盘,通过所述目标存储磁盘执行所述文件操作请求所请求的操作。
文件数据节点的信息指示有至少两个文件数据节点,若客户端初始选择的文件数据节点出现异常,如,文件数据节点进程退出、网络不通或者宕机等,则客户端会从该至少两个文件数据节点的剩余节点中再重新选择一个文件数据节点,进而通过该重新选择的文件数据节点进行目标存储磁盘的访问和操作。由此,只要挂载该目标存储磁盘的节点中有一个节点正常,即可实现文件操作请求所请求的文件操作。
通过本实施例,在构建分布式文件系统时,使得每一个存储有文件数据的第一存储磁盘与至少两个文件数据节点具有挂载关系,并且,在分布式文件系统的配置中心中存储该挂载关系。据此,在对任意一个第一存储磁盘进行文件操作(如读取或写入)时,若挂载该第一存储磁盘的文件数据节点故障或异常,仍可以通过与该第一存储磁盘具有挂载关系的其它文件数据节点进行文件操作。由此,不管是在ECS上部署的HDFS,还是其它类似分布式文件系统,均可采用类似设置,只需写入一份文件数据,即可实现有效访问,无需再在不同存储磁盘上部署相同的文件来避免因文件数据节点失效而导致的无法访问文件数据,既防止了数据冗余,也提高了存储磁盘容量的利用率。
本实施例为基于前述实施例一或二中所述分布式文件系统的数据访问方法,对于其中的某些技术手段描述较为简要,相关部分可参照前述实施例一或二中的描述即可。
需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的数据访问方法。此外,当通用计算机访问用于实现在此示出的数据访问方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的数据访问方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。

Claims (15)

1.一种分布式文件系统,包括:文件数据节点及其挂载的第一存储磁盘、元数据节点及其挂载的第二存储磁盘、以及配置中心;
其中,
所述文件数据节点和所述第一存储磁盘均包括多个,每个文件数据节点挂载有至少一个第一存储磁盘,每个第一存储磁盘挂载于至少两个文件数据节点,第一存储磁盘中存储有所述分布式文件系统的文件的文件数据;
所述配置中心,用于存储第一存储磁盘与文件数据节点的挂载关系;
所述元数据节点,用于接收客户端的文件操作请求,将从挂载的第二存储磁盘中获取的所述文件操作请求所请求的文件的元数据,或者,将从所述配置中心获取的与所述文件操作请求相匹配的文件数据节点的信息发送给所述客户端,以使所述客户端通过所述文件数据节点的信息所指示的文件数据节点访问所述第一存储磁盘,并通过所述第一存储磁盘进行所述文件操作请求所请求的文件操作。
2.根据权利要求1所述的系统,其中,
当所述文件操作请求为文件读取请求时,所述元数据节点在接收到客户端的所述文件读取请求后,从挂载的第二存储磁盘中获取所述文件读取请求所请求的文件的元数据,其中,所述元数据中包括有所请求的文件所在的第一存储磁盘的信息;将所述元数据发送给所述配置中心,以使所述配置中心根据所述第一存储磁盘的信息和所述挂载关系,确定挂载所述第一存储磁盘的文件数据节点的信息;将获取的所述元数据和确定的所述文件数据节点的信息发送给所述客户端。
3.根据权利要求2所述的系统,其中,
所述客户端在接收到所述元数据节点发送的所述元数据和所述文件数据节点的信息后,从所述文件数据节点的信息指示的至少两个文件数据节点中选择一个文件数据节点,通过选择的所述文件数据节点访问所述元数据中的第一存储磁盘的信息所指示的第一存储磁盘,并从所述第一存储磁盘中读取所请求的文件的文件数据。
4.根据权利要求2所述的系统,其中,
所述所请求的文件的元数据包括所请求的文件的物理地址,其中,所述物理地址包括:所请求的文件所在的第一存储磁盘的信息、所请求的文件在所述第一存储磁盘中的存储路径的信息、所请求的文件的唯一标识信息。
5.根据权利要求1所述的系统,其中,
当所述文件操作请求为文件写入请求时,所述元数据节点在接收到客户端的所述文件写入请求后,获取所述文件写入请求中携带的待写入文件的第一存储磁盘的信息;将所述待写入文件的第一存储磁盘的信息发送给所述配置中心,以使所述配置中心根据所述待写入文件的第一存储磁盘的信息和所述挂载关系,确定挂载所述待写入文件的第一存储磁盘的文件数据节点的信息;将确定的所述文件数据节点的信息发送给所述客户端。
6.根据权利要求5所述的系统,其中,
所述客户端在接收到所述元数据节点发送的所述文件数据节点的信息后,从所述文件数据节点的信息指示的至少两个文件数据节点中选择一个文件数据节点,通过选择的所述文件数据节点访问所述文件写入请求中的第一存储磁盘的信息所指示的第一存储磁盘,并向所述第一存储磁盘写入所述文件写入请求所请求写入的文件数据。
7.根据权利要求3或6所述的系统,其中,
所述客户端若通过选择的所述文件数据节点访问所述第一存储磁盘失败,则从所述文件数据节点的信息指示的其它文件数据节点中重新选择一个文件数据节点,并通过重新选择的所述文件数据节点访问所述第一存储磁盘。
8.根据权利要求1-6任一项所述的系统,其中,
所述元数据节点包括至少两个,所述第二存储磁盘包括至少一个,每个元数据节点挂载一个或一个以上的第二存储磁盘,每个第二存储磁盘挂载于两个或两个以上的元数据节点;所述第二存储磁盘中存储有所述分布式文件系统的文件的元数据。
9.根据权利要求1-6任一项所述的系统,其中,所述系统还包括管控中心;
所述管控中心用于接收针对所述分布式文件系统的管控操作,其中,所述管控操作包括以下至少之一:用于指示增加文件数据节点的操作、用于指示增加第一存储磁盘的操作、用于指示对文件数据节点进行第一存储磁盘挂载均衡的操作;
所述管控中心对所述文件数据节点或者所述第一存储磁盘进行所述管控操作所指示的操作,并将操作结果发送给所述元数据节点和所述配置中心,以使所述元数据节点对所述第二存储磁盘中存储的元数据进行更新,或者,使所述配置中心对存储的挂载关系进行更新。
10.一种数据访问方法,所述方法应用于分布式文件系统,所述分布式文件系统至少包括:文件数据节点、元数据节点和配置中心;
所述方法包括:
客户端向所述元数据节点发送文件操作请求,并接收所述元数据节点返回的、与所述文件操作请求相匹配的文件数据节点的信息,其中,所述文件数据节点的信息中包含至少两个文件数据节点的信息,所述至少两个文件数据节点均为挂载所述文件操作请求所请求操作的目标存储磁盘的节点,所述文件数据节点的信息由所述元数据节点从所述配置中心获取;
所述客户端从所述文件数据节点的信息指示的至少两个文件数据节点中选择一个文件数据节点;
所述客户端通过选择的所述文件数据节点访问所述文件操作请求所请求操作的目标存储磁盘,并通过所述目标存储磁盘执行所述文件操作请求所请求的操作。
11.根据权利要求10所述的方法,其中,当所述文件操作请求为文件读取请求时,
所述客户端还接收所述元数据节点返回的、所述文件操作请求所请求的文件的元数据;
所述客户端在通过所述目标存储磁盘执行所述文件读取请求所请求的读取操作时,根据所述元数据对所述目标存储磁盘中所述元数据所对应的文件进行文件读取操作。
12.根据权利要求10所述的方法,其中,当所述文件操作请求为文件写入请求时,
所述客户端在通过所述目标存储磁盘执行所述文件写入请求所请求的写入操作时,向所述目标存储磁盘写入所述文件写入请求所请求写入的文件数据。
13.根据权利要求10-12任一项所述的方法,其中,所述客户端通过选择的所述文件数据节点访问所述文件操作请求所请求操作的目标存储磁盘,并通过所述目标存储磁盘执行所述文件操作请求所请求的操作,包括:
所述客户端通过选择的所述文件数据节点访问所述文件操作请求所请求操作的目标存储磁盘,并判断访问所述目标存储磁盘是否成功;
若成功,则执行通过所述目标存储磁盘执行所述文件操作请求所请求的操作的步骤;
若失败,则所述客户端从所述文件数据节点的信息指示的其它文件数据节点中重新选择一个文件数据节点,并通过重新选择的所述文件数据节点访问所述目标存储磁盘,通过所述目标存储磁盘执行所述文件操作请求所请求的操作。
14.根据权利要求10-12任一项所述的方法,其中,所述文件数据节点挂载有第一存储磁盘,所述文件数据节点和所述第一存储磁盘均包括多个,每个文件数据节点挂载有至少一个第一存储磁盘,每个第一存储磁盘挂载于至少两个文件数据节点,第一存储磁盘中存储有所述分布式文件系统的文件的文件数据;所述配置中心,用于存储第一存储磁盘与文件数据节点的挂载关系。
15.根据权利要求14所述的方法,其中,所述元数据节点挂载有第二存储磁盘,所述元数据节点包括至少两个,所述第二存储磁盘包括至少一个,每个元数据节点挂载一个或一个以上的第二存储磁盘,每个第二存储磁盘挂载于两个或两个以上的元数据节点;所述第二存储磁盘中存储有所述分布式文件系统的文件的元数据。
CN201910040747.2A 2019-01-16 2019-01-16 分布式文件系统及数据访问方法 Active CN111444157B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910040747.2A CN111444157B (zh) 2019-01-16 2019-01-16 分布式文件系统及数据访问方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910040747.2A CN111444157B (zh) 2019-01-16 2019-01-16 分布式文件系统及数据访问方法

Publications (2)

Publication Number Publication Date
CN111444157A true CN111444157A (zh) 2020-07-24
CN111444157B CN111444157B (zh) 2023-06-20

Family

ID=71653852

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910040747.2A Active CN111444157B (zh) 2019-01-16 2019-01-16 分布式文件系统及数据访问方法

Country Status (1)

Country Link
CN (1) CN111444157B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113282564A (zh) * 2021-07-24 2021-08-20 阿里云计算有限公司 数据存储方法、系统、节点和存储介质
CN114281267A (zh) * 2021-12-30 2022-04-05 西北工业大学 分布式存储系统间的数据迁移方法和装置
CN114615240A (zh) * 2022-03-02 2022-06-10 华南理工大学 一种群发应答式数控机床文件传输和云存储系统
CN115964353A (zh) * 2023-03-10 2023-04-14 阿里巴巴(中国)有限公司 一种分布式文件系统及其访问计量方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7406473B1 (en) * 2002-01-30 2008-07-29 Red Hat, Inc. Distributed file system using disk servers, lock servers and file servers
CN103942112A (zh) * 2013-01-22 2014-07-23 深圳市腾讯计算机系统有限公司 磁盘容错方法、装置及系统
CN104391654A (zh) * 2014-11-06 2015-03-04 浪潮(北京)电子信息产业有限公司 一种共享磁盘管理方法及系统
CN105677703A (zh) * 2015-12-25 2016-06-15 曙光云计算技术有限公司 Nas文件系统及其访问方法和装置
CN106815298A (zh) * 2016-12-09 2017-06-09 中电科华云信息技术有限公司 基于块存储的分布式共享文件系统
CN107046575A (zh) * 2017-04-18 2017-08-15 南京卓盛云信息科技有限公司 一种云存储系统及其高密度存储方法
CN107203639A (zh) * 2017-06-09 2017-09-26 联泰集群(北京)科技有限责任公司 基于高性能计算技术的并行文件系统
WO2017206754A1 (zh) * 2016-05-30 2017-12-07 中兴通讯股份有限公司 分布式文件系统的存储方法和存储装置
CN107547653A (zh) * 2017-09-11 2018-01-05 华北水利水电大学 一种分布式文件存储系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7406473B1 (en) * 2002-01-30 2008-07-29 Red Hat, Inc. Distributed file system using disk servers, lock servers and file servers
CN103942112A (zh) * 2013-01-22 2014-07-23 深圳市腾讯计算机系统有限公司 磁盘容错方法、装置及系统
CN104391654A (zh) * 2014-11-06 2015-03-04 浪潮(北京)电子信息产业有限公司 一种共享磁盘管理方法及系统
CN105677703A (zh) * 2015-12-25 2016-06-15 曙光云计算技术有限公司 Nas文件系统及其访问方法和装置
WO2017206754A1 (zh) * 2016-05-30 2017-12-07 中兴通讯股份有限公司 分布式文件系统的存储方法和存储装置
CN106815298A (zh) * 2016-12-09 2017-06-09 中电科华云信息技术有限公司 基于块存储的分布式共享文件系统
CN107046575A (zh) * 2017-04-18 2017-08-15 南京卓盛云信息科技有限公司 一种云存储系统及其高密度存储方法
CN107203639A (zh) * 2017-06-09 2017-09-26 联泰集群(北京)科技有限责任公司 基于高性能计算技术的并行文件系统
CN107547653A (zh) * 2017-09-11 2018-01-05 华北水利水电大学 一种分布式文件存储系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谭志远 等: "业务云平台容灾策略探讨" *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113282564A (zh) * 2021-07-24 2021-08-20 阿里云计算有限公司 数据存储方法、系统、节点和存储介质
CN114281267A (zh) * 2021-12-30 2022-04-05 西北工业大学 分布式存储系统间的数据迁移方法和装置
CN114281267B (zh) * 2021-12-30 2024-04-26 西北工业大学 分布式存储系统间的数据迁移方法和装置
CN114615240A (zh) * 2022-03-02 2022-06-10 华南理工大学 一种群发应答式数控机床文件传输和云存储系统
CN114615240B (zh) * 2022-03-02 2023-03-24 华南理工大学 一种群发应答式数控机床文件传输和云存储系统
CN115964353A (zh) * 2023-03-10 2023-04-14 阿里巴巴(中国)有限公司 一种分布式文件系统及其访问计量方法
CN115964353B (zh) * 2023-03-10 2023-08-22 阿里巴巴(中国)有限公司 一种分布式文件系统及其访问计量方法

Also Published As

Publication number Publication date
CN111444157B (zh) 2023-06-20

Similar Documents

Publication Publication Date Title
CN111444157B (zh) 分布式文件系统及数据访问方法
US8463867B2 (en) Distributed storage network
US10642694B2 (en) Monitoring containers in a distributed computing system
US8359444B2 (en) System and method for controlling automated page-based tier management in storage systems
JP4547263B2 (ja) データをネットワーク中で処理する装置および方法
US8001327B2 (en) Method and apparatus for managing placement of data in a tiered storage system
CN112565325B (zh) 镜像文件管理方法、装置及系统、计算机设备、存储介质
CN111078121A (zh) 一种分布式存储系统数据迁移方法、系统、及相关组件
CN112148678B (zh) 一种文件访问方法、系统、设备以及介质
CN108777718B (zh) 一种业务系统通过客户端访问读多写少系统的方法和装置
US10986065B1 (en) Cell-based distributed service architecture with dynamic cell assignment
CN113992657B (zh) 一种基于云平台的共享存储的搭建方法、设备及介质
CN113190619B (zh) 分布式kv数据库的数据读写方法、系统、设备和介质
US20230205638A1 (en) Active-active storage system and data processing method thereof
CN111796772A (zh) 缓存的管理方法、缓存节点及分布式存储系统
CN110119389B (zh) 虚拟机块设备的写操作方法、快照创建方法及装置
CN112131191B (zh) 一种namenode文件系统的管理方法、装置及设备
CN116743780A (zh) 一种分布式存储系统及方法
CN115022307A (zh) 一种文件下载方法及装置、存储介质及电子设备
CN114528260A (zh) 文件访问请求的处理方法、电子设备及计算机程序产品
CN115687250A (zh) 一种存储方法、设备、系统和计算机存储介质
CN113656496A (zh) 数据处理方法及系统
CN111198849A (zh) 一种基于Hadoop的供电数据读写系统及其工作方法
CN114661246B (zh) 一种存储控制的方法和装置
CN112929459A (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