文档章节

谈谈当下的分布式文件系统

李朝强
 李朝强
发布于 2015/12/03 12:54
字数 1682
阅读 130
收藏 5

本文对目前数种分布式文件系统进行简单的介绍。当前比较流行的分布式文件系统包括:Lustre、Hadoop、MogileFS、FreeNAS、FastDFS、NFS、OpenAFS、MooseFS、pNFS、以及GoogleFS。

Lustre(www.lustre.org

lustre是一个大规模的、安全可靠的,具备高可用性的集群文件系统,它是由SUN公司开发和维护。该项目主要的目的就是开发下一代的集群文件系统,可以支持超过10000个节点,数以PB的数量存储系统。

lustre 是开放源代码的集群文件系统,采取GPL许可协议,目前在集群计算机里,计算机与磁盘间数据交换的提升无法跟上微处理器和内存增长的速度,从而也拖累了应 用程序的性能,一种新兴的集群文件系统软件提高了I/O速度,可能降低企业购买存储设备的成本并改变企业购买存储的方式,集群文件系统已经在大学、实验室 和超级计算机研究中心里使用,而且即将进入通用商业计算市场。新的集群文件系统采用了开源的lustre技术,由美国能源部
(Department Of
Energy)开发,惠普公司(HP)提供商业支持。它显著提高了输入输出(I/O)速度,目前已经在高校、国家实验室和超级计算研究中心产生了一定影响,未来几年中,它很有可能进入普通的商业计算机领域。

运行在linux下,开发语言c/c++

Hadoop(hadoop.apache.com)

hadoop并不仅仅是一个用于存储的分布式文件系统,而是设计用来在由通用计算设备组成的大型集群上执行分布式应用的框架。

如下图是hadoop的体系结构:
Hadoop.jpg

授权协议apache,开发语言java,资源耗费有点大。

MogileFs(www.danga.com

Mogile
Fs是一个开源的分布式文件系统,主要特征包括

1、应用层的组件

2、无单点故障

3、自动文件复制

4、具有比RAID更好的可靠性

5、无需RAID
nigukefs支持 ,运行在linux下。

FreeNAS(www.openqrm.org

FreeNAS是网络附加存储(NAS)服务专用操作系统(FreeBSD的简化版
)。基于m0n0wall防火墙,该系统通过提供磁盘管理及RAID软件,可让用户home将PC转换为NAS服务器,支持FTP/NFS/RSYNC
/CIFS/AFP/UNISON/SSH
sourceforge.net/pro协议,旨在让人们重新使用旧硬件.

FastDFS(code.google.com/p/fastdfs)

FastDFS是一个开源的分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,
如相册网站,视频网站等等。FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度的工作,在访问上起负载均衡的作用。存储节点存储文件,完成文件管理的所有功能:

存储、同步、和提供存取接口,FastDFS同时对文件的meta
data进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value
pair)方式表示,如:width=1024,其中的key为width,value为1024。文件meta
data是文件属性列表,可以包含多个键值树。

开发语言c/c++,运行在linux系统下。

NFS(www.tldp.org/HOWTO/NFS-HOWTO/index.html

网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS。

NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,
用户和程序可以象访问本地文件一样访问远端系统上的文件。它的好处是:

1、本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到。

2、用户不必在每个网络上机器里面都有一个home目录。home目录可以被放在NFS服务器上并且在网络上处处可用。

3、诸如软驱、CDROM、和ZIP之类的存储设备可以在网络上面被别的机器使用。可以减少整个网络上的可移动介质设备的数量。

开发语言c/c++,可跨平台运行。

OpenAFS(www.openafs.org

OpenAFS 是一套开放源代码的分布式文件系统,允许系统之间通过局域网和广域网来分享档案和资源。OpenAFS是围绕一组叫做cell的文件服务器组织的,每个服 务器的标识通常是隐藏在文件系统中,从AFS客户机登陆的用户将分辨不出他们在那个服务器上运行,因为从用户的角度上看,他们想在有识别的Unix文件系 统语义的单个系统上运行。

文件系统内容通常都是跨cell复制,一便一个硬盘的失效不会损害OpenAFS客户机上的运行。OpenAFS 需要高达1GB的大容量客户机缓存,以允许访问经常使用的文件。它是一个十分安全的基于kerbero的系统,它使用访问控制列表(ACL)以便可以进行 细粒度的访问,这不是基于通常的
Linux和Unix安全模型。开发协议IBM
Public,运行在linux下。

MooseFs(derf.homelinux.org)

Moose
File System是一个具备容错功能的网路分布式文件统,它将数据分布在网络中的不同服务器上,MooseFs通过FUSE使之看起来就
是一个Unix的文件系统。但有一点问题,它还是不能解决单点故障的问题。开发语言perl,可跨平台操作。

pNFS(www.pnfs.com

网络文件系统(Network
FileSystem,NFS)是大多数局域网(LAN)的重要的组成部分。但NFS不适用于高性能计算中苛刻的输入书橱密集型程序,至少以前是这样。
NFS标准的罪行修改纳入了Parallel NFS(pNFS),它是文件共享的并行实现,将传输速率提高了几个数量级。
pNFS.jpg

开发语言c/c++,运行在linu下。

googleFs

据说是一个比较不错的一个可扩展分布式文件系统,用于大型的,分布式的,对大量数据进行访问的应用。它运行于廉价的普通硬件上,但可以提供容错功能,它可以给大量的用户提供性能较高的服务。google自己开发的。

本文转载自:http://www.361way.com/distributed/1496.html

李朝强
粉丝 91
博文 297
码字总数 149962
作品 0
郑州
产品经理
私信 提问
20180521早课记录14-Hadoop

1.hadoop是什么 狭义: Hadoop软件(HDFS、MapReduce、Yarn) 广义: 以hadoop为主的生态圈 2.hadoop三大组件是什么?分别做什么 HDFS: 分布式文件管理系统 存储 MapReduce: 执行引擎 计算 Yarn: ...

wangkunj
2018/05/21
0
0
我的2017年文章汇总——深度学习篇

2017快过完了,大家过去一年收获如何?不管怎样,保持好心态,未来不迎,当下不杂,既过不恋。 近期准备把过去一年写的文章按照分类重新整理推送一遍,包括:“分布式”、“机器学习”、“深...

2017/12/23
0
0
UCan下午茶 2018-武汉站《大话分布式存储》

随着信息化程度的不断提高,全球数据日益膨胀。面对当前PB级的海量数据存储需求,传统的存储系统在容量和性能的扩展上存在瓶颈。云存储以其扩展性强、性价比高、容错性好等优势得到了业界的广...

UCloudTech
2018/10/29
23
0
UCan下午茶 2018-武汉站《大话分布式存储》

随着信息化程度的不断提高,全球数据日益膨胀。面对当前PB级的海量数据存储需求,传统的存储系统在容量和性能的扩展上存在瓶颈。云存储以其扩展性强、性价比高、容错性好等优势得到了业界的广...

UCloudTech
2018/10/29
572
0
大数据之Linux早课9.27

1.jps是哪个软件里的 2.jps显示 进程信息不可用,我们该怎么办 3.在部署yarn的伪分布式部署,我们用了哪两个参数文件? 4.启动yarn的shell脚本叫什么 5.yarn的web界面的默认端口是什么 ssh命令...

hnairdb
2018/10/17
2
0

没有更多内容

加载失败,请刷新页面

加载更多

医疗项目pc端后台页面用vue重构整个html页面

页面源码是vue

xintaiideas
30分钟前
2
0
领域驱动中的“贫血症和失忆症” --实践领域驱动--原文

贫血症严重危害着人类健康,并且伴随有危险的副作用。当贫血领域对象被首次提出来时,它并不是一个博得赞美的词汇,它描述的是一个缺少内在行为领域对象。奇怪的是,人们对于贫血领域对象的态...

还仙
34分钟前
5
0
条码打印软件中标签预览正常打印无反应怎么解决

在使用条码打印软件制作标签时,有客户反馈,标签打印预览正常的,但是打印无反应,咨询是怎么回事?今天针对这个情况,可以参考以下方法进行解决。 一、预览正常情况下,打印没反应 (1)在条码...

中琅软件
44分钟前
5
0
判断字符串的时候

判断字符串的时候一定把常量房前边, //报警程度 String leve = vo.getDeviceAlertDeal().getWarnLevel(); if(("0").equals(leve)) { row.add("无报警"); }else if(("1").equals(leve)) { ro......

简小姐
44分钟前
7
0
Linux maven3.6.2 install

PS:安装 maven 之前请先安装 jdk 1.安装 wget 命令(安装过就不用了) yum -y install wget 2.寻找需要的 maven 版本 https://maven.apache.org/download.cgi 3.进入 /var/local 文件夹 cd...

东方神祇
46分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部