一种云存储文件系统技术方案

技术编号:12712912 阅读:102 留言:0更新日期:2016-01-14 19:24
本申请公开了一种云存储文件系统,该系统包括:文件管理机和N个块服务器;其中,文件管理机包括:文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为目标文件创建一个块容量大小可变的目标文件块;块容量调整模块,用于获取目标文件的文件大小,并根据目标文件的文件大小,对目标文件块的块容量大小进行调整,以使目标文件块的块容量大小与目标文件的文件大小相一致;文件存储模块,用于当块容量控制模块对目标文件块的块容量大小进行调整后,将目标文件存储至目标文件块。本申请避免了目标文件的文件大小可能超过目标文件块的块容量大小的情况,也即避免了发生块溢出的情况,确保了文件能够得到完整保存。

【技术实现步骤摘要】

本专利技术涉及云存储
,特别涉及一种云存储文件系统
技术介绍
随着互联网的发展,人们需要对越来越多的网络数据进行存储和处理,为了适应这种需求,人们提出了基于云计算的云存储文件系统。现有的云存储文件系统通常是采用GFS文件系统(GFS,即GoogleFileSystem,谷歌文件系统)的形式对数据进行存储。然而,GFS文件系统是利用块容量大小固定的文件块对目标文件进行存储的,当目标文件的文件大小超过文件块的块容量大小时,便会导致块溢出的问题,从而使得文件保存不完整。综上所述可以看出,如何避免发生块溢出的情况,以确保文件能够得到完整保存是目前亟待解决的问题。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种云存储文件系统,避免了发生块溢出的情况,从而确保了文件能够得到完整保存。其具体方案如下:一种云存储文件系统,包括文件管理机和N个块服务器,N为正整数;其中,所述文件管理机包括:文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,在所述目标块服务器上为所述目标文件创建一个块容量大小可变的目标文件块;其中,所述目标块服务器为所述N个块服务器中与所述目标文件对应的块服务器;块容量调整模块,用于获取所述目标文件的文件大小,并根据所述目标文件的文件大小,对所述目标文件块的块容量大小进行调整,以使所述目标文件块的块容量大小与所述目标文件的文件大小相一致;文件存储模块,用于当所述块容量调整模块对所述目标文件块的块容量大小进行调整后,将所述目标文件存储至所述目标文件块。优选的,所述目标文件块为具有唯一全局标识的文件块。优选的,所述文件管理机还包括:元数据存储模块,用于对所述云存储文件系统的元数据进行存储;元数据管理模块,用于对所述元数据存储模块中存储的元数据进行维护管理。优选的,所述云存储文件系统的元数据包括命名空间、文件访问控制信息、文件ID与文件块之间的映射关系和文件块的位置信息。优选的,所述文件管理机还包括:读取指令接收模块,用于接收客户端发送的用于读取目标文件集的文件读取指令;所述目标文件集包括M个文件,M为正整数;所述文件读取指令携带有所述M个文件中每个文件的文件ID;位置查找模块,用于利用所述文件读取指令中携带的文件ID,从所述元数据存储模块存储的元数据中查找出所述M个文件所对应的文件块的位置信息;文件读取模块,用于根据所述位置查找模块查找到的位置信息,从相应的文件块中一次性地读取出相应的文件,并将读取到的文件返回至客户端。优选的,所述云存储文件系统,还包括:文件级别设定模块,用于对需要写入块服务器的文件的文件级别进行设定。优选的,所述文件级别包括低级、中级和高级。优选的,所述云存储文件系统,还包括:第一备份器,用于对第一类型文件和第二类型文件进行备份,所述第一类型文件为需要写入块服务器的文件级别为中级的文件,所述第二类型文件为需要写入块服务器的文件级别为高级的文件。优选的,所述云存储文件系统,还包括:第二备份器,用于在所述第一备份器对所述第二类型文件进行备份的基础上,对所述第二类型文件进行再次备份。优选的,所述云存储文件系统,还包括:第一故障提示模块,用于当所述N个块服务器中的任一块服务器出现故障后,生成相应的故障提示信息。本专利技术中,云存储文件系统包括文件管理机和N个块服务器;其中,文件管理机包括:文件块创建模块用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为目标文件创建一个块容量大小可变的目标文件块;块容量调整模块用于获取目标文件的文件大小,并根据目标文件的文件大小,对目标文件块的块容量大小进行调整,以使目标文件块的块容量大小与目标文件的文件大小相一致;文件存储模块用于当块容量调整模块对目标文件块的块容量大小进行调整后,将目标文件存储至目标文件块。可见,本专利技术中,文件块创建模块在目标块服务器中创建的目标文件块是一个块容量大小可变的文件块,并且块容量调整模块可以根据目标文件的文件大小对目标文件块的块容量大小进行相应的调整,以使得目标文件块的块容量大小与目标文件的文件大小相一致,从而避免了目标文件的文件大小可能超过目标文件块的块容量大小的情况,也即避免了发生块溢出的情况,确保了文件能够得到完整保存。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例公开的一种云存储文件系统结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例公开了一种云存储文件系统,参见图1所示,该云存储文件系统包括文件管理机10和N个块服务器,N为正整数;其中,文件管理机10包括:文件块创建模块101,用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为上述目标文件创建一个块容量大小可变的目标文件块;其中,目标块服务器为上述N个块服务器中与目标文件对应的块服务器;块容量调整模块102,用于获取上述目标文件的文件大小,并根据上述目标文件的文件大小,对上述目标文件块的块容量大小进行调整,以使上述目标文件块的块容量大小与上述目标文件的文件大小相一致;文件存储模块103,用于当块容量调整模块102对上述目标文件块的块容量大小进行调整后,将上述目标文件存储至上述目标文件块。可以理解的是,本实施例中公开的云存储文件系统在同一时刻下可以被多台客户端进行并行访问。另外,为了方便后续的文件访问,上述目标文件块为具有唯一全局标识的文件块。本专利技术实施例中,云存储文件系统包括文件管理机和N个块服务器;其中,文件管理机包括:文件块创建模块用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为目标文件创建一个块容量大小可变的目标文件块;块容量调整模块用于获取目标文件的文件大小,并根据目标文件的文件大小,对目标文件块的块容量大小进行调整,以使目标文件块的块容量大小与本文档来自技高网...

