分布式文件系统概述

分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。分布式文件系统的设计基于客户机/服务器模式。一个典型的网络可能包括多个供多用户访问的服务器。另外,对等特性允许一些系统扮演客户机和服务器的双重角色。例如,用户可以“发表”一个允许其他客户机访问的目录,一旦被访问,这个目录对客户机来说就像使用本地 驱动器一样。

中文名
分布式文件系统
外文名
Distributed File System
基    于
客户机/服务器模式
分    类
NFS AFS KASS DFS
项链方式
通过计算机网络与节点相连
相关名词
分布式计算

下面是三个基本的分布式文件系统


1系统分类

NFS

(NFS) 最早由Sun微系统公司作为 TCP/IP网上的文件共享系统开发。 Sun公司估计大约有超过310万个系统在运行NFS,大到 大型计算机、小至PC机,其中至少有80%的系统是非Sun平台。

AFS

(AFS) 结构与NFS相似,由 卡内基·梅隆大学信息技术中心(ITC)开发、现由前ITC职员组成的Transarc公司负责开发和销售。AFS较NFS有所增强。

KASS

KASS File System(简称KFS) [1]  开始软件自主研发 基于JAVA的纯分布式文件系统,功能类似于DFS、GFS、Hadoop,通过HTTP WEB为企业的各种信息系统提供底层文件存储及访问服务,搭建企业私有云存储服务平台。

DFS

(DFS) 是AFS的一个版本,作为 开放软件基金会(OSF)的分布式计算环境(DCE)中的文件系统部分。

NFS和AFS的区别

NFS和AFS的区别在于对并发写操作的处理方法上。当一个客户机向服务器请求一个文件(或数据库记录),文件被放在客户工作站的高速缓存中,若另一个用户也请求同一文件,则它也会被放入那个客户工作站的高速缓存中。当两个客户都对文件进行修改时,从技术上而言就存在着该文件的三个版本(每个客户机一个,再加上服务器上的一个)。有两种方法可以在这些版本之间保持同步:
无状态系统  在这个系统中,服务器并不保存其客户机正在缓存的文件的信息。因此,客户机必须协同服务器定期检查是否有其他客户改变了自己正在缓存的文件。这种方法在大的环境中会产生额外的LAN通信开销,但对小型LAN来说,这是一种令人满意的方法。NFS就是个无状态系统。
回呼(Callback)系统  在这种方法中,服务器记录它的那些客户机的所作所为,并保留它们正在缓存的文件信息。服务器在一个客户机改变了一个文件时使用一种叫回叫应答(callbackpromise)的技术通知其它客户机。这种方法减少了大量网络通信。AFS(及OSFDCE的DFS)就是回叫系统。客户机改变文件时,持有这些文件拷贝的其它客户机就被回叫并通知这些改变。
无状态操作在运行性能上有其长处,但AFS通过保证不会被回叫应答充斥也达到了这一点。方法是在一定时间后取消回叫。客户机检查回叫应答中的时间期限以保证回叫应答是当前有效的。回叫应答的另一个有趣的特征是向用户保证了文件的当前有效性。换句话说,若一个被 缓存的文件有一个回叫应答,则客户机就认为文件是当前有效的,除非服务器呼叫指出服务器上的该文件已改变了。

2NFS介绍

NFS定义

(NFS)(Network File System)是个分布式的客户机/服务器文件系统。NFS的实质在于用户间计算机的共享。用户可以联结到共享计算机并像访问本地硬盘一样访问共享计算机上的文件。管理员可以建立远程系统上文件的访问,以至于用户感觉不到他们是在访问远程文件。
NFS是个到处可用和广泛实现的 开放式系统

NFS设计目标

允许用户象访问本地文件一样访问其他系统上的文件。提供对 无盘工作站的支持以降低网络开销。
简化应用程序对远程文件的访问使得不需要因访问这些文件而调用特殊的过程。
使用一次一个服务请求以使系统能从已崩溃的服务器或工作站上恢复。
采用安全措施保护文件免遭偷窃与破坏。
使NFS协议可移植和简单,以便它们能在许多不同计算机上实现,包括低档的PC机。
大型计算机、小型计算机和文件服务器运行NFS时,都为多个用户提供了一个文件存储区。工作站只需要运行TCP/IP协议来访问这些系统和位于NFS存储区内的文件。工作站上的NFS通常由TCP/IP软件支持。对DOS用户,一个远程NFS文件存储区看起来是另一个磁盘驱动器盘符。对Macintosh用户,远程NFS文件存储区就是一个图标。

NFS部分功能

服务器目录共享 服务器广播或通知正在共享的目录,一个共享目录通常叫做出版或出口目录。有关共享目录和谁可访问它们的信息放在一个文件中,由操作系统启动时读取。
客户机访问 在共享目录上建立一种链接和访问文件的过程叫做装联(mounting),用户将网络用作一条通信链路来访问远程文件系统。
NFS的一个重要组成是 虚拟文件系统(VFS),它是应用程序与低层文件系统间的接口。

VFS操作

close文件关闭操作
create 文件生成操作
fsync将改变保存到文件中
getattr 取文件属性
link 用另一个名字访问一个文件
lookup 读目录项
mkdir建立新目录
open 文件打开操作
rdwr 文件读写操作
remove 删除一个文件
rename 文件改名
rmdir删除一目录
setattr 设置文件属性

