当前位置: 首页 > 专利查询>清华大学专利>正文

基于键值key-value存储的分布式文件系统元数据管理方法技术方案

技术编号:6055072 阅读:847 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种基于键值key-value存储的分布式文件系统元数据管理方法,主要涉及文件系统领域。该方法包括以下步骤:服务器存储文件和目录的元数据,并以位图的方式存储目录的子对象;对子对象的元数据进行修改操作;后台进程定期扫描所述操作日志,对超时操作进行垃圾回收。本发明专利技术的基于键值key-value存储的分布式文件系统元数据存储管理方法,具有比传统分布式文件系统更好的扩展性。同时,其采用日志记录和垃圾回收的管理模式,在对元数据修改过程中,保持了元数据的一致性。

Distributed file system metadata management method based on key value key-value storage

The invention discloses a metadata management method of a distributed file system based on key value key-value storage, which mainly relates to the file system field. The method comprises the following steps: metadata server storage files and directories, and stored in a subdirectory of the bitmap object metadata; sub object modify operation; background processes regularly scan the operation log, the timeout for garbage collection. The distributed file system metadata storage management method based on key value key-value storage has better expansibility than the traditional distributed file system. At the same time, it adopts the management model of logging and garbage collection, and maintains the consistency of metadata in the process of metadata modification.

【技术实现步骤摘要】