【技术保护点】
一种云存储文件系统,其特征在于,包括文件管理机和N个块服务器,N为正整数;其中,所述文件管理机包括:文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,在所述目标块服务器上为所述目标文件创建一个块容量大小可变的目标文件块;其中,所述目标块服务器为所述N个块服务器中与所述目标文件对应的块服务器;块容量调整模块,用于获取所述目标文件的文件大小,并根据所述目标文件的文件大小,对所述目标文件块的块容量大小进行调整,以使所述目标文件块的块容量大小与所述目标文件的文件大小相一致;文件存储模块,用于当所述块容量调整模块对所述目标文件块的块容量大小进行调整后,将所述目标文件存储至所述目标文件块。

【技术特征摘要】
1.一种云存储文件系统,其特征在于,包括文件管理机和N个块服务器,
N为正整数;其中,所述文件管理机包括:
文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,
在所述目标块服务器上为所述目标文件创建一个块容量大小可变的目标文件
块;其中,所述目标块服务器为所述N个块服务器中与所述目标文件对应的
块服务器;
块容量调整模块,用于获取所述目标文件的文件大小,并根据所述目标
文件的文件大小,对所述目标文件块的块容量大小进行调整,以使所述目标
文件块的块容量大小与所述目标文件的文件大小相一致;
文件存储模块,用于当所述块容量调整模块对所述目标文件块的块容量
大小进行调整后,将所述目标文件存储至所述目标文件块。
2.根据权利要求1所述的云存储文件系统,其特征在于,所述目标文件
块为具有唯一全局标识的文件块。
3.根据权利要求2所述的云存储文件系统,其特征在于,所述文件管理
机还包括:
元数据存储模块,用于对所述云存储文件系统的元数据进行存储;
元数据管理模块,用于对所述元数据存储模块中存储的元数据进行维护
管理。
4.根据权利要求3所述的云存储文件系统,其特征在于,所述云存储文
件系统的元数据包括命名空间、文件访问控制信息、文件ID与文件块之间的
映射关系和文件块的位置信息。
5.根据权利要求4所述的云存储文件系统,其特征在于,所述文件管理
机还包括:
读取指令接收模块,用于接收客户端发送的...

【专利技术属性】
技术研发人员:赵鹏城
申请(专利权)人:浪潮北京电子信息产业有限公司
类型:发明
国别省市:北京;11

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

1