3AFS介绍

Andrew File System(AFS)Andrew文件系统(AFS)
AFS是专门为在大型分布式环境中提供可靠的文件服务而设计的。它通过基于单元的结构生成一种可管理的分布式环境。一个单元是某个独立区域中 文件服务器和客户机系统的集合,这个独立区域由特定的机构管理。通常代表一个组织的计算资源。用户可以和同一单元中其他用户方便地共享信息,他们也可以和其他单元内的用户共享信息,这取决于那些单元中的机构所授予的访问权限。
文件服务器进程 这个进程响应客户工作站对文件服务的请求,维护目录结构,监控文件和目录状态信息,检查用户的访问。
基本监察(BOS)服务器进程 这个进程运行于有BOS设定的服务器。它监控和管理运行其他服务的进程并可自动重启服务器进程,而不需人工帮助。
卷宗服务器进程 此进程处理与卷宗有关的文件系统操作,如卷宗生成、移动、复制、 备份和恢复。
卷宗定位服务器进程 该进程提供了对文件卷宗的 位置透明性。即使卷宗被移动了,用户也能访问它而不需要知道卷宗移动了。
鉴别服务器进程 此进程通过授权和相互鉴别提供网络安全性。用一个“鉴别服务器”维护一个存有口令和加密密钥的鉴别数据库,此系统是基于Kerberos的。
保护服务器进程 此进程基于一个保护数据库中的访问信息,使用户和组获得对文件服务的访问权。
更新服务器进程 此进程将AFS的更新和任何配置文件传播到所有AFS服务器。
AFS还配有一套用于差错处理,系统备份和AFS分布式文件系统管理的实用工具程序。例如,SCOUT定期探查和收集AFS 文件服务器的信息。信息在给定格式的屏幕上提供给 管理员。设置多种阈值向管理者报告一些将发生的问题,如磁盘空间将用完等。另一个工具是USS,可创建基于带有字段常量模板的 用户帐户。Ubik提供数据库复制和同步服务。一个复制的数据库是一个其信息放于多个位置的系统以便于 本地用户更方便地访问这些数据信息。同步机制保证所有数据库的信息是一致的。

4KFS 文件库

KFS(KASS File System )

实现价值

1、高性能和高可靠性。支持通过增加服务器实现高并发、大存储量、大吞吐量,且有效避免单点故障。
2、可作为多个系统之间的文件共享存放平台,多个系统均可远程访问 KFS 文件库,避免文件孤岛。
3、文件得到有效保护,多副本方式有效防止文件因单点故障导致无法及时访问或丢失、损坏的问题。
4、支持广域网异地分布式存储,同时控制流与数据流分离的模式,有效解决多网点办公环境下公司文档集中管理分散访问的问题,极大的优化文档管理模式与传输速度。

功能特点

1、完全基于 JAVA 实现,支持跨平台部署。
2、可独立运行,也可内嵌至任何支持 JAVA 的 WEB 容器中运行。
3、不依赖任何第三方程序,也不依赖任何数据库。
4、 二次开发非常简单。客户端只需发送简单的 HTTP 请求至 KFS 服务器的指定 URL 地址,即可完成 KFS 功能的远程调用。开发人员可以通过 IE 浏览器来完成所有的 KFS 功能调用。
5、提供了丰富的功能。与操作系统提供的文件操作功能比较,我们提供了丰富的高级功能,如版本管理、文件删除恢复、文件副本、文件日志、事件驱动等等。
6、系统高可靠性。优异的架构,无单点故障的设计,集群同步的支持,信息流与数据流的分离设计,多副本机制,从多方面保障了整个系统的高可靠性和可用性。
7、系统高可扩展性。系统通过简单配置即可实现文件存储空间的扩展,可通过扩展名称服务器集群来提高名称服务器的并发性能,可通过增加副本文件来实现存储服务器的 I/O 吞吐量扩展。
8、支持跨广域网文件存储。由于文件有多项副本存在,支持多项副本存储在不同城市的数据服务器,以实现各地快速访问文件目的。

5相关名词

传统网络存储VS分布式网络存储

分布式存储系统, 就是将数据分散存储在多台独立的设备上传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
相关条目:Distributed Computing分布式计算;Distributed Computing Environment,OSF 开放软件基金会(OSF)的分布式计算环境;Distributed Database 分布式数据库;File Systems in the Network Environment 网络环境中的文件系统。

分布式网络存储实现难点

如果文件的访问仅限于一个用户,那么分布式文件系统就很容易实现。可惜的是,在许多网络环境中这种限制是不现实的,必须采取 并发控制来实现文件的多用户访问,表现为如下几个形式:
只读共享 任何客户机只能访问文件,而不能修改它,这实现起来很简单。
受控写操作 采用这种方法,可有多个用户打开一个文件,但只有一个用户进行写修改。而该用户所作的修改并不一定出现在其它已打开此文件的用户的屏幕上。
并发写操作 这种方法允许多个用户同时读写一个文件。但这需要操作系统作大量的监控工作以防止文件重写,并保证用户能够看到最新信息。这种方法即使实现得很好,许多环境中的处理要求和 网络通信量也可能使它变得不可接受。

转 http://baike.baidu.com/view/771589.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值