文章目录
- 一、基本知识
- 二、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.基础知识
2.系统架构
(1)GFS整体架构
- GFS系统的节点可分为三种:GFS Master主控服务器、GFS ChunkServer(CS、数据块服务器)、GFS客户端
- GFS主要的应用有两个:MapReduce,GFS客户端使用方式为顺序读写,没有缓存文件数据的必要;Bigtable分布式表格系统,内部实现了一套缓存机制
(2)关键问题
(a)租约机制和维护版本号解决可删除的chunk
(b)一致性模型
(c)追加流程:是GFS系统中最复杂的地方
(i)GFS追加流程
(ii)GFS的流水线,分离控制流和数据流的优点
(iii)传统的主备复制方法
(d)容错机制
(i)Master容错,Master上保存了三种元数据信息
(ii)ChunServer容错
3.Master设计
(a)Master内存占用,eg:1PB数据的chunk元信息大小
(b)负载均衡,chunk副本的初始位置怎么选?
(c)垃圾回收
(d)快照:生成改时刻源文件/目录的一个瞬间状态存放于目标文件/目录中
看不懂的话,直接看eg:
(e)ChunkServer设计
4.GFS的巨大优势体现在哪
1.基础知识
(1)Blob数据与Blob存储系统
(2)2007年以前,淘宝的图片存储系统使用的是昂贵的NetApp存储设备
2.TFS系统架构
(1)架构设计需要考虑的问题
(2)TFS整体架构
- 一个TFS集群由两个NameServer节点(一主一备)和多个DataServer节点组成
- NameServer相当于GFS中的Master,DataServer相当于GFS中的ChunkServer
(3)追加流程
(i)GFS与TFS的追加流程的异同点
(ii)TFS的具体追加流程
3.TFS的总结
1.基础知识
2.系统架构
(1)Haystack架构图
- Haystack系统主要包括三个部分:目录Directory,存储Store,缓存Cache
(2)写流程
(3)容错处理
(4)Haystack目录
(5)Haystack存储
3.总结
1.基础知识
(1)CDN能将图像、视频之类的数据缓存在距离用户最近的网络节点上,从而降低访问延时、节省带宽
(2)用户访问CDN的整体流程
2.CDN架构
(1)淘宝网CDN整体架构
(2)淘宝网单个CDN节点架构
(3)分级存储和低功耗服务器定制
3.总结