1.背景

分布式计算的发迹应该是google在2003年发表的三篇paper。各自是GFS、MapReduce、BigTable。

当中MapReduce大家都非常熟悉了。不懂的同学也能够看看我之前写的文章【分布式计算】MapReduce的替代者-Parameter Server

为什么google会搞分布式计算这件事儿呢,由于在那个年代每天会产生几个T的日志,可是当时的磁盘仅仅同意存储几百G的文件,07年之前淘宝的全部数据都是用完就删除的,由于没地方存。后来,人们认识到数据是值钱的,所以须要一种存储策略来存储大数据。于是google就用了分布式存储系统。
这里主要介绍下GFS和BigTable。

2.DFS(相应hadoop的HDFS)

DFS是一种分布式文件存储系统。常规的文件系统是树状结构存储的,每一个文件有一个指针指到磁盘上的某个区域。
早期的DFS是单点结构的。有一个master节点负责管理每一个文件的namespace(文件存储在哪个机器的哪个磁盘上。如s3/dick2)。要存储一个非常大的数据。例如说一个10P的数据,首先是切片,例如说依照64M切片。每一个block存在某一个机器的某个磁盘上。总体的结构例如以下:
这里面就会衍生出三个问题,
       第一个是master节点假设挂了,整个文件系统就不能work了,这个是单点的一个缺陷。

       第二个问题是,一但slave中的某个磁盘破损了,磁盘破损率在2%左右,也就是每天都有破损的。这里有一个冗余机制,就是每一个block会分配到多个磁盘上备份~
       第三个问题是,磁盘是不停的被读写的,master是怎样获得每一个磁盘的信息的,这个功能依赖于一种叫做heart-beat的机制,每隔几秒钟,master就要遍历每一个slave得到它们的最新状况。

3.BigTable(相应Hadoop的HBase)

假设说DFS是磁盘级别的分布式存储。那么BigTable就是内存级别的分布式存储。

BigTable的存储结构是HashTable,以key-value的形式存储。

应用场景是一些在线的service。

例如说GoogleEarth,每一个地名(key)会相应一系列的meta(value),世界上有无数个地名,这是一个非常大的文件。假设从磁盘中拿,例如说输入一个巷子的名字,过10分钟用户才干拿到结果。这是不能接受的。我们须要将这些key-value做成cache缓存在内存中。显然单机内存的极限。例如说300G也是无法缓存这么大的文件的。这就须要多个机器一起缓存,这个策略就是BigTable。

可是,一但一个机器出现failover的情况。整个缓存就出现了gap,BigTable有一个机制就是,不断地将文件underfile到DFS中。防止文件丢失。

/********************************

* 本文来自博客  “李博Garvin“

* 转载请标明出处:http://blog.csdn.net/buptgshengod

******************************************/

