0
点赞
收藏
分享

微信扫一扫

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统


文章目录

  • 一、基本知识
  • 二、Google文件系统
  • 1.基础知识
  • 2.系统架构
  • (1)GFS整体架构
  • (2)关键问题
  • (a)租约机制和维护版本号解决可删除的chunk
  • (b)一致性模型
  • (c)追加流程:是GFS系统中最复杂的地方
  • (i)GFS追加流程
  • (iii)传统的主备复制方法
  • (d)容错机制
  • (i)Master容错,Master上保存了三种元数据信息
  • (ii)ChunServer容错
  • 3.Master设计
  • (a)Master内存占用,eg:1PB数据的chunk元信息大小
  • (b)负载均衡,chunk副本的初始位置怎么选?
  • (c)垃圾回收
  • (d)快照:生成改时刻源文件/目录的一个瞬间状态存放于目标文件/目录中
  • (e)ChunkServer设计
  • 4.GFS的巨大优势体现在哪
  • 三、Taobao File System
  • 1.基础知识
  • 2.TFS系统架构
  • 3.TFS的总结
  • 四、Facebook Haystack
  • 1.基础知识
  • 2.系统架构
  • (1)Haystack架构图
  • (2)写流程
  • (3)容错处理
  • (4)Haystack目录
  • (5)Haystack存储
  • 3.总结
  • 五、内容分发网络CDN
  • 1.基础知识
  • 2.CDN架构
  • 3.总结

一、基本知识

(1)分布式文件系统的主要功能:

  • 一个是存储文档、图像、视频之类的Blob类型数据
  • 二是作为分布式表格系统的持久化层

(2)GFS概述

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器

二、Google文件系统

1.基础知识

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_02

2.系统架构

(1)GFS整体架构

  • GFS系统的节点可分为三种:GFS Master主控服务器、GFS ChunkServer(CS、数据块服务器)、GFS客户端
  • GFS主要的应用有两个:MapReduce,GFS客户端使用方式为顺序读写,没有缓存文件数据的必要;Bigtable分布式表格系统,内部实现了一套缓存机制

(2)关键问题

(a)租约机制和维护版本号解决可删除的chunk

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_03


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_04

(b)一致性模型

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_05


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_06

(c)追加流程:是GFS系统中最复杂的地方

(i)GFS追加流程

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_07


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_08


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_09


(ii)GFS的流水线,分离控制流和数据流的优点

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_10

(iii)传统的主备复制方法

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_11


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_12

(d)容错机制

(i)Master容错,Master上保存了三种元数据信息

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_13

(ii)ChunServer容错

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_14

3.Master设计

(a)Master内存占用,eg:1PB数据的chunk元信息大小

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_15

(b)负载均衡,chunk副本的初始位置怎么选?

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_16


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_17

(c)垃圾回收

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_18

(d)快照:生成改时刻源文件/目录的一个瞬间状态存放于目标文件/目录中

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_19


看不懂的话,直接看eg:

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_20


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_21

(e)ChunkServer设计

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_22

4.GFS的巨大优势体现在哪

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_23


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_24

三、Taobao File System

1.基础知识

(1)Blob数据与Blob存储系统

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_25


(2)2007年以前,淘宝的图片存储系统使用的是昂贵的NetApp存储设备

2.TFS系统架构

(1)架构设计需要考虑的问题

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_26


(2)TFS整体架构

  • 一个TFS集群由两个NameServer节点(一主一备)和多个DataServer节点组成
  • NameServer相当于GFS中的Master,DataServer相当于GFS中的ChunkServer

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_27


(3)追加流程

(i)GFS与TFS的追加流程的异同点

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_28


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_29


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_30

(ii)TFS的具体追加流程

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_31


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_32


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_33


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_34

3.TFS的总结

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_35

四、Facebook Haystack

1.基础知识

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_36


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_37

2.系统架构

(1)Haystack架构图

  • Haystack系统主要包括三个部分:目录Directory,存储Store,缓存Cache
  • 《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_38


  • 《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_39


(2)写流程

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_40


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_41


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_42


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_43

(3)容错处理

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_44

(4)Haystack目录

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_数据_45

(5)Haystack存储

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_46


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_47

3.总结

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_48


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_49

五、内容分发网络CDN

1.基础知识

(1)CDN能将图像、视频之类的数据缓存在距离用户最近的网络节点上,从而降低访问延时、节省带宽

(2)用户访问CDN的整体流程

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_服务器_50

2.CDN架构

(1)淘宝网CDN整体架构

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_51

(2)淘宝网单个CDN节点架构

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_52


《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_53


(3)分级存储和低功耗服务器定制

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_54

3.总结

《大规模分布式存储系统 原理解析与架构实践》第四章 分布式文件系统_系统架构_55




举报

相关推荐

0 条评论