文件存储方法、装置、访问客户端及元数据服务器系统制造方法及图纸

技术编号:10495227 阅读:90 留言:0更新日期:2014-10-04 13:18
本发明专利技术实施例提供文件存储方法、装置、访问客户端及元数据服务器系统。所述方法包括:确定至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息;向文件访问客户端发送所述存储位置信息,使得所述文件访问客户端能够根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。本发明专利技术实施例避免了文件访问服务器存储介质的碎片的不必要增加。

【技术实现步骤摘要】
文件存储方法、装置、访问客户端及元数据服务器系统
本专利技术实施例涉及云存储领域,尤其涉及文件存储方法、装置、访问客户端及元数据服务器系统。
技术介绍
多副本式分布式文件系统(DFS)是将文件分为若干CHUNK并将多份拷贝存储在不同的服务器上,为了能够在云存储领域适用于更广泛的应用场景,DFS必须能够支持各种大小的文件的存储,小到只有几个字节的文件,大到几十千兆字节都应该支持,并且存储性能不应存在差异,但是,按照现有机制,无论文件多小,文件访问服务器都会将其单独存储到磁盘上的一个副本中,从而在文件访问服务器不只一个这种文件时,不必要地增加了磁盘碎片。
技术实现思路
有鉴于此,本专利技术实施例的目的是提供文件存储方法、装置、访问客户端及元数据服务器系统,以避免文件访问服务器存储介质的碎片的不必要增加。 为解决上述技术问题,本专利技术实施例提供方案如下: 本专利技术实施例提供一种文件存储方法,用于一元数据服务器系统,所述方法包括: 确定至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息; 向文件访问客户端发送所述存储位置信息,使得所述文件访问客户端能够根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。 优选的,所述使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置具体包括: 使所述文件访问服务器能够将所述至少两个文件写入一个缓存块并在所述文件写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述至少两个文件分别存储在所述至少两个文件各自在所述副本中的偏移位置。 优选的,所述方法还包括: 记录所述至少两个文件中每个文件的文件名、所述副本位置信息和所述至少两个文件各自在所述副本中的偏移位置信息的对应关系; 接收所述文件访问客户端发送的请求读取的所述至少两个文件中的待读取文件的文件名; 根据所述对应关系和所述待读取文件的文件名,确定第一信息;其中,所述第一信息包括所述副本位置信息和所述待读取文件在所述副本中的偏移位置信息; 向所述文件访问客户端发送所述第一信息,使得所述文件访问客户端能够根据所述第一信息,与所述文件访问服务器交互,从所述文件访问服务器读取出所述第一文件。 本专利技术实施例还提供一种文件存储方法,用于一文件访问客户端,所述方法包括: 接收一元数据服务器系统发送的至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息;所述存储位置信息由所述元数据服务器系统确定; 根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。 优选的,所述使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置具体包括: 使所述文件访问服务器能够将所述至少两个文件写入一个缓存块并在所述文件写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述至少两个文件分别存储在所述至少两个文件各自在所述副本中的偏移位置。 优选的,所述根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置具体包括: 针对所述至少两个文件中的每个文件,根据所述副本位置信息和所述每个文件在所述副本中的偏移位置信息,将缓存有所述每个文件的共享内存页写入所述文件访问服务器的缓存块,使所述文件访问服务器能够在所述写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述每个文件存储在所述每个文件在所述副本中的偏移位置。 优选的,所述方法还包括: 向所述元数据服务器系统发送请求读取的所述至少两个文件中的待读取文件的文件名; 接收所述元数据服务器系统发送的第一信息;其中,所述第一信息包括所述副本位置信息和所述待读取文件在所述副本中的偏移位置信息;所述第一信息由所述元数据服务器系统根据所述至少两个文件中每个文件的文件名、所述副本位置信息和所述至少两个文件各自在所述副本中的偏移位置信息的对应关系和所述待读取文件的文件名确定;所述对应关系由所述元数据服务器系统记录; 根据所述第一信息,与所述文件访问服务器交互,从所述文件访问服务器读取出所述第一文件。 本专利技术实施例还提供一种文件存储装置,用于一元数据服务器系统,所述装置包括: 确定模块,确定至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息; 发送模块,用于向文件访问客户端发送所述存储位置信息,使得所述文件访问客户端能够根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。 优选的,所述发送模块具体包括: 发送单元,用于向所述文件访问客户端发送存储位置信息,使得所述文件访问客户端能够根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件写入一个缓存块并在所述文件写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述至少两个文件分别存储在所述至少两个文件各自在所述副本中的偏移位置。 本专利技术实施例还提供一种文件存储装置,用于一文件访问客户端,所述装置包括: 接收模块,用于接收一元数据服务器系统发送的至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息;所述存储位置信息由所述元数据服务器系统确定; 交互模块,用于根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。 优选的,所述交互模块具体包括: 交互单元,用于针对所述至少两个文件中的每个文件,根据所述副本位置信息和所述每个文件在所述副本中的偏移位置信息,将缓存有所述每个文件的共享内存页写入所述文件访问服务器的缓存块,使所述文件访问服务器能够在所述写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述每个文件存储在所述每个文件在所述副本中的偏移位置。 本专利技术实施例还提供一种包括以上所述的文件存储装置的元数据服务器系统。 本专利技术实施例还提供一种包括以上所述的文件存储装置的文件访问客户端。 从以上所述可以看出,本专利技术实施例至少具有如下有益效果: 支持不同文件存储在同一副本中,从而与现有技术中不同文件不能存储在同一副本中相比,避免了文件访问服务器存储介质的碎片的不必要增加。 【附图说明】 图1为本专利技术实施例一提供的一种文件存储方法的步骤流程图; 图2为本专利技术实施例二提供的另一种文件存储方法的步骤流程图; 图3为优选实施方式的小文件聚合示意图; 图4为优选实施方式的小文件聚合写的流程示意图; 图5为本文档来自技高网...
文件存储方法、装置、访问客户端及元数据服务器系统

