一种分布式文件系统及其数据块一致性管理的方法技术方案

技术编号:2821390 阅读:528 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种分布式文件系统及其数据块一致性管理的方法,其方法包括:由文件定位寄存服务器生成数据块对应的计数器值,同时存放在文件访问服务器和文件定位寄存服务器上;在对该数据块写数据时,文件访问客户端同时向主、备文件访问服务器写数据,对写数据正常的文件访问服务器中的数据块计数器值进行修改;所述文件定位寄存服务器根据主、备文件访问服务器上报的对应数据块计数器值,以最大计数器值之数据块为正常和有效。本发明专利技术系统及其方法由于采用了数据块计数器的方式,对每个数据块记录其是否异常和需要重构,在海量集群系统中,可以简单高效地管理冗余备份的数据块,保持其之间的一致性,并且实现重构异常的备份数据块简单准确。

【技术实现步骤摘要】

本专利技术涉及一种计算机应用领域的大容量存储分布式文件系统及其管 理方法,具体涉及的是一种大规模分布式数据处理的文件系统及其冗余备 份数据块一致性校验和备份管理的方法。
技术介绍
现有"R术中,大规^莫分布式数据处理的文件系统中,为了保证数据处 理的高效和元数据的集中管理, 一般都设计成一个元数据的集中管理服务器(如文件定位寄存服务器,FLR, File Location register),和其他若干 个数据文件存放服务器(如文件访问服务器,FAS, File Access Service) 的架构。用户访问数据时都要先通过文件访问客户端(FAC, File Access Client) 向FLR询问数据的具体存放位置,然后由FAC再向具体的FAS发起读写 数据请求。FAS管理凄t据文件的方式是将文件数据划分为一个一个的数据 块(CHUNK),每个文件由若干个数据块组成。数据块和文件的对应方式 由统一标识符FILEID来标识, 一个文件具有一个不同的FILEID,每个数 据块CHUNK的标识CHUNKID是FILEID + CHUNK编号标识。文件的所 有CHUNK分布信息由FLR统一放入数据库中管理。在大容量的集群系统中,通常数据块是冗余备份的,也就是说对应数 据块存在在多个FAS上。但现有技术中这样备份的两个数据块很难保证一 致性,这是一个比较严重的问题,其主要出现在如下情况中在写操作的 过程中,如何保证同时在两个FAS上写出对应份数据;如果有一个FAS出现异常或者损坏的情况下,该FAS上的数据如何能重构得到;如果在写的 过程中,FLR出现异常,如何保证FLR记录和FAS的一致性。由于涉及到海量的数据块,现有技术不可能对数据块采用MD5等常规 校验方法,因为这会严重影响处理的性能。因此,现有技术还有待于改进和发展。
技术实现思路
本专利技术的目的在于提供一种分布式文件系统及其数据块一致性管理的 方法,为解决上述现有技术的问题,实现对海量数据的数据块进行校验以 及必要时的重构。本专利技术的技术方案包括一种分布式文件系统中lt据块一致性管理的方法,其包括以下步骤A、 在生成每一数据块时,由文件定位寄存服务器生成其对应的计数 器值,同时存放在文件访问服务器和文件定位寄存服务器上;B、 在对该数据块写数据时,文件访问客户端同时向主、备文件访问服 务器写数据,如果都写数据成功,则不对计数器值进行修改;否则,对写 数据正常的文件访问服务器中的数据块计数器值按预定步长进行增加;C、 所述文件定位寄存服务器根据主、备文件访问服务器上报的对应数 据块计数器值,以最大计数器值之数据块为正常和有效,对异常之数据块 进行重构。所述的方法,其中,所述步骤B还包括Bl、在更改数据块数据时,所述文件定位寄存服务器给所述文件访问 客户端返回该数据块所在的主、备文件访问服务器信息,所述文件访问客 户端向所述主、备文件访问服务器发起修改数据操作;B2、如果主、备文件访问服务器更改数据成功,则不发起该数据块计 数器值的修改;否则,对正常更改数据的数据块所在文件访问服务器的计数器值进行按预定步长增加,同时按预定步长增加所述文件定位寄存服务 器上的对应数据块的计^t器值。所述的方法,其中,所述步骤B2中对数据块计数器值的增加之预定步 长为每次加1。所述的方法,其中,所述步骤C还包括所述文件定位寄存服务器在 启动时刻和以一定的时间间隔向所述文件访问服务器发起数据块校验请 求。所述的方法,其中,所述数据块校验过程还包括Dl、所述文件访问服务器把本地的所有数据块标识上报给文件定位寄 存服务器,所述文件定位寄存服务器将先收到的数据块标识组成HASH表, 后续收到的数据块标识在该HASH表中查找,查找成功,表示是一对主、 备数据块;D2、记录下所有对数据块标识,所述文件定位寄存服务器校验每个数 据块标识。所述的方法,其中,所述步骤D1中所述文件定位寄存服务器将每个 主、备文件访问服务器作为一组,将整个集群数据块分成若干组。 所述的方法,其中,所述步骤D2还包括D21、检查该数据块在所述文件定位寄存服务器中是否有记录;如果 没有则直接删除;否则,转入步骤D22;D22、比较所述文件定位寄存服务器数据库中和各个文件访问服务器 的对应数据块之计数器值,以最大值之数据块为有效。所述的方法,其中,所述步骤D22还包括D23、如果所述文件定位寄存服务器上的数据块计数器值最大,则在 所述文件定位寄存服务器数据库中删除该数据块的记录。 所述的方法,其中,所述步骤D22还包括D241、如果有文件访问服务器上具有最大的数据块之计数器值,则由 所述文件定位寄存服务器对计数器值小的数据块所在的其他文件访问服务 器发起数据块重构请求,从有效数据块复制到异常的数据块上;D242、数据拷贝完成后,修改各个文件访问服务器上对应数据块的计 数器值同最大值一致。所述的方法,其中,所述步骤D22还包括D25、如果所述文件定位寄存服务器上的数据块之计数器值比所述文 件访问服务器上的小,则同步修改该文件定位寄存服务器数据库中的该对 应数据块之计数器值。一种所述方法的分布式文件系统,包括通过网络连接的一文件访问服 务器、至少一文件定位寄存服务器;所述文件访问服务器对应连接一数据 库;用户通过一文件访问客户端向所述文件访问服务器及所述文件定位寄 存服务器进行写数据请求;其中,所述文件访问服务器至少设置有主、备 文件访问服务器;并且所述文件访问客户端用于向所述主、备文件访问服务器的对应数据块 写数据,并对写数据正常的文件服务器之数据块计数器值按预定步长增加;所述文件定位寄存服务器用于生成数据块对应的计数器值,并根据主、 备文件访问服务器上报的对应数据块计数器值,控制对异常之数据块进行 重构。本专利技术所提供的, 由于采用了数据块计数器的方式,对每个数据块记录其是否异常和需要重 构,在海量集群系统中,可以筒单高效地管理冗余备份的数据块,保持其 之间的一致性,并且可以重构异常的备份数据块,其实现简单准确。附图说明图1是本专利技术方法及时写或更改数据时数据块计数器的修改流程示意图;器FAS上报数据块CHUNK的流程图;图3是本专利技术方法的文件定位寄存服务器FLR具体校验方法流程示意图;图4为本专利技术分布式文件系统的结构示意图。具体实施方式以下结合附图,将对本专利技术的各较佳实施例进行更为详细的说明。 本专利技术分布式文件系统及其数据块一致性管理的方法,提出了数据块 计数器即CHUNK计数器的概念,针对每个数据块CHUNK都给予一个计 数器,表示该数据块修改的次数。每次修改CHUNK都将计数器增加,这 样如果主备数据块CHUNK的计数器不一致,则表示有无效数据块CHUNK 存在,可相应对异常的数据块进行重构。本专利技术方法很好地解决了主备数据块CHUNK的管理工作,其主要的 实现内容包括在生成数据块CHUNK时,都由文件定位寄存服务器FLR统一生成, 第一次创建的数据块其CHUNK计数器值为1。该值同时存放于文件访问服 务器FAS上和文件定位寄存服务器FLR上。在用户发起写CHUNK数据的过程中,如图l所示,FAC同时写两份 数据给主、备FAS,如果主、备FAS写数据都是成功的,则不发起CHUNK 计数器的修改流程。如果本文档来自技高网
...

【技术保护点】
一种分布式文件系统中数据块一致性管理的方法,其包括以下步骤: A、在生成每一数据块时,由文件定位寄存服务器生成其对应的计数器值,同时存放在文件访问服务器和文件定位寄存服务器上; B、在对该数据块写数据时,文件访问客户端同时向主、备文件访问服务器写数据,如果都写数据成功,则不对计数器值进行修改;否则,对写数据正常的文件访问服务器中的数据块计数器值按预定步长进行增加; C、所述文件定位寄存服务器根据主、备文件访问服务器上报的对应数据块计数器值,以最大计数器值之数据块为正常和有效,对异常之数据块进行重构。

【技术特征摘要】

【专利技术属性】
技术研发人员:杜守富王瑞丰程剑
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94[中国|深圳]

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

1