谷歌中国研究院副院长张智威(腾讯科技摄)
腾讯科技讯(李松伟)8月18日消息,谷歌中国研究院副院长张智威在2010年中国互联网大会“云计算产业高峰论坛”上表示,能源问题成为全球关注的问题,谷歌也在利用云计算降低每次搜索的能耗。
张智威指出,目前Google搜索一下的能耗是12卡,而喝一瓶啤酒大约是500卡。结果谷歌自身的努力,目前花在冷却方面的费用已从原来的占35%费用总额降至9%。
以下是谷歌中国研究院副院长张智威演讲实录:
张智威: 各位老总、各位嘉宾,大家好!
刚才很多老总提到很多云计算的服务跟应用,我们觉得非常感动。另外有些老总提到云计算的技术可能已经很成熟了,但是谷歌觉得云计算很多地方在技术上可以进一步推。今天跟大家分享一下,谷歌在最近这一两年,在未来一两年云计算的技术做怎样的拓展。
如果要了解云计算,可能要了解它的一些规模跟它的应用极端。怎么看规模呢?首先我们看一下GFS,大家都了解谷歌的文件系统。我们觉得GFS已经有点过时了。同时,我们觉得MAPREDUCE也有它的问题。为什么现在这些都不够力呢。
跟大家做一个比方吧,几年之前,我在大学的时候,那个时候他们说GADBIC,TIROBIC,往后面走,可能我们讲的是TERA,需要非常大的存储。如果你现在用的技术是要登录月球的技术,可能没有到宇宙畅游,所以在技术上,我们必须做革新。接下来跟大家阐述一下,到底哪边出了问题。比如说,我们看看这几个不同的非常受欢迎的应用。
这些证明了一些计算的极端,我就举两个例子,因为时间的关系。搜索引擎用户数量是非常大的,精确数量是中等的。如果您今天搜集的信息,我们有5台机器,两台是当掉的,如果丢了东西,您可能根本都不知道,所以它的精确度不需要很高。但是,你用云计算做科学计算,比如说发一个飞弹,那精确性可就不能开玩笑了。另外其他几个方面,大家可以看到,比如可靠度、数据量。可靠度也是非常重要的,假设你用云做股市交易的话,你不可能中间宕机,大家的交易就不能实现了。
所以,大家考虑到这方面,必须考虑极端。我们接下来用一个例子来做解释。假设,今天我们只用一台计算机、一台服务器,我们来设计一个COMMUNICATION MODEL,我们第二个级别是一个计算机的机架,40台的服务器,第三个是一个计算机中心。我们假设有十万台的服务器。在这三种不同情况的结构下面,你们觉得软体的写法,或者是它的技术是一样的吗?我们看看几个数据。
首先,有三个很重要的数据,一个是LATANCY,当你到内存取资料的时候,到底中间的容量是多少。第二个是你每次取样的时候,有多少数据会取回来。第三个是容量,里面的容量到底有多少。这个本题几乎趋近于零,但是如果我们看一个机架,我们再来看这个数据,它的数字有点变化。下一幅大家看,它的LATANCY变高了,你看在机架这种级别上面,他们两个的级别基本上差不多了。这个时候,如果想考虑它的价格的话,多用一点BRAN,如果在数据中心级别来讲,这些数据又改变了。比较大的改变是它的单位又改变了,我们加那么多的CPU加了那么多的东西,为什么它往下走了?从一个CPU的观念来看,好像今天四环堵车了,你说好,我把四换从四个人增加到八个人,增加了几倍机器,但是从出四环和进四环的路没有拓宽,最后堵死在那边了。
我们最近觉得有什么样的云计算设计挑战呢?至少跟大家分享三方面,第一个是能源的节约。刚才有一两位老总讲到能源,能源非常重要。一方面我们希望节约能源,不希望在地球上摧毁整个的环境。过去几百年来,基本上每30年,我们的地球能源消耗会双倍一次。但是最近这一年,尤其在亚洲情况非常严重,也许五六年就提高了一倍,甚至在中国,在东亚,大概五六年资源就提高了一倍。我们GOOGLE搜索一个研究大概是12卡,你喝了一瓶啤酒大概是500卡,你喝了一饼啤酒,大概是2000多搜索。我们必须把搜索的卡降低,如果你的成本特别高的话,将来你的公司可能没有办法得到非常好的利益。为什么要节能、节源,这是非常重要的,必须使你的利润提高。
在谷歌,我们经过多少年的调研,我们在能源使用上有非常好的突破。在左边是云计算的平台,可能50%的能源是花在IT方面的,其中的35%是花在冷却的。谷歌在这方面有很多的研究,所以在冷却方面只花9%的能源。能源效应是6%,它大部分能源是做有效工作的。如果说你投资两块钱,在别的平台上服务是两块钱,在谷歌的平台上也许便宜很多。
第二个是故障恢复,你存在银行的钱不见了,故障修复是非常重要的环节。即使我们的机器是99.9%的使用时间,一年也有9小时的故障吧。如果有1000台的服务器的话,一般在北美有0.25次的断电,3次的路由器故障,100次的计算机故障,1000秒的硬碟故障,这种情况下,要保证数据不会丢失,还要正常运转。
故障的快速修复有很多的环境,比如说复制,对一些比较对正确性不是特别关切的搜索,我们可以做松散的一致性,近似的答案,或者不完整的答案。
最后一个要跟大家分享的是,新的城市设计的模式。我们知道MERIDUCE已经做了很多年了,它有它的问题。另外我们在技术上加了FLASH,我们加了CPU,所以跟大家分享两个事情,一个是在这样的不同的情况下,我们发现FLASH乐不太适用,我们基本上有下面几个重要的突破。新一代集群级文件系统,第二个是自动分布元素据层,它的读写用REEDSOLOMON技术,客户驱动的编码和复制也可以由顾客来做制订,预测、规划和优化数据移动非常重要,尤其我们希望把数据搬到离用户比较近的地方。缩短服务的延迟,这是绝对重要的,对所有用户来讲,延迟是很重要的课题。最后是故障修复。
这个是并行算法的一个比较,如果做研究的人比较有兴趣。但是一般来讲,大家可能看到这个图片觉得想睡觉。但是MERIDUCE有一个很大的问题,它每次要做大量的数据之前,要把数据在硬盘上读出来,最后再写回去。好处是,如果你的硬盘宕掉了,修复非常容易。坏处是你的修复是有地跌性的,每次都要写IO,非常花费时间,所以我们也希望有一个新的算法把这个问题解决。
数据规模为什么要大呢?我这里边做一个非常简单的例子来解释一下。假设今天我说了我只有100台机器,我只能搜集少量的数据来做一些算法的精确度。这个图的左边,它基本上秀的是,如果我的数据只有大概,它有四种算法,比如我们看第三种方式,在数据比较小的时候,它的精确度不是很高。但是我们继续加很多数据,继续再加。这个时候一个不算太好的算法,在非常多的数据情况下,它变成第一了。数据规模可以使算法优化的。在以前我们做研究的时候,常常用的小数据,我的算法赢了别人,然后发表一篇论文。但是在谷歌里面常常说,小规模数据的算法反而在大规模数据是最后一名。大规模的运算开始算法的精确度提高很多,第一个是谷歌翻译,谷歌翻译搜集了非常多的联合国的文件,根据那个文件做样本。所以你今天打进的词条,就有这个翻译把这个传进去,而不是非常传统地做算法的MODEL。谷歌的语音识别是另外的例子,传统的算法数据只有60%。但是因为我们搜集了非常多的数据做训练,所以我们就可以增加到80%多。
最后的例子,我们可以用大量的数据,还有用户的一些反馈做一些趋势的预测,这个非常有利的,我举一两个例子。去年我们有禽流感,或者H1N1大家比较紧张,后面这个图是国际卫生组织发布的禽流感感染人数,在谷歌内部,用户的关键搜索词,实际上在卫生组织发布数据之前,我们就已经早就知道了。譬如说你今天身体不舒服,你打感冒药等等的,我们把关健词做一个统计,你可以看到谷歌在两三个月之前,在他们没有发布这个疫情之前,我们就已经知道这个数据了。
我再举一个很简单的例子,在国外经济情况好好坏坏,一会儿好、一会儿坏,我们外面的人只有在每一个月,或者每一个季度之后,我们才看到这个经济的报告。这个时候,你是炒股的话,可能晚一点。但是我们可以看看关键字,最近搜餐厅的比较多了,那可能经济情况比较好了。搜炒菜、煮菜的,可能最近大家比较穷了,可能大家最近自己生火做饭。
我就举一些负责肤浅的例子了,有些关键的搜索词是可以拿来做数据应用的。今天就跟大家分享一下谷歌的超级云计算平台技术。显然因为规模,算法的规模是越来越大的,既有的技术是永远没有办法跟上,所以已经一直在做调研,希望能替云计算技术做更好的突破与开发,谢谢各位!