分布式文件系统的元数据动态管理方法及分布式文件系统技术方案

技术编号:21361088 阅读:37 留言:0更新日期:2019-06-15 09:16
本发明专利技术公开了一种分布式文件系统的元数据动态管理方法,包括如下步骤:S1.在元数据服务器集群中选择多台服务器作为前置服务器以构成前置元数据服务器集群,元数据服务器集群中的其余元数据服务器构成非前置元数据服务器集群;客户端发起的所有的元数据读写请求,均由前置元数据服务器集群统一处理,且写请求中的元数据仅保存在前置元数据服务器集群的内存中;S2.启动前置服务器;S3.处理客户端的元数据读写请求。通过本发明专利技术,能够提供对元数据的高速访问,降低对分布式系统的负载,实现较好的负载均衡。

Dynamic Metadata Management Method and Distributed File System for Distributed File System

The invention discloses a metadata dynamic management method for distributed file system, which includes the following steps: S1. Selecting multiple servers as the front-end servers in the metadata server cluster to constitute the front-end metadata server cluster, the remaining metadata servers in the metadata server cluster constitute the non-front metadata server cluster, and all metadata initiated by the client. Read and write requests are processed by the pre-metadata server cluster, and the metadata in the write requests are only stored in the memory of the pre-metadata server cluster; S2. Start the pre-server; S3. Processing the metadata read and write requests of the client. The invention can provide high-speed access to metadata, reduce the load on distributed system and achieve better load balancing.

