一种文件存储系统、数据调度方法及数据节点技术方案

技术编号:15690495 阅读:80 留言:0更新日期:2017-06-24 02:56
本发明专利技术公开了一种文件存储系统、数据调度方法及数据节点,涉及文件系统领域。其中,该数据调度的方法包括:主数据节点接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;主数据节点将待写入数据写入第一分布式存储子系统中,向名字节点发送通知消息,向客户端发送应答消息;主数据节点向第一备份数据节点发送更新请求,更新请求包括待写入数据在所述第一分布式存储子系统中的存储位置和待写入数据的属性信息。本发明专利技术应用在存储文件的过程中。

File storage system, data scheduling method and data node

The invention discloses a file storage system, a data scheduling method and a data node, which relate to the file system field. Among them, including the method of data scheduling: write operation instruction node receives the master data sent by the client, the write operation instructions included in the data to be written to the main node; data writing data to be written to the first distributed storage subsystem, message to the node name sent to the client sends a response message; the main data node update request to the first data backup node sends update request, including the data to be written to the storage location in the first distributed storage subsystem and attribute information data to be written. The invention is applied in the process of storing files.

【技术实现步骤摘要】
一种文件存储系统、数据调度方法及数据节点
本专利技术涉及文件系统领域,尤其涉及一种文件存储系统、数据调度方法及数据节点。
技术介绍
Hadoop分布式文件系统(HadoopDistributedFileSystem,HDFS)是一种适合运行在通用硬件(commodityhardware)上的分布式文件系统,具备高可扩展性,无需停机便能够实现动态扩容;高可靠性,能够实现数据自动检测和复制以及高吞吐量访问,消除访问瓶颈等特性。现有技术中,HDFS的系统架构如图1所示,包括:客户端11和服务器群12。其中,客户端11包括分布式文件系统(DistributedFileSystem)模块111和文件系统数据输出流(FSDataOutputStream)模块112。服务器群采用主从结构,由一个名字节点(NameNode,NN)121和多个数据节点(DataNode,DN)122组成。其中,名字节点121是一个管理文件命名空间和调节客户端访问文件的主服务器;数据节点122,用于存储数据,一般一个数据节点对应一个服务器,每个数据节点对应一个分布式存储子系统,采用分布式存储的存储方式。在利用上述HDFS系统进行写数据之前,客户端首先通过DistributedFileSystem模块向远程的NN节点发起RPC请求;NN节点在文件系统的命名空间中创建一个新的文件;DistributedFileSystem模块向HDFS客户端返回DFSOutputStream,然后客户端开始写数据。客户端开始写入数据,DFSOutputStream将数据分成块,写入数据队列(dataqueue)中。Dataqueue由数据流(DataStreamer)读取,并通知名字节点分配用于存储数据块的数据节点(每个数据块默认对应3个数据节点)。DataStreamer采用流水线的形式将数据依次写入分配的数据节点中实现数据块在多个数据节点之间的互相备份。例如:将数据块写入第一个数据节点;第一个数据节点将数据块发送给第二个数据节点;第二个数据节点将数据块发送给第三个数据节点。此外,每个数据节点对应有分布式存储设备,所指的分布式存储设备实际上由多个物理磁盘组成。数据节点将已写入的块数据通过IO转发到分布式存储设备内,触发分布式存储设备的写流程,分布式存储设备将数据写到主物理磁盘,同时发送复制请求给备物理磁盘,实现分布式存储设备上多备份数据(默认复制3份)写入。当客户端完成数据写入后,DataStreamer关闭写入流并通知名字节点数据写入完毕。现有的这种文件读写方法,只有在全部数据节点均完成数据的写入才会进行下一个数据块的写操作过程,数据写入速度较慢。
技术实现思路
本专利技术提供一种文件存储系统、数据调度方法及数据节点,能够加快数据写入速度。为达到上述目的,本专利技术采用如下技术方案:第一方面,本专利技术实施例提供一种文件存储系统,所述文件存储系统的服务器侧包括:名字节点、主数据节点和至少一个备份数据节点;所述主数据节点和至少一个备份数据节点共享第一分布式存储子系统,所述第一分布式存储子系统包括一个主存储设备和至少一个备份存储设备;其中,所述主数据节点,用于接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;将所述待写入数据写入第一分布式存储子系统中;并且向第一备份数据节点发送更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息;所述备份数据节点,用于接收更新请求;根据所述更新请求中的待写入数据在所述第一分布式存储子系统中的存储位置以及所述待写入数据的属性信息,在所述第一分布式存储子系统中查找所述待写入数据;当查找到所述待写入数据时,保存所述待写入数据的属性信息。结合第一方面,在第一方面的第一种实现方式中,所述主数据节点对所述第一分布式存储子系统的操作权限为允许进行读写操作;所述备份数据节点对所述第一分布式存储子系统的操作权限为仅允许进行读操作。第二方面,本专利技术实施例还提供了一种数据调度方法,该方法应用于如第一方面所述的文件存储系统中,所述方法包括:主数据节点接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;所述主数据节点将所述待写入数据写入第一分布式存储子系统中;所述主数据节点向第一备份数据节点发送更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息。结合第二方面,在第二方面的第一种实现方式中,所述待写入数据的属性信息包括所述待写入数据的名称以及大小。结合第二方面或者第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述方法还包括:当第一数据节点发生故障时,恢复发生故障的数据节点的系统文件,得到恢复后的数据节点,所述第一数据节点为所有数据节点中的任意一个;将所述第一分布式子系统挂载至所述恢复后的数据节点。第三方面,本专利技术实施例还提供了一种数据调度方法,包括:备份数据节点接收更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息;所述备份数据节点根据所述待写入数据在所述第一分布式存储子系统中的存储位置以及所述待写入数据的属性信息,在所述第一分布式存储子系统中查找所述待写入数据;当查找到所述待写入数据时,所述备份数据节点保存所述待写入数据的属性信息。第四方面,本专利技术实施例提供了一种数据节点,包括:接收模块,用于接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;写电路,用于将所述待写入数据写入第一分布式存储子系统中;发送模块,用于向第一备份数据节点发送更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息。结合第四方面,在第四方面的第一种实现方式中,所述待写入数据的属性信息包括所述待写入数据的名称以及大小。第五方面,本专利技术实施例还提供了一种数据节点,包括:接收模块,用于接收更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息;处理模块,用于根据所述待写入数据在所述第一分布式存储子系统中的存储位置以及所述待写入数据的属性信息,在所述第一分布式存储子系统中查找所述待写入数据;存储模块,用于当查找到所述待写入数据时,所述备份数据节点保存所述待写入数据的属性信息。本专利技术提供的文件存储系统,多个数据节点共享一个分布式存储子系统,且该分布式存储子系统包括一个主存储设备和至少一个备份存储设备,能够实现数据在各个存储设备之间的互相备份。在利用该文件存储系统进行写数据时,主数据节点将待写入数据写入第一分布式存储子系统,然后向第一备份数据节点发送更新请求以通知第一备份数据节点待写入数据的属性信息以及待写入数据的存储位置,第一备份数据节点根据该更新请求仅需要查看第一分布式存储子系统,确定第一分布式存储子系统中已经写入了待写入数据后,保存更新请求中的待写入数据的属性信息,便完成了对待写入数据的写过程。与现有技术中,所有数据节点都需要将待写入数据分别写入其对应的分布式存储系统相比,本专利技术提供的数据调度的方法,虽然存在多个数据节点,但实际只有一个数据节点进行了数据写入第一分布式操作系统的过程本文档来自技高网
...
一种文件存储系统、数据调度方法及数据节点

