高性能计算机体系结构的发展变化,使得性能、可扩展性、安全性、可管理性都会出现瓶颈。而对象存储技术可以轻易突破这种瓶颈。本专题以对象存储技术为引,通过回顾分布式文件系统的发展,并对相关技术进行深入剖析,让读者对分布式文件系统有一个全景式的了解。最后,通过构建Lustre系统的一个实例,让你切实感受到分布式文件系统的巨大威力。
随着网络技术的飞速发展,网络化存储系统逐渐成为主流。网络化存储系统能否成功,必须有效解决以下三个主要问题:第一,提供高性能的存储,在I/O级和数据吞吐率方面能满足成百上千台规模的集群服务器聚合访问需求;第二,提供安全的共享数据访问,便于集群应用程序的编写和存储的负载均衡;第三,提供强大的容错能力,确保存储系统的高可用性。
目前,国际上主流的网络化存储结构主要有存储局域网(SAN,Storage Area Network)和网络附加存储(NAS,Network-attached Storage)。SAN采用交叉开关结构,可为较大数目的结点机和存储设备提供一个快速、可扩展的互连。它采用SCSI块I/O的命令集,通过在磁盘或 FC(Fiber Channel)级的数据访问,提供高性能的随机I/O和数据吞吐率,具有高带宽、低延迟的优势,在高性能计算中占有一席之地。如2004年12 月,TOP 500排名第二的SGI Columbia就采用基于SAN的CXFS文件系统,实现高性能文件存储。但是,SAN系统的价格较高,且在可扩展性方面仍有一定局限性,随着SAN连接规模的扩大,其安全性也存在着隐患。NAS采用NFS或CIFS命令集访问数据,以文件为传输协议,通过TCP/IP实现网络化存储,支持多个平台间的数据共享,具有可扩展性好、价格便宜、用户易管理等特点。但是,由于NAS的协议开销高、带宽低、延迟大,不利于在高性能I/O集群中应用,因此,通常用于与其他异构系统的互连,如IBM BlueGene通过NFS与外部存储系统互联。
对象存储技术
对象存储综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了具有高性能、高可靠性、跨平台以及安全的数据共享的存储体系结构。
对象存储体系结构
对象存储具有高性能、高可靠性。其组成包括智能存储接口和设备,以及分布的元数据管理。在对象存储系统中,客户端可以直接访问存储设备,减少了数据存储路径中的控制路径。
在对象存储中,使用对象存储设备(Object-based Storage Device,OSD)进行物理的数据存储。OSD是连接到网络上的存储设备。它可以是磁盘、磁带或者其他的存储介质,并具有自我管理功能。
在当前的存储结构中,元数据服务器主要提供两种功能:为客户端提供数据的逻辑视图,包括文件名、目录构成等;为客户端提供物理视图,描述数据在物理介质上的存放。在对象存储中,数据的逻辑视图和物理视图被分开,元数据服务器只负责逻辑视图,物理视图则由OSD自己进行管理。由于逻辑视图只占用了文件服务器10%的元数据负载,因此,这种划分大大减轻了元数据服务器的负担,使得存储系统的扩展成为可能。
对象存储技术的特性
OSD的结构特性使其在处理高性能计算环境中的存储请求时具有较大优势,主要体现在以下几方面。
◆性能优势。存储体系结构的最大竞争力在于存储性能。对象存储由于其存储设备的智能化以及访问的并行化,可以最大限度地利用网络的带宽,提高应用的存储能力。
◆存储设备的智能化。Object的自我管理功能大大增强了存储设备的智能化,降低了整个系统的管理负担,使其更高效。
◆数据的共享更容易。在对象存储系统中,任何客户端都可以通过访问提供的标准文件接口,访问存储设备上的数据,其Cache策略保证了客户端访问数据的一致性,使得文件级的数据共享更容易。
◆管理更方便。OSD的自我管理减少了系统管理员的工作量,提高了管理质量。管理员只需要关注存储系统的逻辑视图,不需要知道设备的细节。此外,OSD的智能化使其可对应用访问模式进行统计,并根据统计结果更有效地组织Object,提高设备的空间利用效率和访问效率。
◆更好的安全性。同块设备不同,Object可利用自身的属性对用户访问进行验证,只有通过验证的请求才能执行。