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

GlusterFS概述

GlusterFS简介

?开源的分布式文件系统
?由存储服务器,客户端以及NFS/Samba存储网关组成
?无元数据服务器

RDMA:负责数据传输

GlusterFS的特点

?扩展性和高性能
?高可用性
?全局统一的命名空间
?弹性卷管理
?基于标准协议

GlusterFS术语

?Brick : 存储节点
?Volume : 卷
?FUSE : 内核模块,用户端的交互模块
?VFS : 虚拟端口
?Glusterd : 服务

模块化堆栈架构

?模块化、堆栈式的架构
?通过对模块的组合,实现负责的功能

GlusterFS工作模式

?Application:客户端或应用程序通过GlusterFSync的挂载点访问数据
?VFS:linux系统内核通过VFS API收到请求并处理
?FUSE : VFS 将数据递交给FUSE内核文件系统,fuse文件系统则是将数据通过/dev/fuse设备文件递交给了GlusterFS client端
?GlusterFS Client ; 通过网络将数据传递至远端的GlusterFS Server,并且写入到服务器存储设备上

GlusterFS工作原理

GlusterFS工作流程

弹性HASH算法

?通过HASH算法得到一个32位的整数
?划分为N个连续的子空间,每个空间对应一个Brick
?弹性HASH算法的优点
? 保证数据平均分布在每一个Brink中
? 解决了对元数据服务器的依懒,进而解决了单点故障以及访问瓶颈

四个Brick节点的GlusterFS卷,平均分配232次方的区间的范围空间

通过hash算法去找到对应的brick节点的存储空间,去分配数据存储,去调用每一个节点数据

GlusterFS的卷类型

?分布式卷
?条带卷
?复制卷
?分布式条带卷
?分布式复制卷
?条带复制卷
?分布式条带复制卷

分布式卷

?没有对文件进行分块处理
?通过扩展文件属性保存HASH值
?支持底层文件系统有ext3、ext4、ZFS、XFS等

分布式卷有如下特点

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

创建分布式卷

创建一个名为dis-volume的分布式卷
文件将根据HASH分布在server1:/dir1、server2:/dir2和server3:/dir3中
gluster volume create dis-volume server1:/dir1 server2:/dir2

条带卷

?根据偏移量将文件分为N块(N个条带节点),轮询的存储在每个Brick Server节点
?存储大文件时,性能尤为突出
?不具备冗余性,类似Raid0

从多个server中同时读取文件,效率提升

特点

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

创建条带卷

创建一个名为Stripe-volume的条带卷
文件将被分块轮询的存储在Server1:/dir1和Server2:dir2两个Brick中
gluster volume create stripe-volume stripe 2 transport tcp server1:/dir1 server2:/dir2 

复制卷

?同一个文件保存一份或多分副本
?复制模式因为保存副本,所以磁盘利用率较低
?多个节点的存储空间不一致,那么将按照木桶效应取最低节点的容量作为该卷的总容量

特点

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

创建复制卷

创建名为rep-volume的复制卷、文件将同时存储两个副本
gluster volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2 

分布式条带卷

?兼顾分布式卷和条带卷的功能
?主要用于大文件访问处理
?至少最少需要4台服务器

创建分布式条带卷

创建一个名为dis-stripe的分布式条带卷,配置分布式的条带卷时
卷中Brink所包含 的存储服务器数必须是条带数的倍数(>=2倍)
gluster volume create rep-volume stripe 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir1 server4:/dir2 

分布式复制卷

?兼顾分布式卷和复制卷的功能
?用于需要冗余的情况下

创建分布式复制卷

创建一个名为dis-rep的分布式条带卷,配置分布式条带卷的复制卷时
卷中Brink所包含的存储服务器必须是条带数的倍数(>=2倍)
gluster volume volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir1 server4:/dir2

原文地址:https://blog.51cto.com/14449541/2461910

时间: 2024-10-02 04:55:15

GFS分布式文件存储系统(理论)的相关文章

GFS分布式文件存储系统(实战!!!)

实验环境 #开启5台虚拟机(centos7),四条节点服务器分别添加四块硬盘 node1:192.168.52.149 node2:192.168.52.132 node3:192.168.52.128 node4:192.168.52.135 client:192.168.52.133 #分别设置虚拟机名称,方便识别 hostnamectl set-hostname node1 hostnamectl set-hostname node2 hostnamectl set-hostname no

HDFS—Hadoop底层分布式文件存储系统

