一种远程目录分支点维护系统及其方法技术方案

技术编号:9991021 阅读:78 留言:0更新日期:2014-05-02 04:29
本发明专利技术公开了一种远程目录分支点维护系统,包括:元数据服务器集群和客户端,元数据服务器集群进一步包括:主元数据服务器和多个远程元数据服务器,其中,主元数据服务器用于将所有新建的目录的索引节点inode记录在父目录中,并且在索引节点inode中嵌入远程元数据服务器的位置信息,对远程元数据服务器的位置信息进行记录和维护,远程元数据服务器用于创建远程子目录,以实现远程子目录的元数据访问,客户端用于根据维护的元数据服务器集群的定位信息,确定目标元数据服务器,建立与目标元数据服务器的连接,并对目标元数据服务器发送访问请求。本发明专利技术还公开了一种远程目录分支点维护方法。

【技术实现步骤摘要】
一种远程目录分支点维护系统及其方法
本专利技术涉及集群文件系统的元数据集群技术,特别涉及一种基于元数据集群中跨越多个服务器的远程目录分支点的维护方法。
技术介绍
在大规模集群文件系统中,元数据与数据服务分离已经成为了一种趋势。一方面,数据访问不必通过元数据服务器,而是采用带外方式直接访问存储设备,从而获取较高的数据访问性能;另一方面,元数据服务器专门提供元数据服务,卸载了数据访问负载,从而单台元数据服务器可以支持更高的客户端访问性能,管理更多的存储设备,支持更大的系统规模扩展。然而,随着系统规模的不断扩大,单台元数据服务器逐渐成为制约系统扩展的瓶颈。为了进一步提升集群文件系统的扩展能力,通常采用多台元数据服务器构成元数据服务器集群,以分散元数据负载,支持通过增加元数据服务器数量达到集群文件系统的横向扩展。以目录为粒度、把一些子目录的负载转移到其他元数据服务器是元数据负载分散的一种常用方法,被Lustre、pNFS、BWFS等集群文件系统所采用。元数据负载的分布是在子目录的创建过程中,以创建远程子目录的方式将子目录元数据负载转移到其他的元数据服务器,即选择父目录所在的元数据服务器之外的元数据服务器进行子目录创建,该子目录称为远程目录分支点。远程目录分支点的存储和访问涉及到父目录所在的元数据服务器、分支点实际所在的元数据服务器以及客户端,增加了系统实现复杂度,尤其对远程目录分支点的创建、访问和删除产生较大的影响。现有的pNFS通过目录的位置属性(fs_locations)将位于不同服务器上多个子文件系统的名字空间整合起来,从而实现多服务器名字空间。在具体实现中,pNFS在父目录所在的服务器和负载转移的目标服务器上分别创建目录索引节点,并为父目录所在的服务器上相应目录索引节点的fs_locations属性设置上目标服务器的位置信息。客户端访问远程目录分支点时得到NFS4ERR_MOVED错误,然后通过Get_fslocations操作进一步获取远程目录分支点实际所在的目标服务器的位置,之后才能访问位于目标服务器上的远程目录分支点。pNFS中每个目录分支点需要在父目录所在的元数据服务器上创建一个额外的索引节点来辅助完成中转,客户端需要额外的操作请求来获取远程目录分支点所在的元数据服务器位置。同时由于目录位于不同的文件系统中,且索引节点号没有得到统一的管理,导致pNFS不支持跨元数据服务器的目录元数据操作,比如跨元数据服务器的目录重命名(rename)、硬链接(hardlink)操作。
技术实现思路
本专利技术要解决的技术问题在于现有技术中集群文件系统在多台元数据服务器间分配负载过程中远程目录分支点维护空间利用率不高、操作复杂的问题,提供了一种新的远程目录分支点维护方法,以提高空间利用率,降低操作复杂度。为了达到以上目的,本专利技术提供了一种远程目录分支点维护系统,其特征在于,所述系统包括:一元数据服务器集群,所述元数据服务器集群进一步包括:一主元数据服务器和多个远程元数据服务器,其中,所述主元数据服务器用于将所有新建的目录的索引节点inode记录在父目录中,并且在所述索引节点inode中嵌入所述远程元数据服务器的位置信息,对所述远程元数据服务器的位置信息进行记录和维护,所述远程元数据服务器用于创建远程子目录,以实现所述远程子目录的元数据访问;一客户端,用于根据维护的所述元数据服务器集群的定位信息,确定目标元数据服务器,建立与所述目标元数据服务器的连接,并对所述目标元数据服务器发送访问请求。上述远程目录分支点维护系统,其特征在于,所述索引节点inode的索引号ino包含:标识索引节点inode所在元数据服务器的序号seqid和独立文件系统内局部索引节点号。上述远程目录分支点维护系统,其特征在于,所述主元数据服务器和每个所述远程元数据服务器都进一步包括:目录服务模块:用于接收所述客户端的请求,并构建和解析文件标识filehandle;索引节点维护模块:用于索引节点号ino的维护,将所述远程元数据服务器的位置信息嵌入到所述索引节点号ino中。上述远程目录分支点维护系统,其特征在于,所述文件标识filehandle包含:文件系统编号fsid、索引节点号ino、所述索引节点inode版本号generation域。上述远程目录分支点维护系统,其特征在于,所述主元数据服务器还包括:目录项维护模块:用于添加和删除目录项,并将新建的所述索引节点inode的信息添加到父目录中,并将待删除的所述索引节点inode的信息从所述父目录中删除。上述远程目录分支点维护系统,其特征在于,所述客户端还包括:元数据服务器地址映射模块:用于通过所述元数据服务器集群的位置信息映射表,根据标识索引节点inode所在元数据服务器的序号seqid查询所述索引节点inode所在的所述目标元数据服务器的位置;目录请求模块:用于通过所述元数据服务器地址映射模块查询所述目标元数据服务器的位置,建立与所述目标元数据服务器的连接并发送请求。本专利技术还提供了一种远程目录分支点维护方法应用于所述的远程目录分支点维护系统,其特征在于,所述方法包括:目录项添加步骤:用于在所述元数据服务器集群中添加目录项;目录项访问步骤:用于完成所述元数据服务器集群的访问。上述远程目录分支点维护方法,其特征在于,所述目录项添加步骤还包括:申请本地索引节点步骤:用于在所述索引节点维护模块分配本地索引节点inode,将所述索引节点号ino和所述索引节点inode版本号generation域,传送到所述主元数据服务器;添加序号步骤:用于所述主元数据服务器通过所述索引节点维护模块将传送来的所述索引节点号ino中添加所述远程元数据服务器的序号seqid进行标识;序号判断步骤:用于如果所述索引节点号ino中的seqid为0,则目标目录为本地目录,按照系统原有目录项添加方式添加目标目录的目录项,如果所述seqid为非0,则所述目标目录为远程目录,在原有目录项的基础上增加所述generation域;文件标识创建步骤:用于根据所述索引节点号ino和所述generation域构建文件标识filehandle,并将构建好的所述filehandle返回给所述客户端进行保存。上述远程目录分支点维护方法,其特征在于,所述目录项访问步骤还包括:客户端请求发送步骤:用于通过所述元数据服务器地址映射模块查询所述目标元数据服务器的位置信息,所述客户端向所述目标元数据服务器发送请求;元数据服务器端请求接收步骤:用于所述目标元数据服务器解析和处理所述客户端发出的请求。上述远程目录分支点维护方法,其特征在于,所述元数据服务器端请求接收步骤还包括:请求解析步骤:用于所述目标元数据服务器通过所述目录服务模块接收所述客户端发来的所述请求后,进行解析所述文件标识filehandle;请求处理步骤:将所述请求解析步骤获取的所述文件标识filehandle,依据对所述请求位于所述主元数据服务器或所述远程元数据服务器的判断,完成所述文件标识filehandle的处理,并将结果反馈给所述客户端。上述远程目录分支点维护方法,其特征在于,所述请求解析步骤还包括:Lookup请求解析步骤:收到所述客户端发送来的所述请求后,解析传送过来的所述父目录的fileh本文档来自技高网
...
一种远程目录分支点维护系统及其方法