【技术实现步骤摘要】
分布式文件系统的元数据动态管理方法及分布式文件系统
本专利技术涉及元数据动态管理方法和计算机系统,尤其是涉及一种基于分布式文件系统的元数据动态管理方法及分布式文件系统。
技术介绍
随着互联网信息化技术的不断发展,存储系统正随着数据量的增加日益重要。分布式文件系统以高容错性、高并发性、高可扩展性的特点,顺应信息指数级增长的趋势,得到了存储厂商和从业人员的重视。分布式文件系统中主要管理两类数据,一类是用户的数据,一类被称为元数据,即用于管理和索引用户数据的数据。用户的数据的访问特点偏存储密集型,而元数据的访问特点偏计算密集型。所以一般来说,分布式文件系统会将这两类数据独立管理和存储,其中存储用户数据的组件称为数据服务器,存储元数据的组件称为元数据服务器。为了使整个分布式文件系统具有更强的容错能力和更高的并行访问能力,分布式文件系统分别使用多个节点构建数据服务器集群和元数据服务器集群。由于对元数据的频繁访问,动态负载不均的问题经常出现,导致系统响应速度变慢甚至会出现系统不稳定的问题。为解决上述问题,本专利技术提供了一种分布式文件系统,能够提供对元数据的高速访问,且能够实现较好的负载均衡。
技术实现思路
为实现本专利技术之目的,采用以下技术方案予以实现:一种分布式文件系统的元数据动态管理方法,该方法包括如下步骤:S1.在元数据服务器集群中选择多台服务器作为前置服务器以构成前置元数据服务器集群,元数据服务器集群中的其余元数据服务器构成非前置元数据服务器集群;客户端发起的所有的元数据读写请求,均由前置元数据服务器集群统一处理,且写请求中的元数据仅保存在前置元数据服务器集群的内存中;S2.启动前置服务器;S3.处理客户端的元数据读写请求。所述的元数据动态管理方法,其中:步骤S2包括:S201.预处理:为前置服务器设定配置文件S202.前置服务器初始化:根据配置文件,每台前置服务器与其他前置服务器互相通信自动组成前置元数据服务器集群。所述的元数据动态管理方法,其中:配置文件中包含两类通信地址和端口,一类用于前置服务器之间的通信,另一类用于与用户侧的客户端通信。所述的元数据动态管理方法,其中:还包括步骤S203:前置服务器选举出主前置服务器。所述的元数据动态管理方法,其中:步骤S3处理客户端的元数据读写请求包括:S301.前置服务器处理元数据写请求:客户端与任意一个前置服务器的连接,发起元数据写请求,前置元数据服务器集群接收到客户端发起的元数据写请求后,按照下述流程处理:如果客户端连接的是主前置服务器,则由主前置服务器进行写操作;如果客户端连接的不是主前置服务器,则由该前置服务器自动转发该元数据写请求至主前置服务器进行写操作。所述的元数据动态管理方法,其中:主前置服务器接收到写请求后,首先将写请求中的元数据写入所在服务器的内存中,然后将该元数据写入到其他前置服务器的内存中,直到写入成功的前置服务器数量大于总前置服务器数量的一半;主前置服务器向客户端返回写入成功的结果。所述的元数据动态管理方法,其中:前置元数据服务器集群在完成写请求后,记录一条日志,该条日志的内容包括元数据的目录、文件路径、修改内容、修改时间。所述的元数据动态管理方法,其中:步骤S3处理客户端的元数据读写请求包括:S302.前置服务器处理元数据读请求:客户端与任意一个前置服务器连接并发出元数据读请求,前置服务器在接收到客户端的读请求时,按照下述流程处理:接收到该读请求的前置服务器通过前置元数据服务器集群通信确定客户端要读取的元数据是否全部存储在前置元数据服务器集群中,如果客户端要读取的元数据全部存储在前置元数据服务器集群中,那么该前置服务器直接从前置元数据服务器集群中读取所述元数据并返回给客户端。所述的元数据动态管理方法,其中:如果客户端要读取的元数据完全不存储在前置元数据服务器集群中,接收到该读请求的前置服务器发送读请求至非前置元数据服务器集群,非前置元数据服务器集群从硬盘中调取客户端所需的元数据,并将所述元数据返回给接收到该读请求的前置服务器,并由该前置服务器返回给客户端.所述的元数据动态管理方法,其中:如果客户端要读取的元数据部分存储在前置元数据服务器集群中,前置服务器首先发送读请求至前置元数据服务器集群和非前置元数据服务器集群,前置元数据服务器集群中的前置服务器将所需的部分元数据返回给接收到该读请求的前置服务器,非前置元数据服务器集群从硬盘中调取客户端所需的部分元数据,并将所述元数据返回给接收到该读请求的前置服务器;收到该读请求的前置服务器将收到的两部分元数据进行聚合处理,处理后将元数据返回给客户端;所述的元数据动态管理方法,其中还包括:S4.前置元数据服务器集群向非前置元数据服务器集群同步最新数据:主前置服务器在每自然日的预定时刻解析此前置服务器记录的日志,对于同一个目录、文件,只保留最新的元数据日志,实现日志压缩;解析完毕后,主前置服务器启动新的同步线程,按照压缩后的日志依次向非前置元数据服务器集群中发起写请求,将最新元数据同步至非前置元数据服务器集群的硬盘中。所述的元数据动态管理方法,其中:主前置服务器完成一个元数据的同步后,即逐步删除各前置元数据服务器中各服务器内存中存储的该元数据,直至删除掉全部的元数据。所述的元数据动态管理方法,其中:前置元数据服务器集群在处理读写请求时,记录每个目录、文件的访问负载。所述的元数据动态管理方法,其中:访问负载如下:一次读请求计为1,一次修改请求计为2,一次创建请求计为3,一次删除请求计为2。所述的元数据动态管理方法,其中:每个文件的负载因子等于:读请求次数*1+写请求次数*2+创建请求次数*3+删除请求次数*2;每个目录的负载因子等于:读请求次数*1+写请求次数*2+创建请求次数*3+删除请求次数*2,并加上该目录下所有目录、文件负载因子的总和。所述的元数据动态管理方法,其中还包括S5.重新划分元数据服务器集群的命名空间:主前置服务器计算得出每个目录、文件的负载因子,并与主前置服务器中保存的上一次计算的负载因子做平均;并根据此负载因子平均数,识别出负载因子超过预先设置的负载阈值的目录、文件,并由前置服务器将对应的超过负载阈值的目录、文件的元数据进行重新划分。所述的元数据动态管理方法,其中划分方式如下:1)如果某目录下有多个子目录,且各子目录负载因子近似,则将各子目录拆分存储在不同的元数据服务器集群服务器中;2)如果某目录下有多个子目录,且各子目录负载因子差别较大,则对高负载因子的子目录执行步骤1;3)如果某目录下只有一个子目录,则将各子目录拆分存储在不同的元数据服务器集群服务器中;4)如果某目录下有多个文件,且各文件负载因子近似,则将各文件拆分存储在不同的元数据服务器集群服务器中;5)如果某目录下只有一个文件,则由主前置服务器将该文件元数据存储在前置元数据服务器集群的内存中,同时设置该元数据的最大存活时间。一种分布式文件系统,包括元数据服务器集群,其中:所述元数据服务器集群由多台元数据服务器组成,所述元数据服务器集群包括前置元数据服务器集群,和非前置元数据服务器集群;客户端发起的所有的元数据读写请求,均由前置元数据服务器集群统一处理,且写请求中的元数据仅保存在前置元数据服务器集群的内存中。所述分布式文件系本文档来自技高网...

【技术保护点】
1.一种分布式文件系统的元数据动态管理方法,其特征在于该方法包括如下步骤:S1.在元数据服务器集群中选择多台服务器作为前置服务器以构成前置元数据服务器集群,元数据服务器集群中的其余元数据服务器构成非前置元数据服务器集群;客户端发起的所有的元数据读写请求,均由前置元数据服务器集群统一处理,且写请求中的元数据仅保存在前置元数据服务器集群的内存中;S2.启动前置服务器;S3.处理客户端的元数据读写请求。

【技术特征摘要】
1.一种分布式文件系统的元数据动态管理方法,其特征在于该方法包括如下步骤:S1.在元数据服务器集群中选择多台服务器作为前置服务器以构成前置元数据服务器集群,元数据服务器集群中的其余元数据服务器构成非前置元数据服务器集群;客户端发起的所有的元数据读写请求,均由前置元数据服务器集群统一处理,且写请求中的元数据仅保存在前置元数据服务器集群的内存中;S2.启动前置服务器;S3.处理客户端的元数据读写请求。2.根据权利要求1所述的元数据动态管理方...

【专利技术属性】
技术研发人员:宋潇豫陈宇马俊杰
申请(专利权)人:天固信息安全系统深圳有限责任公司
类型:发明
国别省市:广东,44

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

1