FAST 2008 Paper 分布式元数据论文阅读笔记整理
背景
Panasas文件系统使用对对象存储设备(OSD)的并行和冗余访问、按文件RAID、分布式元数据管理、一致的客户端缓存、文件锁服务和内部集群管理,以提供可扩展、容错、高性能的分布式文件系统。存储系统的集群化设计和客户端驱动RAID的使用通过并行访问跨OSD存储节点分条的文件数据,为许多并发文件系统客户端提供了可扩展的性能。RAID恢复是由元数据管理器集群并行执行的,随着存储系统越来越大,分散的数据放置会产生可扩展的RAID重建率。
本文方法
本文介绍了存储集群的I/O、元数据和恢复操作的性能度量标准。这些存储集群的大小范围从10到120个存储节点,1到12个元数据节点,文件系统客户端数范围从1到100个计算节点。生产安装多达500个存储节点、50个元数据管理器和5000个客户端。
元数据管理
系统中有几种元数据,包括从对象ID到块地址集的映射、将文件映射到对象集、文件系统属性(如ACL和所有者)、文件系统命名空间信息(即目录),有关存储集群本身的配置/管理信息。我们为每种元数据提供了具体的实现,在对象存储设备和元数据管理器之间分配元数据管理,以提供可扩展的元数据管理性能,并允许为每种元数据类型选择最佳机制。
块级元数据
块级元数据由OSDFS内部管理,OSDFS是为存储对象而优化的文件系统。使用浮动块分配方案,其中数据、块指针和对象描述符被批处理成大型写入操作。写入缓冲区由集成的UPS保护,在电源故障或系统死机时会将其刷新到磁盘。
文件级元数据
包括用户可见的信息,如所有者、大小、修改时间,以及标识哪些对象存储文件以及如何在这些对象上划分数据条带的内部信息(即文件的存储映射)。我们的系统将此文件元数据存储在用于存储文件数据的N个对象中的两个对象的对象属性中。其余的对象具有基本属性,如它们各自的长度和修改时间,但更高级别的文件系统属性仅存储在两个属性存储组件上。
系统级元数据
关于整个系统本身的信息。我们选择了一个模型,该模型具有一小组复制的系统管理器,每个系统管理器存储一个系统配置元数据的副本。
总结
本文介绍了Panasas并行文件系统的设计。存储节点运行OSDFS对象存储,管理器节点运行文件系统元数据管理器、群集管理器和Panasas文件系统客户端。可扩展性来自于每个存储节点的平衡特性,包括磁盘、CPU、内存和网络带宽资源。良好的性能来自于利用非易失性内存来隐藏延迟和保护缓存,以及在块、文件和系统级别跨存储群集中的存储节点和管理器节点分发文件服务器元数据的能力。通过按文件RAID保护在对象上剥离文件,可以为具有多个客户端的环境提供可扩展的性能,并降低故障操作系统的重建率。