2、网络文件系统(NFS)
NFS于1995年推出,NFS v3是目前应用最广泛的NAS协议,所有服务器操作系统(除微软Windows外)和存储厂商都支持它,2000年发布的NFS v4在许多方面都做了改进,但没有取得广泛应用。NFS v4.1(pNFS)应该会出现转机,因为它带来了人们迫切需要的并行I/O架构,并为低延迟高带宽I/O增加了RDMA支持。
这是NFS的一个重大进步,允许用户转移到可横向扩展的架构,但它的设计是基于一个统一的元数据服务器,这可能会限制扩展能力,并且存在一个潜在的单点故障,因此要想成为主流应用尚需时日,这期间需要解决NFS v3/4的扩展性问题,通过在集群文件系统上集成NFS,利用虚拟IP和循环DNS技术,可以构建一个可扩展的NAS解决方案。
3、集群/分布式文件系统
集群或分布式文件系统允许跨多个存储服务器使用一个全局命名空间,并实现了智能分散I/O和数据,以克服NFS(和CIFS)的扩展性限制,每个厂商都有他们自己的内部协议,但对于应用程序是透明的,因为共享存储是通过标准的POSIX接口访问的。
这样的文件系统有Oracle Lustre,IBM GPFS和GlusterFS,它们之间的主要区别是处理元数据的方式有所不同,Lustre使用的是中央控制元数据服务器,GPFS使用的是分布式元数据服务器模型,GlusterFS使用的是无元数据模型。在选择集群文件系统时,关键就是要了解元数据的处理方式。
另一个不同点是Lustre和GPFS是在内核中实现的,GlusterFS是在用户空间实现的,这些集群文件系统都实现了前面谈到的关键存储堆栈功能,它们都可以扩展到PB级存储容量。
4、分布式对象存储/key-value存储
许多现代应用程序需要简单对象API访问诸如get/put,get/put属性和lock/unlock这样成对出现的数据,对象访问允许将内存和磁盘看作是通过序列化的信息持久化块。
大多数数据处理功能(如XML解析,哈希表,全文检索等)都开始转向更高级的应用程序库,对象存储API也适合构建NoSQL规模的数据库。很多Web 2.0应用正在逐渐转向Cassendra等NoSQL式存储,比如前日的Digg和Twitter。
目前对象存储还没有标准化,虽然WebDAV,Hadoop,Apache Cassandra和Amazon S3都遵循这个模型,如果是构建一个新应用程序,它们也是很好的选择,但在未标准化之前,POSIX API将是必需的。
小结
预计到2012年,数据存储增长将会超过1800EB,要应对这种增长势头,文件系统的关键挑战是要解决扩展能力,并行处理能力,以及支持新的工作负载类型。新兴Linux文件系统技术值得认真考虑,因为它们的定位就是要解决这些问题。
9 7 3 1 2 4 8 :