专家观点:pNFS与文件系统的未来

高性能文件系统,比如Panasas PanFS、Sun QFS、Quantum StorNext、IBM GPFS和HP File Services,可以为存储实施带来很大的好处。

以DigitalFilm Tree为例子,这家公司位于好莱坞,为娱乐业提供后期处理和视觉特效(VFX)服务。它最近必须对它的系统进行改进,以便处理如下影视的视觉特效:Showtime出品的《单身毒妈(Weeds)》,CW出品的《人人都恨克里斯》,NBC出品的《实习医生风云(Scrubs)》,以及李连杰的电影《功夫之王》。

在该公司所使用的存储系统中,有苹果的Xsan和惠普的StorageWorks阵列、QLogic的交换机,以及其他几家存储厂商的设备。该公司同时还使用了几种不同操作系统,工作人员使用的是苹果机和普通个人电脑。

DigitalFilm Tree的创始人兼首席执行官Ramy Katrib 说:“我们电视制作工作需要速度,因此工作流是非线性的,而且我们还要管理好多达100TB的数据。StorNext文件系统极大地提升了我们的工作速度,而且我们还不需要增加很多员工。”

但是随着文件系统协议逐渐升级到NFS(网络文件系统),以及并行式NFS(pNFS),NFS是否有可能最终取代其他的专有文件系统?在预测未来发展方向之前,让我们先来看看Sun和NetApp的另外两个高性能文件系统。

Sun Lustre文件系统

Sun微系统公司把Lustre文件系统描述成“世界上最具有可扩展性的并行式文件系统”。在全球10大超级计算机中,有6个使用这个文件系统,而在前100的超级计算机中,使用该文件系统的比例也达到了40%。

Sun Lustre部门主管Peter Bojanic表示:“通过Lustre文件系统,用户可以在一致的命名空间内将容量扩展到PB级,而且还可以为2.5万个以上的客户端提供超过100GB/秒的速度。Lustre的用户已经包括Livermore超级计算机、橡树岭国家实验室、Sandia国家实验室等。对于这些单位来说,大型文件I/O和稳定的高带宽都是非常重要的。”

Lustre文件系统还在石油和天然气、富媒体、内容发布网络等领域得到了推广,这些领域都需要处理包含大文件和小文件的混合工作负荷。

Lustre的一个特色就是它可以在Linux操作系统中作为开源式软件来使用。这也就是为什么Lustre文件系统会和其他HPC(高性能计算)厂商的存储产品整合在一起的缘故,这些HPC厂商包括SGI、戴尔、惠普、Cray和Terascala。

Lustre是一个基于对象的集群式文件系统,它的对象是水平地分布于各个服务器。这就需要一个Lustre MetaData Server(元文件服务器)和数个Lustre Object Storage Servers(对象存储服务器)。文件操作可以绕过元文件服务器,并使用并行的数据路径与集群中的对象服务器相连接。服务器采用了故障备份替换式布置。它可以在多种网络上运行,包括IP网络和InfiniBand。

NetApp WAFL文件系统

NetApp有一个名为WAFL(任意位置写入文件布局)的文件系统。这个文件系统整合了CIFS(通用互联网文件系统)协议、NFS(网络文件系统)协议、HTTP协议、FTP协议、光纤通道协议和iSCSI(互联网小型计算机系统接口)协议,并可以在NetApp的Data ONTAP操作系统下工作。WAFL整合了RAID-DP(独立磁盘冗余阵列-双校验码)。RAID-DP是NetApp所推出的RAID-6的高性能版本。通过RAID-DP,即使两个硬盘同时故障,WAFL也不会损失数据。

WAFL采用了非易失性内存(NVRAM),允许一个存储访问协议目标端在数据写入磁盘之前就对访问请求做出回应,从而提高了访问速度。在WAFL文件系统下,访问请求被记录到NVRAM,而文件系统的修改则被保存在了易失性内存中。在易失性内存写满之后,WAFL会将结果写到 “一致点”(基本上是一个快照),并将一致点写到文件系统所配置的RAID组。

