The embodiment of the present invention provides a file storage method, device, electronic equipment and storage medium, which is applied to a client unit in a stand-alone system, which comprises a plurality of client units, a plurality of file storage units and a plurality of first file management units. The first target file management unit is any of a plurality of first file management units; when receiving the first response message sent by the first target file management unit to allow file upload, the first data upload request is sent to the first target file management unit; and when receiving the first target file management unit, the first data upload request is sent to the first target file management unit. When the second response message sent by the standard file management unit is uploaded to the first target file storage unit, the second response message carries the information of the first target file storage unit for storing the first data block. The embodiment of the invention realizes multi-user writing and reduces the request delay.
【技术实现步骤摘要】
一种文件存储方法、装置、电子设备及存储介质
本专利技术实施例涉及存储
,尤其涉及一种文件存储方法、装置、电子设备及存储介质。
技术介绍
Hadoop分布式文件系统(HadoopDistributedFileSystem,HDFS)被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。HDFS有着高容错性的特点,并且设计用来部署在廉价的硬件上。此外,HDFS能够提供高吞吐量来访问应用程序的数据,适合超大数据集的应用程序。但是,HDFS在具有以上优点的同时,同时存在以下不足:其一,不适合低延迟数据访问。HDFS用于处理大型数据集分析任务,为了达到高数据吞吐量,可能会导致高延迟。其二,不支持多用户写入。HDFS中一个文件只有一个写入者,并且写操作只能在文件末尾完成,即只能执行追加操作。综上所述,现有技术中HDFS存在时延较高以及不能支持多用户写入的问题。
技术实现思路
本专利技术实施例提供一种文件存储方法、装置、电子设备及存储介质,以解决现有技术中HDFS时延较高以及不能支持多用户写入的问题。针对上述问题,第一方面,本专利技术实施例提供一种文件存储方法,应用于单机系统中的一客户单元,其中,所述单机系统包括多个客户单元、用于进行文件存储的多个文件存储单元以及用于存储元数据且用于进行文件管理的多个第一文件管理单元;所述方法包括:将一文件上传请求发送至第一目标文件管理单元,其中所述第一目标文件管理单元为所述多个第一文件管理单元中的任意一个;当接收到所述第一目标文件管理单元根据所述文件上传请求发送的指示允许文件上传的第一响应消息时,根据所 ...
【技术保护点】
1.一种文件存储方法,其特征在于,所述方法应用于单机系统中的一客户单元,其中,所述单机系统包括多个客户单元、用于进行文件存储的多个文件存储单元以及用于存储元数据且用于进行文件管理的多个第一文件管理单元;所述方法包括:将一文件上传请求发送至第一目标文件管理单元,其中所述第一目标文件管理单元为所述多个第一文件管理单元中的任意一个;当接收到所述第一目标文件管理单元根据所述文件上传请求发送的指示允许文件上传的第一响应消息时,根据所述第一响应消息,向所述第一目标文件管理单元发送请求上传第一数据块的第一数据上传请求;当接收到所述第一目标文件管理单元根据所述第一数据上传请求发送的第二响应消息时,根据所述第二响应消息,将所述第一数据块上传至第一目标文件存储单元上;其中,所述第二响应消息中携带有用于存储所述第一数据块的第一目标文件存储单元的信息,所述第一目标文件存储单元为所述多个文件存储单元中的至少一个。
【技术特征摘要】
1.一种文件存储方法,其特征在于,所述方法应用于单机系统中的一客户单元,其中,所述单机系统包括多个客户单元、用于进行文件存储的多个文件存储单元以及用于存储元数据且用于进行文件管理的多个第一文件管理单元;所述方法包括:将一文件上传请求发送至第一目标文件管理单元,其中所述第一目标文件管理单元为所述多个第一文件管理单元中的任意一个;当接收到所述第一目标文件管理单元根据所述文件上传请求发送的指示允许文件上传的第一响应消息时,根据所述第一响应消息,向所述第一目标文件管理单元发送请求上传第一数据块的第一数据上传请求;当接收到所述第一目标文件管理单元根据所述第一数据上传请求发送的第二响应消息时,根据所述第二响应消息,将所述第一数据块上传至第一目标文件存储单元上;其中,所述第二响应消息中携带有用于存储所述第一数据块的第一目标文件存储单元的信息,所述第一目标文件存储单元为所述多个文件存储单元中的至少一个。2.根据权利要求1所述的方法,其特征在于,所述根据所述第二响应消息,将所述第一数据块上传至第一目标文件存储单元上,包括:根据所述第二响应消息,将所述第一数据块上传至任意一个第一目标文件存储单元上,由接收所述第一数据块的第一目标文件存储单元将所述第一数据块复制到其他第一目标文件存储单元上。3.根据权利要求1所述的方法,其特征在于,所述单机系统还包括用于备份元数据的第二文件管理单元;当所述文件的文件长度小于或等于一个数据块长度时,所述根据所述第二响应消息,将所述第一数据块上传至第一目标文件存储单元上之后,所述方法还包括:将一文件上传完成的通知消息发送至所述第一目标文件管理单元,以使所述第一目标文件管理单元根据所述通知消息写入所述文件的元数据,并将所述元数据复制至除所述第一目标文件管理单元之外的其他第一文件管理单元以及所述第二文件管理单元上。4.根据权利要求1所述的方法,其特征在于,当所述文件的文件长度大于数据块长度时,在根据所述第二响应消息,将所述第一数据块上传至第一目标文件存储单元上之后,所述方法还包括:依次将所述文件包括的其他数据块上传至与所述其他数据块对应的第二目标文件存储单元上;其中所述第二目标文件存储单元为所述多个文件存储单元中的至少一个。5.根据权利要求1所述的方法,其特征在于,当所述文件未写满整数个数据块时,处于未写满状态的数据块还用于存储其他文件数据。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:将一请求读取文件的请求消息发送至第二目标文件管理单元,其中所述第二目标文件管理单元为所述多个第一文件管理单元中的任意一个;接收所述第二目标文件管理单元根据所述请求消息发送的所述文件的元信息,其中所述元信息包括存储有所述文件的所有数据块的第三目标文件存储单元的信息,且每一数据块对应有至少一个第三目标文件存储单元;根据所述元信息,分别从每一数据块对应的至少一个第三目标文件存储单元中的任意一个第三目标文件存储中下载对应的数据块;其中,在所述文件的数据块下载过程中,对已经完成下载的数据块进行合并处理,直至所述文件的所有数据块合并完成。7.一种文件存储方法,其特征在于,所述方法应用于单机系统中的第一目标文件管理单元,其中,所述单机系统包括多个客户单元、用于进行文件存储的多个文件存储单元以及用于存储元数据且用于进行文件管理的多个第一文件管理单元,所述第一目标文件管理单元为所述多个第一文件管理单元中的任意一个;所述方法包括:接收第一客户单元发送的文件上传请求;当根据所述文件上传请求检测到允许文件上传时,向所述第一客户单元发送一指示允许文件上传的第一响应消息,以使所述第一客户单元根据所述第一响应消息发送上传第一数据块的第一数据上传请求;根据所述第一数据上传请求,向所述第一客户单元发送第二响应消息,以使所述第一客户单元根据所述第二响应消息,将所述第一数据块上传至第一目标文件存储单元上;其中,所述第二响应消息中携带有用于存储所述第一数据块的第一目标文件存储单元的信息,所述第一目标文件存储单元为所述多个文件存储单元中的至少一个。8.根据权利要求7所述的方法,其特征在于,所述单机系统还包括用于备份元数据的第二文件管理单元;所述方法还包括:接收所述第一客户单元发送的文件上传完成的...
【专利技术属性】
技术研发人员:夏正伟,
申请(专利权)人:北京百悟科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。