本专利技术涉及文件系统领域,特别涉及一种基于键值key-value存储的分布式文件 系统元数据存储管理方法。
技术介绍
文件系统的元数据包括目录和文件的元数据,以及目录结构等。文件的元数据包 括文件名,权限,时间,文件大小,以及数据块的分布等。目录的元数据包括目录名、权 限、时间等主要属性,以及它所包含的子文件和子目录等目录结构相关内容。文件系统元数 据管理的一个难点是既要提供高效的元数据访问,又要为元数据的修改提供灵活的接口。分布式文件系统因其海量存储的优势,在互联网领域正逐渐取代传统的本地文件 系统。Ceph是典型的分布式文件系统,其采用基于对象的分布式存储集群(RADOS,Reliable Autonomic Distributed Object Storage)来存储文件系统的元数据;RADOS可以为C印h 提供可扩展、可靠的对象存储,但是C^ph把目录也作为一个单独的对象,目录的子对象的 关联信息都存储在目录对象中;当很多进程并发地在Ceph的某个目录中创建大量子对象 时,为了保证元数据的一致性,这些操作只能串行进行,造成系统性能瓶颈。key-value存储可以为分布式文件系统元数据存储管理带来更好的扩展性,如果 要处理的数据持续增加,多加机器就可以了,不存在系统瓶颈问题。但是基于key-value存 储的分布式文件系统元数据存储管理会带来一些新的挑战分布式文件系统元数据的操作 一般涉及多个步骤,涉及多个key-value操作,而key-value存储不支持多个key-value的 事务操作。因此如何保证在某个步骤中断后,能够通过一定的措施实现垃圾清理,保证元数 据的一致性,是一个需要解决的技术问题。
技术实现思路
(一)要解决的技术问题本专利技术要解决的技术问题是如何提供一种基于键值key-value存储的分布式文 件系统元数据管理方法,并且保证在对元数据的操作过程中,保持元数据的一致性。( 二)技术方案为解决上述技术问题,本专利技术提供一种基于键值key-value存储的分布式文件系 统元数据管理方法,该方法包括以下步骤Sl 服务器存储文件和目录的元数据,并以位图的方式存储目录的子对象;所述 子对象包括子文件和子目录;S2 对子对象的元数据进行修改操作;在进行所述修改操作之前,以所述子对象 的父目录的目录内容标识dirhdl-ID和所述子对象的位图索引构造键key,以当前时间为 值value,记录到操作日志中;S3 后台进程定期扫描所述操作日志,对超时操作进行垃圾回收。优选地,所述服务器中存储三个key-value表日志表log. tbl、元表meta.tbl和 目表 entry, tbl ;所述文件和目录的元数据的基本属性记录,以及所述目录的元数据的目录内容记 录存储在所述元表meta. tbl中;所述目录与其子对象的关联关系存储在所述目表entry, tbl中。优选地,所述文件的元数据的基本属性记录,以文件标识doc-ID为键key,以文件 的基本属性信息为值value ;所述目录的元数据的基本属性记录,以目录标识dir-ID为键key,以目录的基本 属性信息为值value ;所述目录的元数据的目录内容记录,以目录内容标识dirhdl-ID为键key,以目录 所包含的子对象的位图结构为值value。优选地,所述目录与其子对象的关联关系包括所述目录标识dir-ID与第一分割字符构成键key,所述目录内容标识dirhdl-ID 为值value,两者构成第一关联;所述目录内容标识dirhdl-ID通过第二分割字符连接所述子对象的位图索引构 成键key,子对象标识和子对象名构成值value,两者构成第二关联;所述目录内容标识dirhdl-ID通过第三分割字符连接所述子对象名构成键key, 子对象位图索引为值value,两者构成第三关联。优选地,所述步骤S2中,所述对子对象的元数据进行修改包括创建所述子对象 的元数据和删除所述子对象的元数据。优选地,创建所述子对象的元数据具体包括以下步骤S2. 1. 1 创建所述子对象的基本属性记录;如果所述子对象为目录,创建其目录 内容记录和第一关联;S2. 1.2 写操作日志;S2. 1.3:创建所述第三关联、第二关联,修改所述子对象的父目录的目录内容记 录;S2. 1.4 删除操作日志。优选地,删除所述子对象的元数据具体包括以下步骤S2. 2. 1 写操作日志;S2. 2. 2:修改所述子对象的父目录的目录内容记录,删除所述第三关联、第二关 联;S2. 2.3 删除操作日志;S2. 2. 4 删除所述子对象的基本属性记录;如果所述子对象为目录,删除其目录 内容记录和第一关联。优选地,所述步骤S3中,所述垃圾回收具体包括以下步骤S3. 1. 1 修改所述父目录的目录内容记录;S3. 1. 2 解析所述操作日志中的键key,得到所述子对象标识和所述子对象名,删除所述第三关联、第二关联;S3. 1. 3 删除子对象的基本属性记录;如果所述子对象为目录,解析得到其目录5内容标识,删除其目录内容记录和第一关联;S3. 1. 4 从操作日志中删除超时记录。优选地,所述步骤S2中,所述键key由第四分割字符连接所述父目录的目录内容 标识dirhdl-ID和所述子对象的位图索引构成。优选地,所述步骤S3中,判断操作是否超时包括以下步骤S3. 0. 1 解析所述键key,得到操作时间opTime ;S3. 0. 2 用当前时间curTime减去所述操作时间opTime,判断其差值是否大于超 时标准值timeout ;如果大于,则操作超时;否则,操作未超时。(三)有益效果本专利技术提供了一种基于键值key-value存储的分布式文件系统元数据存储管理 方法,其采用键值key-value存储对分布式文件系统的元数据进行管理,具有比传统分布 式文件系统更好的扩展性。同时,其采用日志记录和垃圾回收的管理模式,在对元数据修改 过程中,保持了元数据的一致性。附图说明图1是本专利技术实施例所述基于键值key-value存储的分布式文件系统元数据存储 管理方法流程图;图2是本专利技术实施例所述基于键值key-value存储的分布式文件系统元数据存储 结构图;图3是本专利技术实施例所述创建子对象过程数据结构图;图4是本专利技术实施例所述删除子对象过程数据结构图;图5是本专利技术实施例所述垃圾回收过程数据结构图。具体实施例方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施 例用于说明本专利技术,但不用来限制本专利技术的范围。图1是本专利技术实施例所述基于键值key-value存储的分布式文件系统元数据管理 方法流程图,如图1所示,该方法包括以下步骤Sl 服务器存储文件和目录的元数据,并以位图的方式存储目录的子对象;所述 子对象包括子文件和子目录。S2 对子对象的元数据进行修改操作;在进行所述修改操作之前,以所述子对象 的父目录的目录内容标识dirhdl-ID和所述子对象的位图索引构造键key,以当前时间为 值value,记录到操作日志中。所述键key和值value作为日志记录存储在所述服务器的日 志表log. tbl中。S3 后台进程定期扫描所述操作日志,对超时操作进行垃圾回收。本专利技术实施例的方法采用键本文档来自技高网
...

【技术保护点】
1.一种基于键值key-value存储的分布式文件系统元数据管理方法,其特征在于,所述方法包括以下步骤:S1:服务器存储文件和目录的元数据,并以位图的方式存储目录的子对象;所述子对象包括子文件和子目录;S2:对子对象的元数据进行修改操作;在进行所述修改操作之前,以所述子对象的父目录的目录内容标识dirhdl-ID和所述子对象的位图索引构造键key,以当前时间为值value,记录到操作日志中;S3:后台进程定期扫描所述操作日志,对超时操作进行垃圾回收。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨广文刘松彬黄小猛
申请(专利权)人:清华大学
类型:发明
国别省市:11

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

1