论文部分内容阅读
人类社会的快速发展使得人类获取信息的能力逐步加强,各种应用模式层出不穷,由此产生的数据量急剧增加,数据类型也日益丰富。大规模计算机集群系统面临着对海量的、非结构化的数据进行高效分析处理的问题。元数据密集型应用作为大规模计算机集群系统的一种典型应用,给存储系统的底层并行文件系统带来的严峻挑战。如何构建一个高性能、高可靠性和可扩展的元数据管理方法成为当前并行文件系统研究领域的一个重要课题。本文在现有并行文件系统框架的基础上,研究面向元数据密集型应用的并行文件系统元数据管理方法。在一个混合式并行文件系统架构中,针对元数据分布、路径遍历优化、元数据索引、小文件I/O和大目录自适应扩展等问题提出了一系列优化技术和方法。本文的主要工作体现在:1.提出了一种面向元数据密集型负载的混合式并行文件系统结构(第二章)现有的并行文件系统受限于其元数据管理方法,在处理元数据密集型负载时性能不佳。本文提出一种基于已有并行文件系统的混合式并行文件系统Moon FS系统结构,致力于为用户提供融合、一致的全局文件系统视图和高效的元数据操作性能。在该结构中,小文件和元数据由元数据管理模块统一管理,而大文件则直接映射到底层共享并行文件系统中。通过将小的、随机的和较慢的更新合并成大的、顺序的和较快的写操作,并存储于底层共享文件系统中,从而充分利用底层共享并行文件系统的大文件读写性能优势。2.提出了一种基于客户端无状态缓存和服务端目录复制的元数据管理方法(第三章)为了提高多元数据服务器环境下的元数据的访问性能,本文提出了一种基于客户端无状态缓存和目录复制的元数据管理方法。该方法基于目录粒度分布元数据,并通过一致性哈希方法将同一目录下的子目录和子文件映射到同一元数据服务器上,从而保持了目录的局部性和元数据服务器的负载均衡。同时,基于客户端无状态缓存和目录复制的优化方法能够有效减少路径遍历和权限检查导致的RPC开销。经实验验证,该元数据管理方法能够有效解决路径遍历和权限验证的RPC放大问题,优化并行文件系统的元数据访问性能。3.提出了一种基于LSM-tree的元数据及小文件索引方法(第四章)现有的元数据管理方法大多采用B-tree或Copy-on-Write tree的索引方式管理元数据,这些读优化的索引结构在大量元数据并发写的情况下开销较大,性能较低。本文提出了一种基于目录粒度列分割和LSM-tree(Log-structured merge tree)的元数据索引管理方法,对文件元数据操作与LSM-tree操作映射、名字空间划分、元数据表现形式、元数据存储、元数据操作优化等方面进行了详细介绍。同时,本文提出了一种基于LSM-tree和延迟key分配的小文件写优化方法,有效降低了LSM-tree的compaction操作开销。原型系统实验结果表明,这两种优化相比于其他典型索引结构更高效。4.提出了一种基于乐观同步的目录扩展方法(第五章)现有的元数据管理方法在处理有大目录需求的应用时往往性能不佳。本文提出了一种基于乐观同步的目录自适应扩展方法。通过将大目录自适应扩展到多个元数据服务器上,不仅能保持负载均衡,而且能充分发挥元数据服务器集群的性能优势。与此同时,客户端能够容忍过时的目录映射信息,保证在弱一致性条件下的正确访问。原型系统实验表明,基于乐观同步的目录自适应扩展方法能够有效提高大目录的元数据服务性能。