【技术保护点】
一种文件存储系统,其特征在于,所述文件存储系统的服务器侧包括:名字节点、主数据节点和至少一个备份数据节点;所述主数据节点和至少一个备份数据节点共享第一分布式存储子系统,所述第一分布式存储子系统包括一个主存储设备和至少一个备份存储设备;其中,所述主数据节点,用于接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;将所述待写入数据写入第一分布式存储子系统中;并且向第一备份数据节点发送更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息;所述备份数据节点,用于接收更新请求;根据所述更新请求中的待写入数据在所述第一分布式存储子系统中的存储位置以及所述待写入数据的属性信息,在所述第一分布式存储子系统中查找所述待写入数据;当查找到所述待写入数据时,保存所述待写入数据的属性信息。

【技术特征摘要】
1.一种文件存储系统,其特征在于,所述文件存储系统的服务器侧包括:名字节点、主数据节点和至少一个备份数据节点;所述主数据节点和至少一个备份数据节点共享第一分布式存储子系统,所述第一分布式存储子系统包括一个主存储设备和至少一个备份存储设备;其中,所述主数据节点,用于接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;将所述待写入数据写入第一分布式存储子系统中;并且向第一备份数据节点发送更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息;所述备份数据节点,用于接收更新请求;根据所述更新请求中的待写入数据在所述第一分布式存储子系统中的存储位置以及所述待写入数据的属性信息,在所述第一分布式存储子系统中查找所述待写入数据;当查找到所述待写入数据时,保存所述待写入数据的属性信息。2.根据权利要求1所述的文件存储系统,其特征在于,所述主数据节点对所述第一分布式存储子系统的操作权限为允许进行读写操作;所述备份数据节点对所述第一分布式存储子系统的操作权限为仅允许进行读操作。3.一种数据调度方法,其特征在于,应用于如权利要求1或2所述的文件存储系统中,所述方法包括:主数据节点接收客户端发送的写操作指令,所述写操作指令中包括待写入数据;所述主数据节点将所述待写入数据写入第一分布式存储子系统中;所述主数据节点向第一备份数据节点发送更新请求,所述更新请求包括所述待写入数据在所述第一分布式存储子系统中的存储位置和所述待写入数据的属性信息。4.根据权利要求3所述的方法,其特征在于,所述待写入数据的属性信息包括所述待写入数据的名称以及大小。5.根据权利要求3或4所述的方法,其特征...

【专利技术属性】
技术研发人员:董阳单卫华殷晖
申请(专利权)人:杭州华为数字技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1