论文部分内容阅读
分布式存储系统是云计算领域的核心技术。随着存储即服务这一云计算商业模式的出现,云端存储的数据量正在迅速增大,人们对数据安全、数据共享、数据管理等方面的要求也开始逐步提高。云存储服务提供商的后台正面临着巨大的存储压力。元数据是分布式存储系统中的一个概念,是描述所存储数据命名空间和属性的信息。由于元数据的性质及其操作方式较普通数据复杂,对性能、并发性、安全性的要求极高,因此,对系统中元数据的管理一直是分布式存储系统设计的重点和难点。本文以自行开发的大规模分布式文件系统C-STORE为背景,详细阐述了其元数据管理子系统的设计与实现。该子系统利用三层散列机制进行架构,将元数据分桶存储并进行负载均衡调度,使系统具备了较好的可扩展性。在存储上,元数据管理子系统充分利用了本地文件系统的高效特性,尽可能的提高各方面性能;在组织上,元数据基于用户进行隔离,为用户的数据安全提供了保障。有效且完备的日志管理和同步被设计出来,满足用户多点登录时文件系统的一致性需求。该子系统还引入了Master-Standby双副本同步机制,保证了系统元数据的可用性。元数据管理子系统通过C++在Linux环境下采用异步事件驱动这一高效网络编程模型实现,充分利用服务器的软硬件资源,提升了系统的吞吐量。经测试,元数据管理子系统可以充分满足用户对面向公有云存储服务在元数据管理各方面的需求。在性能上,相较于当前业界已经十分成熟且广泛使用的PVFS,优势明显。