存储 频道

并行文件系统构筑高性能计算数据基石

COSMOS:自主研发的实用型文件系统

    COSMOS 并行系统是我们国家自己研制的一种可扩展单一映象集群的文件系统,它部署在曙光 3000 超级服务器上,具有很好的操作性能。COSMOS 的底层基于AIX文件系统JFS,系统中每个节点通过高速网络互相连接,COSMOS 构建于这些操作系统平台之上,向用户提供文件服务。

COSMOS分片数据管理模式

    在整个COSMOS 并行系统中,系统是由核心相关层(kernel)和用户层两部分组成。核心层是在虚拟文件系统一级中实现的,它接收来自逻辑文件系统的 I/O 请求,并以一定的格式转发给用户层。而 COSMOS 的用户层是由 3 类用户进程构成,被分别称为客户(client)、元数据管理器(manager)和存储服务器(storage),它们协调工作,共同完成核心层转发过来的I/O请求。

    其中storage实现具体的数据存储, client完成数据及元数据的缓存,而manager负责缓存一致性的维护及元数据的存储管理。需要存取 COSMOS 文件系统的节点要配置 client,本地磁盘上存有 COSMOS 子文件数据的节点要配置 storage,对于 manager,通常是平均每数个节点才配置一个。
   
    COSMOS 中文件数据的定位是由管理服务器来完成的,并且在 COSMOS 中实现的是分布式的元数据管理机制以提供可扩展的定位服务。另外,管理服务器的另一个任务是维持缓存的一致性。在 COSMOS 中,每一个管理服务器负责维护整个文件系统的一个子集的位置信息,管理服务器可以应用这种信息来转发 I/O 需求到正确的位置信息(合作缓存或附属存储器)。管理服务器也控制对相同数据块的并行存取。COSMOS 利用一个管理服务器映射来实现分布式元数据管理。这种映射包括了一系列的机器标志符,运用这个可以知道哪个机器管理文件系统的哪一部分子集。

    相比较 xFS,COSMOS 的低层是基于 JFS 来实现的,没有实现日志管理功能,因此元数据的内容和组织是不同的。在 COSMOS 中,没有必要记录在一个节点中记录每个数据块的磁盘位置信息,而是“块组 ID,起始节点”对信息被记录在节点中。起始节点标志了起始块存储在哪个机器上。因为不同的缓存一致性协议,缓存相关的元数据的内容和组织也是不相同的。为了减少网络的负载,COSMOS 直接将元数据和目录文件存储在管理服务器上,这是与 xFS 不同的另一个方面,在 xFS 中,目录文件和元数据都存储在存储服务器上,这是由 xFS 采用的日志结构所决定的。

0
相关文章