当前位置:网站首页>GFS分布式文件系统(理论)

GFS分布式文件系统(理论)

2022-04-23 14:07:00 C和弦~

目录

一.GFS概述

1、文件系统

①、文件系统组成

②、文件系统的作用

③.GFS专业术语

 ④、 GFS 的特点

二.GFS工作原理

 三.GFS 卷类型

①.卷类型


一.GFS概述

1、文件系统

①、文件系统组成

  •  文件系统接口(API)
  •  对对象管理的软件集合
  •  对象及属性

②、文件系统的作用

  •  从系统角度来看,文件系统是对文件存储设备的空间进行组织和备份
  •  负责文件存储并对存入的文件进行保护和检索的系统
  •  具体地说,它负责为用户建立文件、存入、读出、修改、转储文件、控制文件的存储

③.GFS专业术语

  • Brick(块存储服务器)实际存储用户数据的服务器
  • Volume本地文件系统的"分区"
  • FUSE用户空间的文件系统(类别EXT4),”这是一个伪文件系统“,用户端的交换模块
  • VFS(虚拟端口)内核态的虚拟文件系统,用户是提交请求给VFS 然后VFS交给FUSH,再交给GFS客户端,最后由客户端交给远端的存储
  • Glusterd(服务)是运行再存储节点的进程(客户端运行的是gluster client)GFS使用过程中整个GFS之间的交换由Gluster client 和glusterd完成

 ④、 GFS 的特点

  • 扩展性和高性能:可扩展性,扩展节点,通过多节点提高性能
  • 高可用性:不存在单点故障,有备份机制,类似 Raid 的容灾机制
  • 全局统一命名空间:集中化管理,类比 API 的性质/概念,系统里根据他命名所定义的隔离区域,是一个独立空间;统一的名称空间,与客户端交互,把请求存放至后端的块数据服务器
  • 弹性卷管理:方便扩容及对后端存储集群的管理与维护,较为复杂
  • 基于标准协议:基于标准化的文件使用协议,让 CentOS 兼容 GFS

二.GFS工作原理

  • 外来请求通过挂载点时,linux 系统内核通过VFS接口,把请求发送到FUSE
  • FUSE将数据交给内存的/dev/fuse,然后递交到GFS客户端
  • GFS客户端对数据进行处理,并通过网络协议(如TCP、IB等),传输到GFS服务端
  • GFS服务端接收到数据后,通过VFS接口,对数据进行相应的转存处理
     

 三.GFS 卷类型

  • 为了解决分布式文件数据索引、定位的复杂程度,而使用了HASH算法来辅助
  • 分布式(平均分配)的好处:
  • ① 当数据量越来越大的时候,相对每个存储节点的数据量(几率)是相等的
  • ② 而如果考虑到单点故障问题,当数据存储再c存储节点,对此GFS是会有备份机制的,默认3备份,所以GFS本身的机制会对数据产生冗余,以此解决单点故障
     

①.卷类型

  •  分布式卷
  •  条带卷
  •  复制卷
  •  分布式条带卷
  •  分布式复制卷
  •  条带复制卷
  •  分布式条带数据卷

分布式卷

文件通过 HASH 算法分布到所有 Brick Server 上,这种卷是 GlusterFS 的默认卷;以文件为单位根据 HASH 算法散列到不同的 Brick,其实只是扩大了磁盘空间,如果有一块磁盘损坏,数据也将丢失,属于文件级的 RAID0, 不具有容错能力。在该模式下,并没有对文件进行分块处理,文件直接存储在某个 Server 节点上。 由于直接使用本地文件系统进行文件存储,所以存取效率并没有提高,反而会因为网络通信的原因而有所降低。

特点

  • 文件分布在不同的服务器,不具备冗余性
  •  更容易和廉价地扩展卷的大小
  •  单点故障会造成数据丢失
  •  依赖底层的数据保护

条带卷

类似 RAID0,文件被分成数据块并以轮询的方式分布到多个 Brick Server 上,文件存储以数据块为单位,支持大文件存储, 文件越大,读取效率越高,但是不具备冗余性。

特点

  • 数据被分割成更小块分布到块服务器群中的不同条带区
  •  分布减少了负载且更小的文件加速了存取的速度
  •  没有数据冗余

复制卷

将文件同步到多个 Brick 上,使其具备多个文件副本,属于文件级 RAID 1,具有容错能力。因为数据分散在多个 Brick 中,所以读性能得到很大提升,但写性能下降。复制卷具备冗余性,即使一个节点损坏,也不影响数据的正常使用。但因为要保存副本,所以磁盘利用率较低。

特点

  • 卷中所有的服务器均保存一个完整的副本
  •  卷的副本数量可由客户创建的时候决定
  •  至少由两个块服务器或更多服务器
  •  具备冗余性

分布式条带卷

Brick Server 数量是条带数(数据块分布的 Brick 数量)的倍数,兼具分布式卷和条带卷的特点。 主要用于大文件访问处理**,创建一个分布式条带卷最少需要 4 台服务器。**

分布式复制卷

分布式复制卷(Distribute Replica volume):Brick Server 数量是镜像数(数据副本数量)的倍数,兼具分布式卷和复制卷的特点,主要用于需要冗余的情况下。

 条带复制卷

  • 条带复制卷(Stripe Replica volume)类似 RAID 1 0,同时具有条带卷和复制卷的特点。
  • 分布式条带复制卷(Distribute Stripe Replicavolume)三种基本卷的复合卷,通常用于类 Map Reduce 应用

版权声明
本文为[C和弦~]所创,转载请带上原文链接,感谢
https://blog.csdn.net/Ab960311/article/details/121389165