揭开Google资料中心神秘面纱

来源:百度文库 编辑:神马文学网 时间:2024/06/02 23:23:17
讯 6月2日消息,据台湾ZNET报道,Google资料中心的内部运作不再秘而不宣。
Google一向鲜少对外透露其资料中心的作业,但上周三(28日),Google伙伴JeffDean在GoogleI/O会议的满场听众前,稍微揭开了公司基础设施的神秘面纱。
一方面,Google用的是一般的服务器、处理器、硬盘、内存等等。另一方面,Dean似乎认为1800台伺服器的丛集是非常普通的状况。而该公司使用的软件,能在半秒之内回应涉及700至1,000台伺服器的搜寻请求,则完全是另一回事。
Google从未透露他们究竟拥有多少台服务器,但我敢说至少不下数十万台。Dean表示,每个机柜存放40台伺服器。而根据某项估计,Google目前在全球有36个资料中心,以每个中心有150个机柜计算,Google的服务器至少超过20万台,而我认为实际数字大得多,且每天都在增加中。
不论真正的数字有多少,Google的成就实在惊人,部分原因是他们推翻了电脑业的传统作法。当所有的超大型资料中心,如纽约股票交易所或航空公司的联合订位系统都使用许多的主流服务器和软件,Google的资料中心,绝大部分是靠本身的技术构建而成。
我相信有些伺服器公司不以为然,但Google显然相信,自己的技术命运最好操在自己手中。Google搜寻产品与使用者经验副总MarissaMayer在29日的演说中提到,共同创办人LarryPage鼓励员工对“不可能的事情”保有一种健康的不敬(翻译:别太相信有什么不可能的事情)。
要维持如此大规模的运作,Google必须对每一台机器抱有一种随时可牺牲的态度。服务器制造商喜欢主打他们的高阶主机承受故障或当机的能力,但Google宁愿把钱投资在容错软件上。
Dean表示:“我们的观点是,拥有两倍数量但较不可靠的硬体,胜过一半数量但较可靠的硬体。你必须在软体的层级提供可靠度,如果你有1万台主机在运作,每天一定会有一些东西挂掉。”
Dean说,新丛集上线,最能显示出硬体的脆弱。每个新丛集上线的第一年,通常会发生1000次个别主机的故障,数千次硬盘故障;一次电力输送问题,导致500至1000台主机失效约6小时;20次机柜损坏,每次造成40至80台主机下线;5次机柜摇晃,导致半数的网路封包在传送过程中遗失;整个丛集至少一次重新上线,在两天之内的任何时间,影响5%的主机。整个丛集还有一半的机率会过热,在5分钟之内让几乎所有服务器当机,并且花上1到2天的时间恢复。
虽然Google用一般的硬体组件组装其服务器,却不用传统的封装,他们要求英特尔提供特制的主机板。Dean表示,Google目前在每40台服务器的机柜外,包覆一层外壳,这是自行开发的设计,而不是传统的每台服务器有个别的外壳。
Dean表示,该公司有几种服务器组装的方式,有些配备很多硬盘,有些数量较少。还有一些大范围的差异,他说:“我们不同的资料中心都有一些差异,但资料中心内部不会。”
至于服务器本身,Google偏好使用多核心晶片。许多习惯追求运算速度的软体公司,都很难适应多核心晶片,但Google没有这种问题。该公司在技术上早就必须适应横跨数万台电脑的结构,因此他们已经进入平行运算的世界。
Dean说:“我们真的、真的喜欢多核心主机。对我们而言,多核心主机就像很多相互连结俱佳的小机器,对我们来说相对好用。”
虽然Google对搜寻和其他服务都要求快速回应,其平行运算能在单一指令的执行相对较慢时,产生快速回应的结果。这对于多核心处理器和多线程模式设计者是一大鼓励。Dean说:“单线程的表现对我们来说真的无关紧要。我们有很多平行化的问题。”
那么Google要如何处理这些一般的硬件问题呢?用软体—看到这里你或许会想温习以前学过的电脑科学。
Dean说明Google软体的三个核心要素:GFS(Google档案系统)、BigTable和MapReduce演算法。而虽然Google资助了许多有助其开展的开放原码计划,这些东西仍属专有的软件。
Dean表示,三者中层级最低的GFS,几乎在所有主机中运作,负责储存资料。某些GFS的化身是“许多PB(petabyte)大小”的档案系统。目前有超过200个丛集在执行GFS,其中许多都包含数千台主机。
GFS把一块储存的资料(通常是64MB),至少放在三台称为chunkserver的主机内;假如chunkserver发生故障,主服务器便负责把资料备份到一个新的地方。Dean说:“至少在储存层级,主机故障完全由GFS系统处理。”
一窥Google资料中心里自行客制化的40台服务器机柜。基础建设大师JeffDean在GoogleI/O大会上展示这张照片。(