Google 三架马车:GFS、BigTable、MapReduce
一、GFS
Google File System就是HDFS的前身
HDFS 参照了GFS的设计理念,大部分架构设计概念是类似的,比如 HDFS NameNode 相当于 GFS Master,HDFS DataNode 相当于 GFS chunkserver\
1.设计目标:
- 多个客户端可以在不需要额外的同步锁定的 情况下,同时对一个文件追加数据
一个问题:
一个 Chunk块为64MB,HDFS中的一个块大小也64MB,但是一般的文件系统中一个磁盘块大小只有512B
=> 那么为什么分布式文件系统中的一个数据块要设置的这么大呢?
0. 目的是为了最小化寻址开销,
1. 采用较大的 Chunk 尺寸,客户端能够对一个块进行多次操作,这样就可以 通过与 Chunk 服务器保持较长时间的 TCP 连接来减少网络负载
2.架构:
- Master 节点使用心跳信息周期地和每个 Chunk 服务器通讯,发送指令到各个 Chunk 服务器并接收 Chunk 服务器的状态信息。
- 客户端并不通过 Master 节点读写文件数据。反之,客户端向 Master 节点询问它应该联系的 Chunk 服务器。 客户端将这些元数据信息缓存一段时间,后续的操作将直接和 Chunk 服务器进行数据读写操作。
3.GFS的一致性模型:
尽量采用追加写入而不是覆盖,Checkpoint,自验证的写入操作,自标识的记录
- master slave model: 只有主人和slave进行主观能动的通信,slave间不会通信。
- master只会决定哪个slave去做读/写工作,然后client会直接和slave去传输。master只会收到request,master不会传输数据。
- 怎么存储数据:block of small file
- 谁负责去将数据拆分成小的blocks? => HDFS client
二、BigTable
三、MapReduce
转载于:https://www.cnblogs.com/shawshawwan/p/9204675.html
Google 三架马车:GFS、BigTable、MapReduce相关推荐
- Google三驾马车之Bigtable
谷歌在2003到2006年间发表了三篇论文,<MapReduce: Simplified Data Processing on Large Clusters>,<Bigtable: ...
- 【Google三驾马车系列】MapReduce原理总结
MapReduce基本框架 MapReduce计算模型的两个重要阶段: Map:映射,将数据转化为键值对的形式.切片操作在集群中并发执行,切片大小默认取最大切片.最小切片.块大小(128M)中间值. ...
- 一文带你系统梳理Google三驾马车
一文带你系统梳理Google三驾马车 不知道大家在工作中,有没有遇到过这类程序员:他们无论在什么岗位,开发什么系统,好像都能够抓到问题的本质,做得「游刃有余」. 我也经常碰到这类程序员,每次我向他们请 ...
- Google分布式系统三驾马车: GFS,mapreduce,Bigtable
谈到分布式系统,就不得不提Google的三驾马车:Google fs[1],Mapreduce[2],Bigtable[3]. 虽然Google没有公布这三个产品的源码,但是他发布了这三个产品的详细设 ...
- [MapReduce] Google三驾马车:GFS、MapReduce和Bigtable
声明:此文转载自博客开发团队的博客,尊重原创工作.该文适合学分布式系统之前,作为背景介绍来读. 谈到分布式系统,就不得不提Google的三驾马车:Google FS[1],MapReduce[2],B ...
- Google三驾马车:GFS、MapReduce和Bigtable
谈到分布式系统,就不得不提Google的三驾马车:Google fs[1],Mapreduce[2],Bigtable[3]. 虽然Google没有公布这三个产品的源码,但是他发布了这三个产品的详细设 ...
- Google三驾马车之GFS
谷歌在2003到2006年间发表了三篇论文,<MapReduce: Simplified Data Processing on Large Clusters>,<Bigtable: ...
- Google三驾马车之MapReduce
谷歌在2003到2006年间发表了三篇论文,<MapReduce: Simplified Data Processing on Large Clusters>,<Bigtable: ...
- Google 早期三驾马车之 BigTable 论文学习与研读
前言 Google,作为全球最大的搜索引擎公司,其伟大之处不仅在于建立了一个强大的搜索引擎,还在于它创造了3项革命性的技术,即:GFS.MapReduce 和 BigTable.作为 Google 早 ...
最新文章
- python 中 (按位与) 和 | (按位或)
- PHP开发工具 zend studio
- 图片轮播html实现原理,纯CSS实现图片轮播
- 【控制】《多无人机协同控制技术》周伟老师-第1章-无人机协同控制技术概述
- 手机操作系统如何实现跨平台开发和使用
- 论MOS管开关对电源的影响
- ubuntu mysql修改字符集后不能启动mysql_解决ubuntu下修改my.cnf设置字符集导致mysql无法启动...
- 企业中书写css,web前端开发企业级CSS常用命名,书写规范总结(示例代码)
- 【PTA天梯赛CCCC -2017决赛L2-3】图着色问题 (25 分)(图染色)
- POJ 1252 Euro Efficiency
- vs怎么生成html文件,vscode 快速生成html
- Aoto Deploy Project 1.0 (rebuild version)
- R语言可视化学习笔记之ggpubr包
- MySQL int类型的显示
- Cisco iOS的两种配置文件(思科命令的保存)
- 教你分辨真假苹果官方售后维修点就是这么简单!!
- 我的ubuntu论坛账号
- 人生有三重境界:看山是山,看水是水;看山不是山,看水不是水;看山还是山,看水还是水
- 神经元振荡中相位幅值耦合的量化:锁相值、平均向量长度、调制指数和广义线性模型交叉频率耦合
- decimal在java怎么用?
热门文章
- János-the-Ripper
- JAVA判断时间是否过期
- == 和 ===的区别
- 数学课本上的9大变态!
- Neo4j:SLM群集算法的过程
- python爬虫学习_junior
- 为什么人生下来就有意识 人脑五大未解之谜
- Kotlin 4. Kotlin 函数注解:Suppress,Volatile, Synchronized, Bindable, RequiresApi,SerializedName
- 微型计算机最早出现在第三代计算机中对吗,3月计算机一级试题及答案(2)
- C# 最新手机号码段的号码验证实现