“如果在硬件或软件发生故障之前,一致点没有被写入磁盘,那么在Data ONTAP重启后,NVRAM的日志内容就会指导WAFL做相应的操作,并将一致点写入磁盘”,NetApp NFS部门的高级技术总监Michael Eisler说,“NetApp大部分竞争对手都有快照功能,但是NetApp使用自己的快照技术构建了多种功能,比如文件系统层镜像、备份整合、复制、重复数据删除、数据保留、跨网络存储设备的数据条带分割以及灵活卷等。”

灵活卷(FlexVol)是一种可以和其他灵活卷共享存储池的卷。这种卷可以根据需要随时扩展或收缩——被释放出来的空间则返回到存储池,以便被其他灵活卷所使用。

文件系统的未来

当然,不是所有人都需要高性能。普通文件系统协议的数量更多,比如NFS和CIFS,运行在Solaris上的Sun的开源式ZFS文件系统,以及Red Hat的全局文件系统(GFS)——这种文件系统发端于明尼苏达大学的研究。这些文件系统能够为Linux平台提供高性能服务和数据共享功能。

“基于NFS的解决方案,或SAN(存储局域网)文件系统,并不非常适合于那种存在大量客户端或服务器节点,并需要共享式大型文件访问的存储环境”,Panasa首席营销官Len Rosenthal说,“普通的NAS(网络附加存储)系统适合于电子邮件和其他文档的日常存储环境,也适合于许多互联网型的应用程序,这些环境下的文件通常比较小,因为它们需要在低带宽的公网上进行传输。”

他说,ZFS是一个很好的本地文件系统,但是它没有并行式数据传输功能,也不适合向外扩展型应用程序。同样地,他认为Linux和Unix厂商所推出的本地文件系统主要适合于服务器内的DAS(直连式存储)。同时,NFS将仍然是网络文件访问的标准,但是它将在未来两年内过渡到pNFS。
Rosenthal说:“4.1版本的NFS将支持pNFS,因此未来已经很明朗了。20年来,pNFS是NFS的首次重大性能提升。对于带专有客户端软件的文件系统,比如IBM的GPFS(通用并行文件系统)、EMC的MPFSi(iSCSI多路径文件系统)和Sun的Lustre,它们的前景还不明朗,而pNFS的发展最终有可能使这些文件系统失去立足之地。”

pNFS将是未来高性能计算、共享式文件存储的理想选择。Panasas、Sun、NetApp、IBM和EMC等公司正在积极参与pNFS标准(NFSv4.1)的制定工作。Panasas甚至已经公开声明,随着pNFS标准的出台,它将对它的DirectFLOW协议进行软件修改,以便迁移到pNFS。

pNFS可带来并行式数据传输功能,而且它还可以帮助创建一个标准的NFS客户端访问协议。未来所有主要的Linux发布以及Solaris和AIX等专有Unix版本都将支持NFS。

StorageIO集团的创始人兼高级分析师Greg Schulz也持有类似的看法。

“对于商业型存储环境中一般用途的日常文件和数据共享,近期内,NFS V3或更高版本,加上Windows文件共享,仍然可以胜任;而随着更多的环境迁移到Linux,或者如果这些环境是以Sun的系统为中心的,那么这些环境将考虑ZFS”,Shulz说,“不过,许多其他的环境将会对pNFS抱有更多的兴趣,并考虑pNFS是否可以应用于它们的环境。”

不过,Sun认为它的Lustre文件系统不会很快过时。它认为常规文件系统和高性能文件系统协同运作的时代将很快到来。

“没有任何一个技术可以解决所有的问题,但是通过利用和整合其他技术,我们可以解决很多问题”,Bojanic说,“Lustre和pNFS不会替代所有其他文件系统和协议,但是它们可以带来很好的水平扩展性,从而提供一个超大规模的文件系统。”

这就可以解释为什么Sun仍然在改进Lustre文件系统。

“我们正在进行研究工作,让Lustre可以在ZFS的上层运行,并同时应用于Linux和Solaris平台。这将带来垂直可扩展性,以及单个服务器层面上的数据完整性保护功能”,Bojanic说,“反过来,Sun未来的开放式存储(Open Storage)产品将利用Lustre文件系统,从而为多种客户端协议(包括pNFS和Windows/CIFS)提供高的水平扩展性。

ZFS上的Lustre(Lustre-on-ZFS)的测试版本于2009年初推出,而最终版将于2010年推出。