声明:本文档所有内容均在本人的学习和理解上整理,仅供参考,欢迎讨论.不具有权威性,甚至不具有精确性,也会在以后的学习中对不合理之处进行修改. 在上一篇“浅谈Hadoop inFusionInsight—华为大数据解决方案的理解”中,我重点提到了大数据的两个相较于传统数据所不同的特点——数量大和种类多.在Hadoop的底层有个非常重要的部分,我们一般称之为“核心”——分布式文件存储系统,即HDFS.我之前说过,单个服务器的内存和磁盘空间是有上限的,不可能无限支持线性增加.面对海量的大数据,单个服务

分布式文件存储系统--fastDFS

分布式文件系统,它是一款开源的轻量级分布式系统 单机时代 初创时期由于时间紧迫,在各种资源有限的情况下,通常就直接在项目目录下建立静态文件夹,用于用户存放项目中的文件资源.如果按不同类型再细分,可以在项目目录下再建立不同的子目录来区分.例如: resources\static\file. resources\static\img等. 优点:这样做比较便利,项目直接引用就行,实现起来也简单,无需任何复杂技术,保存数据库记录和访问起来也很方便. 缺点:如果只是后台系统的使用一般也不会有什么问题,但是

Tahoe-LAFS 开源分布式文件存储系统

很多技术信息来自于英文页面,我英文不好,可能有错漏的地方. Tahoe-LAFS是一个分布式的文件存储系统.它的特点是无法对内容进行审查,即使是存储服务提供方:极高的安全性,用长不定字符串链接替文件访问权限验证,基本不可能被在线破解:匿名,无注册及身份验证,只靠第一次运行时分配的随机码区分不同用户. 简单说下它的文件存储流程.我通过客户端上传一个文件.文件经过加密被切分成数个片段,上传到数个存储服务器.每个服务器只保存文件的一部分,不保存完整的文件.并且忽略掉文件名,用一串加密过的字符代替.上传

分布式文件存储系统 mogilefs 的使用(1)

一.mogilefs简介       mogilefs是一种分布式存储(不可挂载,通过API调用或专门客户端)的解决方案,可存储海量图片.静态文件.       mogilefs的相关程序是用perl语言编写,元数据存储在关系型数据库中(国内有人用C语言将mogilefs重写的程序叫做FastDFS,后者的元数据是存储在内存中的) mogilefs的基本组成结构:     (1) tracker:追踪器,从database中追踪用户请求数据的元数据            与客户端通过http协议

分布式文件存储系统 mogilefs 的使用(2)

六.将tracker.mogstored.mariadb组装成完整的mogilefs系统,并测试使用 在三个节点中任选一个,启动mogilefsd服务,然后使用mogadm添加各项组件  比如:node1上启动服务:[[email protected] mogilefs]# service mogilefsd startStarting mogilefsd                                         [  OK  ]对此节点做检测:[[email protec

企业常用GFS分布式存储系统

GlusterFS简介 开源的分布式文件系统 由存储服务器,客户端以及NFS/Samba存储网关组成 无元数据服务器 GlusterFS特点 扩展性和共性能 高可用 全局统一命名空间 弹性卷管理 基于标准协议 GlusterFS概述 Brick存储节点 Volume卷 fuse内核模块,用户端的交互性模块 vfs虚拟 Glusterd服务 来理解一下这张图: 上面一层虚拟化管理层,想当于一个应用.缓存,读写头,条带卷,代理想当于API接口 中间rdma传输 相当于一个驱动 下面一层真实的设备 相

手把手教你用 FastDFS 构建分布式文件管理系统

说起分布式文件管理系统,大家可能很容易想到 HDFS.GFS 等系统,前者是 Hadoop 的一部分,后者则是 Google 提供的分布式文件管理系统.除了这些之外,国内淘宝和腾讯也有自己的分布式文件管理系统,都叫 TFS(Taobao File System 和 Tencent File System). 相对于上面提到的这些分布式文件管理系统而言,FastDFS 可能离我们 Java 工程师更近一些,因为文件上传这个功能太常见了,而想要搭建独立的分布式文件管理系统,FastDFS+Nginx

FastDFS分布式文件系统配置与部署

? ? ? FastDFS分布式文件系统配置与部署 白宁超 2017年4月14日 ? ? 注:1.1-1.4节是对FastDFS基本配置,如果读者只是安装分布式文件系统,简单关注其原理建议阅读1.2节与1.5节.如果读者仅仅就是安装为目的建议直接阅读1.5节. 本人邮箱:[email protected] 主页网址:http://www.cnblogs.com/baiboy/ ? 目录 ? 1.1 分布式文件系统介绍????1 1.2 系统架构介绍????1 1.3 FastDFS性能方案???