Google整体架构猜想
本文是基于现有的公开资料和个人的经验来对Google的整体架构进行总结和猜想。
在软件工程界,大家有一个共识,那就是"需求决定架构",也就是说,架构的发展是为了更好地支撑应用。那么本文在介绍架构之前,先介绍一下 Google所提供的主要产品有哪些?
产品
对于Google和它几个主要产品,比如搜索和邮件等,大家已经非常熟悉了,但是其提供服务的不只于此,并主要可分为六大类:
设计理念
根据现有的资料,Google的设计理念主要可以总结出下面这六条:
整体架构的猜想
在整体架构这部分,首先会举出Google的三种主要工作负载,接着会试着对数据中心进行分类,最后会做一下总结。
三种工作负载
对于Google而言,其实工作负载并不仅仅只有搜索这一种,主要可以被分为三大类:
两类数据中心
按照2008年数据,Google在全球有37个数据中心,其中19个在美国,12个在欧洲,3个在亚洲(北京、香港、东京),另外3个分布于俄罗 斯和南美。下图显示其中36个数据中心在全球的分布:
图1. 2008年Google全球数据中心分布图
根据 Jeffrey Dean 在2009年末的一次演讲和最近几期季报可以推测出Google并没有在2009年过多地增加全球数据中心的数量,总数应该还是稍多于36个,但很有可能 在台湾、马来西亚、立陶宛等地增加新的数据中心。
虽然Google拥有数据中心数量很多,但是它们之间存在一定的差异,而且主要可以分为两类:其一是巨型数据中心,其二是大中型数据中心。
巨型数据中心:服务器规模应该在十万台以上,常坐落于发电厂旁以获得更廉价的能源,主要用于Google内部服 务,也就是内容交付服务,而且在设计方面主要关注成本和吞吐量,所以引入了大量的定制硬件和软件,来减低PUE并提升处理量,但其对SLA方面要求不是特 别严厉,只要保证绝大部分时间可用即可。下图是Google巨型数据中心的一个代表,这个数据中心位于美国俄勒冈州北部哥伦比亚河畔的Dalles市,总 占地面积接近30英亩,并占用了附近一个1.8GW水力发电站的大部分电力输出,当这个数据中心全部投入使用后,将消耗103兆瓦的电力,这相当于一个中 小型城市的整个生活用电。
图2. Google在美国俄勒冈州哥伦比亚河畔的巨型数据中心近景图
大中型数据中心:服务器规模在千台至万台左右,可用于本地交互或者关键业务,在设计方面上非常重视延迟和高可用 性,使得其坐落地点尽可能地接近用户而且采用了标准硬件和软件,比如Dell的服务器和MySQL的数据库等,常见的PUE大概在1.5和1.9之间。本 来坐落于北京朝阳区酒仙桥附近的"世纪互联"机房的Google中国数据中心也属于大中型数据中心这类,其采用的硬件有DELL的工作站和Juniper 的防火墙等,下图为其一角。
图3. Google前中国数据中心的一角(参[26])
关于两者的区别:具体请查看下表:
表1. 巨型与大中型数据中心的对比表
总结
最后,稍微总结一下,首先,普通的用户当访问Google服务时,大多会根据其请求的IP地址或者其所属的ISP将这个请求转发到用户本地的数据中 心,如果本地数据中心无法处理这个请求,它很有可能将这个请求转发给远端的内容交互中心。其次,当广告客户想接入Google的广告系统时,这个请求会直 接转发至其专业的关键业务数据中心来处理。
图4. 总结
因为本文是基于现有的公开资料和个人的经验的总结和猜想,所以和Google实际的运行情况没有任何联系。
http://hi.baidu.com/xuwanbest/blog/item/5108c4021a9df6024afb5153.html
|
转载于:https://blog.51cto.com/caols0621/424149
Google整体架构猜想相关推荐
- 【收藏】GeoMesa整体架构模块介绍、创建Schema并导入数据
geomesa-accumulo:基于 Apache Accumulo的DataStore 实现 geomesa-archetypes: Maven构建模板 geomesa-arrow: 基于 Apa ...
- linux 哪个进程在使用串口_Linux内核的整体架构
转载自蜗窝科技 Linux内核的整体架构www.wowotech.net 作者:wowo发布于:2014-2-21 13:23 分类:Linux内核分析 0. 转载者说在前面的话 转载目的: 能够让 ...
- 【leveldb】整体架构
LevelDb本质上是一套存储系统以及在这套存储系统上提供的一些操作接口.为了便于理解整个系统及其处理流程,我们可以从两个不同的角度来看待 LevleDb:静态角度和动态角度.从静态角度,可以假想整个 ...
- Google服务器架构图解简析
无意间发现一个自己比较感兴趣的google的文章,挺不错的还,转载一下!!!虽然可靠性无法查证 PS:Google,无疑是互联网时代最闪亮的明星.截止到今天为止,Google美国主站在Alexa排名已 ...
- 史上最全JVM整体架构和调优参数说明,带你彻底理解JVM整体架构与调优技巧
大家好,我是冰河~~ 从今天开始,我们正式开始<架构师进阶系列>技术文的更新,在<架构师进阶系列>中,我们首先一起来探讨有关JVM的知识. 很多小伙伴都认为JVM的知识很难,很 ...
- 【赵强老师】大数据平台的整体架构
先看视频. [赵强老师]大数据平台的整体架构 大数据平台中的主要组件,如下: HDFS(Hadoop分布式文件系统) 源自于Google的GFS论文,发表于2003年10月,HDFS是GFS的山寨版. ...
- Google服务器架构图解简析。
无疑是互联网时代最闪亮的明星.截止到今天为止,Google美国主站在Alexa排名已经连续3年第一,Alexa Top100中,各国的Google分站竟然霸占了超过20多个名额,不得不令人感叹Goog ...
- Google服务器架构图解简析(转载)
PS:Google,无疑是互联网时代最闪亮的明星.截止到今天为止,Google美国主站在Alexa排名已经连续3年第一,Alexa Top100中,各国的Google分站竟然霸占了超过20多个名额,不 ...
- Google服务器架构解析
标签: Google,Linux,服务器架构 PS:Google,无疑是互联网时代最闪亮的明星.截止到今天为止,Google美国主站在Alexa排名已经连续3年第一,Alexa Top100中,各国的 ...
最新文章
- Python __dict__属性详解
- js 加alert后才能执行方法
- 东拉西扯:那些“老”互联网公司
- Redis各特性的应用场景
- JS-面向对象-继承
- 使用Docker Swarm来运行服务
- Rearchitect Your Web Applications for Microsoft ASP.NET 2.0
- 行政界线类型代码_行政区划代码的代码表
- 计算机推免经验分享——中科院信工所
- latex 编译缺少STXingkai字体
- 龙芯电脑上配置LAMP环境
- 尝一尝HBuilderX香不香
- 只有他自己知道——生活所迫罢了
- STATA 生存分析cox 等比例风险假设
- OJ的介绍以及使用方法
- 荐9个可以帮助你的公众号
- Swift实现自定义控件之---UISwitch
- mipi白皮书 在5G下 IOT
- 监狱长关押囚犯问题.
- PigyChan_LeetCode 1110. 删点成林
热门文章
- oracle怎样查询能利用索引,oracle怎样查询索引的使用情况
- 不是所有学计算机的都是肖奈,为什么《微微一笑很倾城》中贝微微肖奈学习都很拔尖,却都不考研...
- linux系统cpu文件,Linux_学堂:当前Linux系统运行的各种参数, 1、CPU 在文件“/proc/ - phpStudy...
- python子类_python创建子类的方法分析
- axios传递数据到java_axios 传输与springboot后台接收数据
- python线性回归做预测_python-线性回归预测
- select函数fdwrite用法_通俗易懂的学会:SQL窗口函数
- 关于基因差异化的那些事 edger Deseq2和limma的使用及一些总结
- python卸载_Python包管理工具pip - amanlikethis
- java访问win10共享盘失败_Win10不能访问共享磁盘的解决方法(亲测能用)