【技术保护点】

【技术特征摘要】
1.一种远程目录分支点维护系统,其特征在于,所述系统包括:一元数据服务器集群,所述元数据服务器集群进一步包括:一主元数据服务器和多个远程元数据服务器,其中,所述主元数据服务器用于将所有新建的目录的索引节点inode记录在父目录中,并且在所述索引节点inode中嵌入所述远程元数据服务器的位置信息,对所述远程元数据服务器的位置信息进行记录和维护,所述远程元数据服务器用于创建远程子目录,以实现所述远程子目录的元数据访问;一客户端,用于根据维护的所述元数据服务器集群的定位信息,确定目标元数据服务器,建立与所述目标元数据服务器的连接,并对所述目标元数据服务器发送访问请求。2.根据权利要求1所述的远程目录分支点维护系统,其特征在于,所述索引节点inode的索引号ino包含:标识索引节点inode所在元数据服务器的序号seqid和独立文件系统内局部索引节点号。3.根据权利要求1所述的远程目录分支点维护系统,其特征在于,所述主元数据服务器和每个所述远程元数据服务器都进一步包括:目录服务模块:用于接收所述客户端的请求,并构建和解析文件标识filehandle;索引节点维护模块:用于索引节点号ino的维护,将所述远程元数据服务器的位置信息嵌入到所述索引节点号ino中。4.根据权利要求3所述的远程目录分支点维护系统,其特征在于,所述文件标识filehandle包含:文件系统编号fsid、索引节点号ino、所述索引节点inode版本号generation域。5.根据权利要求1所述的远程目录分支点维护系统,其特征在于,所述主元数据服务器还包括:目录项维护模块:用于添加和删除目录项,并将新建的所述索引节点inode的信息添加到父目录中,并将待删除的所述索引节点inode的信息从所述父目录中删除。6.根据权利要求1所述的远程目录分支点维护系统,其特征在于,所述客户端还包括:元数据服务器地址映射模块:用于通过所述元数据服务器集群的位置信息映射表,根据标识索引节点inode所在元数据服务器的序号seqid查询所述索引节点inode所在的所述目标元数据服务器的位置;目录请求模块:用于通过所述元数据服务器地址映射模块查询所述目标元数据服务器的位置,建立与所述目标元数据服务器的连接并发送请求。7.一种远程目录分支点维护方法,应用于如权利要求1-6中任一项所述的远程目录分支点维护系统,其特征在于,所述方法包括:目录项添加步骤:用于在所述元数据服务器集群中添加目录项;目录项访问步骤:用于完成所述元数据服务器集群的访问。8.根据权利要求7所述的远程目录分支点维护方法,其特征在于,所述目录项添加步骤还包括:申请本地索引节点步骤:用于在所述索引节点维护模块分配本地索引节点inode,将所述索引节点号in...

【专利技术属性】
技术研发人员:郑彩平张军伟邵冰清刘振军张浩
申请(专利权)人:中国科学院计算技术研究所天津中科蓝鲸信息技术有限公司
类型:发明
国别省市:

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

1