Highlighted
8 Krypton

分布式文件系统发展史(动态图片,点击就能看到动态模拟)

分布式存储在大数据、云计算、虚拟化场景都有用武之地,在大部分场景还至关重要。

对于一个IT从业人员,学习分布式存储相关基础知识必不可少。

今天给大家简要介绍*nix平台下分布式文件系统的发展历史。

1、单机文件系统

用于操作系统和应用程序的本地存储。

缺点:数据无法再服务器之间共享。

典型代表:Ext2、Ext3、Ex4、NTFS、FAT、FAT32、XFS、JFS...

IO模型:

SingleOS.gif

2、网络文件系统(简称:NAS)

基于现有以太网架构,实现不同服务器之间传统文件系统数据共享。

缺点:两台服务器不能同时访问修改,性能有限。

典型代表:NFS、CIFS

IO模型:

NAS.gif

3、集群文件系统

在共享存储基础上,通过集群锁,实现不同服务器能够共用一个传统文件系统。

缺点:性能一般,扩展性很有限(小于16台服务器)。

典型代表:GFS(Redhat)、GFS2(Redhat)、OCFS(Oracle)

IO模型:

CFS.gif

GFS、GFS2模型如下:

GFS2.png

默认上面三种文件系统模块都位于内核里面,NFS over Inifiband可以使用kernel bypass绕开内核。

4、分布式文件系统

在传统文件系统上,通过额外模块实现数据跨服务器分布,并且自身集成raid保护功能,可以保证多台服务器同时访问、修改同一个文件系统。性能优越,扩展性很好,成本低廉。

缺点:适用场景单一,部分类型存在单点故障风险。

典型代表:lustre(Oracle)、HDFS(ASF)、gluster(Redhat)

IO模型:

主要分两大类型:一种是元数据集中管理模型;另一种是元数据分散管理模型

lustre(Oracle)

lustre.jpg

HDFS(ASF)

hdfsarchitecture.gif

lustre和HDFS是元数据集中管理典型代表。实际数据分布存放在数据服务器上,元数据服务器负责IO请求调配,空间分配;非常适用于大文件存储。

元数据服务器可能成为系统扩展的瓶颈。

gluster(Redhat)

gluster.png

gluster是元数据分散管理模型典型代表,元数据被分散放置到所有服务器上,不存在元数据单点故障。非常适用于小文件存储。

参考资料:

http://www.stalker.com/notes/SFS.html

https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Global_File_System_2/...

http://wiki.lustre.org/index.php/Main_Page

https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Storage/2.0/html-single/Administration_Guide/... 

http://www.gluster.org/

标签 (1)
24 条回复24
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

深入学习一下,谢谢楼主的总结分享

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

好东西,收下!

0 项奖励
版主
版主

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

很赞的整理和分享!

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

太好了 受益匪浅

不过想请教一下,那么以block为基准的SAN storage 应该归属于什么类型的呢?

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

通过SAN给主机分配的是一个或者多个block设备。

在主机IO模型里面,block和文件系统不在一个层面上,文件系统在block之上,基于block而创建。我们可以在从SAN分配过来的设备上面创建任何类型的文件系统。

Picture1.png

注意:如果需要创建集群文件系统,必须在共享的block设备上面创建。(可以是SAN,iscsi SAN,DRBD)

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

好好拜读一下,对IT人员转型到云计算、大数据很有帮助。

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

谢谢

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

谢谢楼主的分享。。。不过无论是从原理还是实际测试使用结果,glusterfs都非常“不”适合小文件的存储。。。。

0 项奖励
8 Krypton

Re: 分布式文件系统发展史(动态图片,点击就能看到动态模拟)

个人认为gluster适用于小文件原因是gluster通过在原生文件系统上面添加扩展属性来标识文件,不需要集中的元数据文件服务器。

看上去楼上对gluster经验丰富,不如给大家分享下。

0 项奖励