`

图解Google搜索技术

阅读更多

原文 http://server.51cto.com/NGDC-221158.htm

 

谷歌(Google),一个非常成功,但又十分神秘,而且带有几分理想化色彩的互 联网搜索巨人,它还是一家相当了不起的广告公司,谷歌首页上的那个搜索按钮是其年赢利200亿美元的杀手级应用,也是Internet首屈一指的商业和技 术神话。近日国外一家网站(PPCblog)精心绘制了一张谷歌搜索流程图,这张流程图展示了每天拥有3亿次点击量的Google搜索按钮背后搜索引擎在 那不到1秒的响应时间内所进行的处理。

在你点击了Google搜索按钮之后到看到结果这不足1秒钟的时间内,它做了什么?互联网上的内容如何被谷歌找到?什么样的内容会被收录?想必大家一定都想知道谷歌搜索按钮背后的秘密吧。别急,开始之前我们先来看一下神秘的谷歌数据中心。

谷歌自家设计服务器

谷歌的数据中心高度机密,我们所能得到的信息十分有限。我们先来看几个数据:谷歌在美国本土的数据中心有19个以上,另有17个分布在美国以外的世 界各地;每个数据中心有50万平方英尺(46450平方米),建造一个数据中心要花费约6亿美元;谷歌的数据中心是世界上最高效的设施之一,非常环保;数 据中心使用50-100兆瓦的电力,考虑到冷却问题,通常建在便于用水的地方;谷歌的服务器被安置在标准的海运集装箱中,每个集装箱可容纳1160台服务 器。关于谷歌的数据中心,我们就只知道这么多了。

神秘的谷歌数据中心
图1 谷歌自家设计的服务器 

神秘的谷歌数据中心
图2服务器自备电池

谷歌拥有的数十万台服务器都是自己设计的,它们认为这是公司的核心技术之一(51CTO推荐文章:Google要出服务器?英特尔要小心了 )。每台服务器都配有一颗12伏电池,确保万一主电源断电时还可持续供电。

至于为什么为每台服务器配备电池,谷歌的回答是成本。一般数据中心多依赖UPS(不间断电源系统),这基本上算是大电池,会在主电力失效而发电机还 来不及启动时暂时协助供电。而谷歌认为直接把电力内建到服务器更便宜,而且成本能直接跟服务器数量相符合,如此便不会浪费多余的容量。另一个原因是效率, 大型UPS可达92-95%的效率,这意味着许多电力还是被浪费掉了,但谷歌采用的内建电池作法效率超过99.9%。

神秘的谷歌数据中心
图3 谷歌的服务器被安装在集装箱中,每个集装箱容纳1160台

神秘的谷歌数据中心
图4工作中的谷歌员工

 

谷歌如何找到并收录你上传的内容?

谷歌如何找到并收录你上传的内容?
图5发生在用户搜索之前

谷歌使用它的"爬虫"工具在一刻不停地周游互联网世界的每一个角落。上图中间的6个步骤依次描绘了从内容出现在互联网上到内容被收录进谷歌的数据库 供用户检索这一过程,其中第2、3、5步又有许多分支,所有这些都是为了建立一个信息"集汇池",这是第一个阶段的工作,第二个阶段才是从这个"池"中为 用户筛选他们所需要的内容。接下来我们一步步看谷歌是如何搜集并整合信息的。

1、网友上传内容,比如博客、微博或其它类型的WEB内容被更新到网上。

2、Google的"爬虫"发现了这一更新。在这一步,谷歌加入了许多判断机制,主要包括以下几点:

2.1、Google的"爬虫"沿着链接路径(URL)周游互联网,但如果没有URL指向某一站点,则这一站点将不会被索引。

2.2、如果你在robots.txt中设置了不许索引(部分或全部),Google的"爬虫"将不会抓取你站点上的相应内容。

2.3、如果指向你站点的连接上有nofollow标签,Google的"爬虫"将不会从这些URL路径来到你的站点。如下图:

谷歌如何找到并收录你上传的内容?谷歌如何找到并收录你上传的内容?
图6 图7 网页原代码中的nofollow标签

URL就像是Google"爬虫"周游互联网时的路标,谷歌当然希望收录有价值的网页,所以必须采取一种机制分辨哪些URL是垃圾信 息,nofollow标签正是谷歌所倡导的方法之一。网站的合法更新人员几乎不会上传垃圾URL,但它们往往大量出现在评论跟帖和论坛中,就像上图中的例 子,这些URL对于谷歌来讲是没有意义的,为了防止"爬虫"经由这些URL到达某一站点,在源代码中它们都会自动被加上nofollow标签。

2.4、Google也能通过blog软件或xml站点地图找到你的网站。

2.5、从权威性越高的网站链接到你网站的URL越多,你的网站的权威性也就越高,但Google"爬虫"始终会忽略被加上了nofollow标签的URL。

上面这几点大概就是谷歌在收录信息时对内容提出的"准入"要求,看来在一些开放的地方(比如论坛)大量发布URL以求让谷歌关注,这一小伎俩是没有什么效果的。以上是信息被谷歌收录之前所发生的事,一旦信息被谷歌收录了会发生什么呢?请往下看:

谷歌如何找到并收录你上传的内容?
图8信息"素材"的存储

3、信息被谷歌收录之后当然也要进行加工处理,主要包括两个步骤,一是信息"素材"的存储,二是对收录的信息按要求进行优化,上图描绘了"素材"的 存储方式,主要包括两部分:网页标题和链接数据被保存在一个索引中,用于广度优先搜索(可见文章标题是多么的重要,做编辑的一定要有驾驭标题党的觉悟); 网页内容保存在另一个索引中,以用于检索频率不高的长尾、个性化、深度优先搜索。

此时可能你已经明白了,当你用谷歌搜索时,你并没有在检索时时更新的互联网,而是在检索谷歌的缓存,只是谷歌更新的速度非常快,以让其缓存尽量与互联网上的内容同步。

谷歌如何找到并收录你上传的内容?
图9优化已收录的信息

4、谷歌基于URL评估域名和网页的总体权威性。

5、检查网页以防止作 弊行为,包括以下几点:

5.1、谷歌的搜索质量和反垃圾信息审查。

5.2、1万多远程测试用户评价搜索结果的质量。

5.3、谷歌征请用户对有PageRank讹诈嫌疑的垃圾信息进行举报。

5.4、谷歌根据数字千年版权法(DMCA)去除盗版内容。

6、在对页面进行分析之后,每个页面都被附加上很多用于辅助用户搜索的数据片。

从信息出现在互联网上到被谷歌收录,然后谷歌对这些数据进行分析优化,至此,一个实时更新的互联网信息"集汇池"就建立起来了,可以说谷歌存储着整 个互联网的快照。以上就是我们在按谷歌搜索按钮之前它所做的事情,接下来我们看一下谷歌如何响应用户的搜索请求,另外谷歌的广告是如何来到我们面前的,不 要忘记,谷歌可是靠广告营生的。

只要有人用谷歌的服务它就能从中赚钱,就怕像安卓(Android)手机系统那样,有些流氓厂家把安卓装在了自己的智能手机中,但是把其上谷歌的各种服务全部抹掉,改用自己的服务,这样谷歌当然不干了,所以安卓一更新,这些流氓手机厂家就紧张。

 

谷歌如何帮助用户进行搜索?

谷歌如何帮助用户进行搜索?
图10从用户开始检索到生成初步结果

从用户开始检索到生成初步结果(这时的结果并不会直接呈现给用户),经历了4个步骤:

1、用户发出搜索请求。谷歌搜索质量工程师PatrickRiley说:在大多数搜索中,你的搜索处于多个并行的控制过程或谷歌实验室的创新项目组过程中,可以说每一个查询请求都会参与一些谷歌的创意实验。我们都是小白鼠?

2、谷歌会对用户输入的关键词提供一些建议。

3、谷歌会用同义词匹配与你的搜索关键词语义相近的查询结果。

4、生成初步的查询结果,虽然谷歌宣称可以找到成千上万的相关结果,但一般只显示不到1000条,同时查询结果将被进行本地化处理,本土站点在查询结果中优先出现。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics