Google云计算的基础架构

本文介绍了Google云计算的技术架构,包括分布式文件系统GFS、并行计算框架MapReduce和结构化数据管理工具BigTable。GFS解决了大规模数据存储问题,MapReduce用于处理海量数据计算,而BigTable则用于管理结构化数据。此外,还提及了Google云计算平台App Engine和与其类似的开源项目Hadoop。
部署运行你感兴趣的模型镜像

主要内容: 云计算, Google云计算基础架构,GFS,MapReduce,BigTable, Google云计算平台App Engine简介

主讲人:王咏刚

 

一 Google云计算技术架构

    GFS+MapReduce+BigTable

    GFS解决的是数据存储的问题

    MapReduce解决海量数据并行计算的问题

    BigTable解决的是结构化数据的管理问题

  

   GFS是google自己设计的分布式文件系统,是大量安装有Linux操作系统的普通PC构成的集群系统。整个集群系统由一台Master(通常有几台备份)和若干台TrunkServer构成。GFS中文件备份成固定大小的Trunk分别存储在不同的TrunkServer上,每个Trunk有多份(比如3)拷贝,也存储在不同的TrunkServer上。Master负责维护GFS中的 Metadata,即文件名及其Trunk信息。客户端先从Master上得到文件的Metadata,根据要读取的数据在文件中的位置与相应的 TrunkServer通信,获取文件数据(以上介绍来自:http://wiki.huihoo.com/index.php?title=Google_File_System)。

   

   

 

 

    据介绍,google的每一份数据至少放在三个不同位置的机器上,所以可靠性是可以高度保证的;而且操作GFS和操作本地磁盘一样简单易行。

    目前Google拥有超过200个的GFS集群,其中有些集群的计算机数量超过5000台。Google现在拥有数以万计的连接池从GFS集群中获取数据,集群的数据存储规模可以达到5个PB,并且集群中的数据读写吞吐量可达到每秒40G。

 

 

   MapReduce是一个编程模式,它是与处理/产生海量数据集的实现相关。用户指定一个map函数,通过这个map函数处理key/value(键/值)对,并且产生一系列的中间key/value对,并且使用reduce函数来合并所有的具有相同key值的中间键值对中的值部分。MapReduce的主要贡献在于提供了一个简单强大的接口,通过这个接口,可以把大尺度的计算自动的并发和分布执行。

     常见的应用例子: 在很大的文档集合中通机每一个单词出现的次数.  map函数检查每一个单词,并且对每一个单词增加1到其对应的计数器;reduce函数把特定单词的所有出现的次数进行合并。

     其他例子:

     URL访问频率统计:map函数处理webpag请求和应答(URL,1)的log。Reduce函数把所有相同的URL的值合并,并且输出一个成对的(URL,总个数)。

     逆向Web-Link 图:map函数输出所有包含指向target URL的source网页,用(target,source)这样的结构对输出。Reduce函数局和所有关联相同target URL的source列表,并且输出一个(target,list(source))这样的结构。

    分布式排序:map函数从每条记录中抽取关键字,并且产生(key,record)对。reduce函数原样输出所有的关键字对。

     (参考:http://avindev.googlepages.com/mapreduce.doc

 

   

    BigTable:一种用于管理超大规模结构化数据的分布式存储系统,可以管理分布在数以千计服务器上的以PB计的数据。Bigtable API将包括用于创建、编辑表和列,改变群集、表、列元数据的函数。BT不支持完全的关系数据模型,而是为客户提供了简单的数据模型,让客户来动态控制数据的分布和格式。BT只能支持大部分SQL。

 

 

二、Google App Engine

     Google App Engine是一个开发、托管网络应用程序的平台,使用Google管理的数据中心。它在2008年4月发布了第一个beta版本。Google App Engine使用了云计算技术,它跨越多个服务器和数据中心来虚拟化应用程序。当前,Google App Engine支持的编程语言是Python和Java. http://appengine.google.com

 

 

三、Hadoop

   Hadoop(http://hadoop.apache.org)是apache下面的一个分布式并行计算框架,是从lunece中抽取出来的一个框架。Hadoop主要是由HDFS、MapReduce和Hbase组成。
 HDFS是Google File System(GFS)的开源实现。
 MapReduce是Google MapReduce的开源实现。
 HBase是Google BigTable的开源实现

   Google的上述分布式框架很有创造性,而且有极大的扩展性,使得Google在系统吞吐量上有很大的竞争力,但是用C++写的。因此Apache基金会用Java实现了一个开源版本hadoop,支持Fedora、Ubuntu等Linux平台。

您可能感兴趣的与本文相关的镜像

HunyuanVideo-Foley

HunyuanVideo-Foley

语音合成

HunyuanVideo-Foley是由腾讯混元2025年8月28日宣布开源端到端视频音效生成模型,用户只需输入视频和文字,就能为视频匹配电影级音效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值