论文学习笔记:GFS

前言:Google大数据处理的3篇核心论文

《The Google File System》:http://research.google.com/archive/gfs.html

《MapReduce: Simplified Data Processing on Large Clusters 》:http://research.google.com/archive/mapreduce.html

《Bigtable: A Distributed Storage System for Structured Data》:http://research.google.com/archive/bigtable.html


GFS(Google文件系统)作为一个分布式文件系统,为Google提供基础的海量数据存储服务。虽然GFS并没有开源,但Google在其04年发表的论文《The Google File System》里面做了详细的介绍,很多设计思路都很有学习的价值。由于论文很长,这里对这篇论文做个学习笔记,总结一下。

-----------------------------------------------------------------------------------------------------------------------------------


一、简介

重新审视传统文件系统在设计上的折忠选择,衍生了GFS不同的设计思路:

*、组件/机器失效是常态,而不是意外事件(容错性)

*、处理的文件巨大(大数据)

*、绝大多数文件写操作都是尾部追加数据,而不是随机写(读写模型)

*、应用程序和文件系统API协同设计,简化对GFS的要求(灵活性)


二、设计概述

1、架构:

* GFS Master(即NameNode):单独节点,管理GFS所有元数据(如名字空间、访问控制权限等)

* GFS ChunkServer(即DataNode):数据存储节点,文件被分割为固定大小的Chunk,每个Chunk被唯一标识,默认情况下,Chunk存储为3个副本。

* GFS Client:实现GFS的API接口函数(不是POSIX标准,因为API只需在用户空间调用)

2、单一的Master节点

* 单一的Master简化了设计,使架构能变得简单

* 缺点是有可能成为系统瓶颈,故需减少对Master的读写 => Client只询问Master相关文件的元数据信息,后面的具体读写操作均在ChunkServer上

* Master一般会返回离Client最近的文件副本(减少网络IO)

3、Chunk的大小选择

* 是一个关键的设计参数,默认为64MB。每个Chunk都以普通Linux

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值