原文整理:北京SEO
什么样的技术才能支持Google的运行呢?很多人都很迷惑,Google是如何做到的,点一个按钮,就能从世界各地的网页中把你需要的内容找出来,而且这个过程是如此的短。Google采用的原理是:并行操作、充足数量的计算机、低成本硬件和专业化。
并行操作
所谓并行操作,就是同时完成多个步骤。例如,制作100张披萨饼,虽然一个厨师可以用一个烤炉一个一个制作,但如果用100个厨师100个烤炉,则速度会快很多。让我们来看一下Google需要筛选的数据量,需要特别注意做起来应该非常有效。例如,一项要求Google处理网上的每张网页的工作,如果一张跟一张(串行工作)处理,每张花一秒种,则需要花上一百年才能完成。但是,如果并行地在100台计算机上操作,只需1个月就完成了。使用并行操作方式做复杂的事情,是搜索引擎如Google的核心竞争优势之一。由于采用了这种原理,速度得到大大的提高。因为这样做,必须同时配备大量的计算机,所有,Google还配备了许多的备用计算机。
充足数量的计算机
对于全部的联机服务,Google必须做到安全可靠。的确,Google网站被关断或不能使用的情况是根本不可能出现的。Google的基础设施不仅能够承受大量机器遭受故障,而且,还能承受数据中心的故障。数据中心是机器联网的地方。甚至许多人都这样认为,如果Google不能响应,那是应为整个Internet被关断了,而不是Google的服务被关断了。为获得这种可靠性,Google不仅使用了少量的可靠性非常高的机器,而且还使用了大量的低成本的机器。Google拥有10000多台机器,平均每个员工达10台以上!
低成本的硬件
Google的整个基础设施使用了大量的低成本PC机。当Google明确了怎样将许许多多的计算机采用一种有效的方式连接起来之后,于是就诞生了一个由几万台计算机构成的强大的“分布式”计算机。Google不是购买几台功能强大的、价格昂贵的计算机,而是使用大量的廉价计算机构建了自身的超级计算机系统。虽然这样做可能是一种节约的行为,诞生,请设想一下,光日常维护这样庞大数量的计算机就需要多少工作!
专业化
Google的搜索过程有点象一条装配线。在解答一个特殊的检索式时,它不是由一台计算机去做每件事,而是将任务分解成简短的步骤,分别由许多机器完成。每台机器专攻一项工作,因而,都能快速的完成份内的工作。例如,一台机器被用来接收用户的检索关键词,然后将检索式送交给计算分值的机器,再由评分机器要求编制索引的机器对分值相关的数据匹配网址。当这些机器忙于应答检索所必须的工作时,原来的机器会腾出空儿来接收另外的检索式。