【技术保护点】
一种文件存储方法,用于一元数据服务器系统,其特征在于,所述方法包括:确定至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息;向文件访问客户端发送所述存储位置信息,使得所述文件访问客户端能够根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。

【技术特征摘要】
1.一种文件存储方法,用于一元数据服务器系统,其特征在于,所述方法包括: 确定至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息; 向文件访问客户端发送所述存储位置信息,使得所述文件访问客户端能够根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。2.如权利要求1所述的方法,其特征在于,所述使所述文件访问服务器能够将所述至少两个文件分别存储到所述至 少两个文件各自在所述副本中的偏移位置具体包括: 使所述文件访问服务器能够将所述至少两个文件写入一个缓存块并在所述文件写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述至少两个文件分别存储在所述至少两个文件各自在所述副本中的偏移位置。3.如权利要求1所述的方法,其特征在于,所述方法还包括: 记录所述至少两个文件中每个文件的文件名、所述副本位置信息和所述至少两个文件各自在所述副本中的偏移位置信息的对应关系; 接收所述文件访问客户端发送的请求读取的所述至少两个文件中的待读取文件的文件名; 根据所述对应关系和所述待读取文件的文件名,确定第一信息;其中,所述第一信息包括所述副本位置信息和所述待读取文件在所述副本中的偏移位置信息; 向所述文件访问客户端发送所述第一信息,使得所述文件访问客户端能够根据所述第一信息,与所述文件访问服务器交互,从所述文件访问服务器读取出所述第一文件。4.一种文件存储方法,用于一文件访问客户端,其特征在于,所述方法包括: 接收一元数据服务器系统发送的至少两个文件的存储位置信息;其中,所述存储位置信息包括所述至少两个文件各自在一个副本中的偏移位置信息和所述副本位置信息;所述存储位置信息由所述元数据服务器系统确定; 根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置。5.如权利要求4所述的方法,其特征在于,所述使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置具体包括: 使所述文件访问服务器能够将所述至少两个文件写入一个缓存块并在所述文件写入完成后,将所述缓存块中的数据写入所述副本中且所述数据写入完成后所述至少两个文件分别存储在所述至少两个文件各自在所述副本中的偏移位置。6.如权利要求4所述的方法,其特征在于,所述根据所述存储位置信息,与一文件访问服务器交互,使所述文件访问服务器能够将所述至少两个文件分别存储到所述至少两个文件各自在所述副本中的偏移位置具体包括: 针对所述至少两个文件中的每个文件,根据所述副本位置信息和所述每个文件在所述副本中的偏移位置信息,将缓存有所述每个文件的共享内存页写入所述文件访问服务器的缓存块,使所述文件访问服务器能够在所述写入完成后,将所述...

【专利技术属性】
技术研发人员:胡剑华朱鹏俞超
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1