网易科技讯 2月23日消息,《华尔街日报》“Portals”的专栏作家Lee Gomes日前发布《揭密谷歌数据中心》一文,中文译文如下:
构建谷歌一号的王国不仅需要多年的辛勤耕耘和上千万美元的设备,电脑业的精英们也要付出超乎寻常的脑力劳动。
不过或许只要一个周末,你就能将自己塑造成为谷歌二号。
这是对加州大学伯克利分校(University of California, Berkeley)一个研究项目的一种看法。这个项目的资助者中恰恰也有谷歌的名字。伯克利的研究人员们无意找到谷歌搜索运算法则背后的秘密,实际上,计算机科学家、伯克利分校RAD实验室主任阿曼多•福克斯(Armando Fox)和他的团队正在努力破解谷歌数据中心的秘密。
这些数据中心是维持谷歌搜索软件运转的原动力;雅虎(Yahoo)、微软(Microsoft)和亚马逊(Amazon)也都有自己的数据中心。数据中心能将成千上万台的廉价电脑打造成为一个庞大的网络服务器。搜索引擎巨头们在搜索时代来临前夕不得不创建出数据中心,原因在于要想靠一台机器解决所有的搜索问题,无论这台电脑性能多么强大,也是不可能的。
眼下,数据中心的用武之地仍在不断扩大。然而,设计及运营数据中心仍有相当的难度;一般来说,只有谷歌或者亚马逊这样的大公司才能迈进这个门槛。走进福克斯和他的团队,我们看到他们的目标是让构建和运营数据中心变得像盖大楼和开灯一样简单。
这种将深奥晦涩变得简单易行的任务永远都是电脑业的课题。近几十年来,正是这些努力让性能卓越的电脑走进了普通人的生活。没有人预测“个人数据中心”将会出现,但数据中心的应用可能借此延伸到互联网巨头公司这个小圈子之外。
其他研究机构感兴趣的是如何让数据中心变得更加经济节能,但RAD实验室的研究重点却在于软件,尤其是数据库得到了越来越多的重视,因为数据库是包括搜索和社交网络在内的现代互联网应用的根基之一。
由于网络搜索使用的数据库中包含有上百亿的互联网页面,如此庞大的资讯难以装入一台电脑。因此,谷歌和其他搜索网站将互联网数据库散布在几百、甚至上千台电脑上,这样,每台电脑只负责处理一小部分搜索任务。
设计一个可“升级”、分散于成千上万台电脑中运转的数据库意味着放弃数据库设计者的某些理想。福克斯说,其中之一就是“数据副本一致性”,这是指数据只有一种副本存在,而且对每个用户而言都相同。
对于存储在单一服务器电脑中的数据库来说,这容易实现,但当信息散布在多台电脑中时,则要变得困难得多了。首当其冲的问题就是,不同的电脑可能在不同的时间升级。
由此引发的一个结果或许就是两个同时执行相同搜索任务的人最终得到的搜索结果却略有不同。这在传统的数据库世界看来简直就是噩梦,不过搜索用户必须忍受这一切。这是笔划算的买卖:尽管有时稍不同步,但我们一眨眼的功夫,就得到了搜索结果。
对数据中心传统观念进行重新思考的另一途径包括对福克斯所谓“崩溃型软件”用处的认识。大多数电脑操作系统的启动方式属于以下两种模式之一:第一,在电脑正常关闭的情况下启动;第二,在电脑出现类似停电这样的故障时启动的所谓“崩溃恢复”模式。
但为什么非要两种模式不可呢?伯克利分校的研究人员们认识到,如果程序设计者只编写“崩溃模式”这一种组程序,那么事情会容易许多。作出最坏的打算没什么不好,试验表明,启动电脑时,无论电脑需要进行怎样的双重检查,只会占用很少时间。
这个项目的基本任务就是将不稳定的通用硬件塑造成为运行时间一定的计算单元。对于熟悉近代电脑发展史的学生来讲,这或许听上去并不陌生。在上世纪80年代后期,伯克利分校的工程师们发现,如果你按照一定方式将标准磁碟连接在一起,便可以拥有一个故障率极低的存储系统。
在独立磁盘冗余阵列(Redundant Array of Independent Disks)方面的某些开拓者也在为RAD项目工作。
除谷歌以外,该项目的出资人还包括微软。这意味着无论眼下双方正在如何针锋相对,两家公司并不打算在数据中心效能方面展开角逐。
即便大多数公司可以拥有谷歌式的数据中心,它们也不会真的付诸实施;他们缺少专业的知识。福克斯表示,即便他的团队成功将此类知识公诸于众,有些公司或许还是希望将数据中心外包,就像它们或许更愿意租赁而不是建造自己的总部大楼一样。他们大可不必东施效颦。
