分布式文件系统的比较


1.NFS 2.AFS 3.GFS


资源透明性



1.NFS:通过Unix虚拟文件系统提供了访问的透明性;需要由用户确定远程文件系统的挂载位置,因此不提供位置透明性;因为只有一台文件服务器,因此不保证性能透明性。



2.AFS:通过将系统调用解释为unix文件系统层接口提供了访问透明性;文件服务器时瓶颈,因此性能透明性没有完全提供。



3GFS:需要专用的文件访问API来实现访问,访问透明性不高;通过统一的文件命名空间实现位置透明性;用于访问控制和全局管理的元数据节点可能成为瓶颈,但是有改进方法。



高可用性



1.是无状态协议,异常处理完全由客户端完成。



2.需要特殊的错误处理机制来支持容错。



3.实现了多层次(节点级、文件级、文件块级)的容错。



并发访问



1.用文件锁进行并发控制。



2.用文件锁实现并发访问。



3.用原子操作保证并发访问不会影响一致性。



数据冗余



1.不支持文件自动复制。



2.使用客户端cache,基本不支持复制。



3.自动复制文件。



软硬件异构



1.支持多种具有不同操作系统和硬件的客户端和服务器实现。



2.支持多种操作系统,特别是在Linux内核中的实现使多种硬件平台,可以作为服务器和客户端。



3.支持所有标准的PC服务器架构。



一致性



1.使用类似Unix的one-copy语义。



2.文件修改的一致性不能得到实时保证。



3.使用所有标准的PC服务器架构。



安全性



1.只有较弱的认证机制。



2.支持安全认证,具有访问控制机制。



3.使用安全套接字为访问服务。



高效性



1.高性能协议。



2.高性能协议,但高性能是由降低并发度换来的。



3.能并行读取数据,具有高效性。