【分布式计算】DFS && BigTable的更多相关文章

  1. [MapReduce] Google三驾马车:GFS、MapReduce和Bigtable

    声明:此文转载自博客开发团队的博客,尊重原创工作.该文适合学分布式系统之前,作为背景介绍来读. 谈到分布式系统,就不得不提Google的三驾马车:Google FS[1],MapReduce[2],B ...

  2. Dynamo和Bigtable对比

    数据结构化问题        首先要提到的是两者存储数据属性上的区别,虽然两者都是以key/value形式进行存储,但Dynamo偏向存储原数据,因为其所存储的数据是非结构化数据,对value的解析完 ...

  3. Google MapReduce/GFS/BigTable三大技术的论文中译版

    今天查找分布式计算的有关资料,发现Google的三大核心技术MapReduce.GFS和BigTable的论文都已经被翻译成高质量的中文,更巧的是,这三篇中译版的原发地都是CSDN的Blog.其中最新 ...

  4. 大数据基础知识:分布式计算、服务器集群[zz]

    大数据中的数据量非常巨大,达到了PB级别.而且这庞大的数据之中,不仅仅包括结构化数据(如数字.符号等数据),还包括非结构化数据(如文本.图像.声音.视频等数据).这使得大数据的存储,管理和处理很难利用 ...

  5. 大数据时代之hadoop(五):hadoop 分布式计算框架(MapReduce)

    大数据时代之hadoop(一):hadoop安装 大数据时代之hadoop(二):hadoop脚本解析 大数据时代之hadoop(三):hadoop数据流(生命周期) 大数据时代之hadoop(四): ...

  6. [IR] Bigtable: A Distributed Storage System for Semi-Structured Data

    良心博文: http://blog.csdn.net/opennaive/article/details/7532589 这里只是基础简述 众人说: 链接:http://blog.csdn.net/o ...

  7. 分布式计算(一)Ubuntu搭建Hadoop分布式集群

    最近准备接触分布式计算,学习分布式计算的技术栈和架构知识.目前的分布式计算方式大致分为两种:离线计算和实时计算.在大数据全家桶中,离线计算的优秀工具当属Hadoop和Spark,而实时计算的杰出代表非 ...

  8. 分布式计算开源框架Hadoop入门实践

    目录(?)[+] Author :岑文初 Email: wenchu.cenwc@alibaba-inc.com msn: cenwenchu_79@hotmail.com blog: http:// ...

  9. 分布式系统漫谈一 —— Google三驾马车: GFS,mapreduce,Bigtable

    分布式系统学习必读文章!!!! 原文:http://blog.sina.com.cn/s/blog_4ed630e801000bi3.html 分布式系统漫谈一 —— Google三驾马车: GFS, ...

随机推荐

  1. 九度oj 题目1357:疯狂地Jobdu序列

    题目描述: 阳仔作为OJ的数据管理员,每一周的题目录入都让其很抓狂,因为题目不是他出的,他控制不了出题的速度……在等题目的时候,阳仔又不敢出去打篮球,所以只能在纸上乱涂乱写,这天,阳仔在纸上写下了这样 ...

  2. 【bzoj3676】[Apio2014]回文串 回文自动机

    题目描述 考虑一个只包含小写拉丁字母的字符串s.我们定义s的一个子串t的“出现值”为t在s中的出现次数乘以t的长度.请你求出s的所有回文子串中的最大出现值. 输入 输入只有一行,为一个只包含小写字母( ...

  3. 防止点击asp.net的button按钮刷新页面(保留button的外观)

    原文发布时间为:2008-08-06 -- 来源于本人的百度文章 [由搬家工具导入] Button btn=new Button(); 1、如果用 btn.Enabled=false;是可以防止刷新的 ...

  4. js 判断变量是否为空

    js 判断变量是否为空 欢迎指正,补充! /** * 判断变量是否为空, * @param {[type]} param 变量 * @return {Boolean} 为空返回true,否则返回fal ...

  5. 关于Xcode6.0.1创建项目不自动创建Prefix.pch文件的解决办法

    1. 新建工程 2. 创建pch文件: 新建文件->Other->PCH File  新建一个pch文件 3. 在setting里面进行设置: 项目配置->Build Setting ...

  6. Python Challenge 第三关

    进入第三关,还是一张图加一句话:One small letter, surrounded by EXACTLY three big bodyguards on each of its sides. 图 ...

  7. 在IOS11中position:fixed弹出框中的input出现光标错位的问题

    问题出现的背景: 在IOS11中position:fixed弹出框中的input出现光标错位的问题 解决方案 一.设计交互方面最好不要让弹窗中出现input输入框: 二.前端处理此兼容性的方案思路: ...

  8. Anaconda3中Python3.5和Python2.7共存

    开始-所有程序-Anaconda3-Anaconda Prompt conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/a ...

  9. POJ 3660 Cow Contest 传递闭包+Floyd

    原题链接:http://poj.org/problem?id=3660 Cow Contest Time Limit: 1000MS   Memory Limit: 65536K Total Subm ...

  10. luogu P2056 采花

    题目描述 萧芸斓是 Z国的公主,平时的一大爱好是采花. 今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建的花园采花.花园足够大,容纳了 n 朵花,花有 c 种颜色(用整数 1-c 表示) ,且花是排成 ...