Google如何收录及排序网页?
去年,Matt Cutts,Google quality group 的工程师,其Blog几乎成了Google官方与用户沟通渠道,发布了一篇名为How does Google collect and rank results?的文章,用简单的语言描述了Google如何收入和给网页评级,叙述得相当详细,转载一下。
我们遇到的最常见的问题之一是“Google是如何判定哪个结果出现在搜索结果的前茅?”,Matt Cutts给我们简单地揭示了如何抓取、收录和给网页评级。
抓取和收录当你看到出现在Google的搜索结果的那个网页之前,Google在后台已经做了许多步骤。Google的第一步是抓取和收录互联网上的数十亿的网页,这个工作时由Google的机器人Googlebot来完成的,它浏览网络服务器抓取文件。 抓取的程序并不是漫无目的地在互联网上瞎逛,它访问服务器的特定的网页,然后扫描网页上的超文本链接,如果有新的文件也是这样抓取得;蜘蛛程序给每个得到的网页一个号码,这个号码指向它抓取的网页。
蜘蛛程序抓取了很多的网页,但这些网页还不是便于搜索的。如果没有一个索引,你要查询一个词,比如“国内战争",Google的服务器每次都要读取每一个文件的所有内容。
因此,第二步就是建立索引。我们不是去扫描每一个文件的所有内容,我们巧妙地进行数据的“转换”,列出每一个文件所包含的特定的词,例如,“国内”这个词可能出现在文件3,8,22,56,68和92当中,而“战争”这个词出现在文件2,8,15,22,68和77中。
建立好索引之后,我们就可以开始对网页进行评级,决定网页的相关程度。假设有人在Google的搜索栏输入“国内战争”进行查询,为了提交搜索结果和对结果进行评分,我们要做两件事:
1. 找到包含用户查询的词的网页
2. 给符合的网页按照相关程度进行评级
Google开发出一个有趣的技巧来加速第一步:Google不是把整个索引存储在一台功能强大的计算机上,而是用千百个计算机来存储这些信息。因为任务被分解到许多的计算机,可以更快地找到所需的答案。 详细解释一下,假设一本书的目录有30页,如果一个人要在目录中查寻资料,每次查询都要花几秒钟;如果用30个人每人查询一页目录,显然要比一个人查询的速度快很多。同样的,Google将数据分别存储在许多计算机上,这样搜索的速度会大大加快。
我们是如何找到那些包含用户搜索的词的网页呢?回到“国内战争”的例子,“国内”这个词出现在文件3,8, 22, 56, 68 和92; “战争”出现在文件2, 8, 15, 22, 68和77,记下同时出现这两个词的文件。
国内 3 8 22 56 68 92
战争 2 8 15 22 68 77
国内 战争 8 22 68
这样我们可以清楚地发现“国内”、“战争”这两个词同时出现的在三个文件里 (8, 22, 和68)。 含有这几个字的列表叫做“位置列表”,搜索文件包含这两个字,这叫做交叉搜索位置列表。(较快的交叉搜索的方法是同时进行搜索,如果一个搜索列表,22到68,那另一个就可以开始搜索其他的)
- 相关文章
- 谈Page Rank -Google 的民主表决..[12-04]
- Google排名服务找公司做还是找个..[12-04]
- Google PageRank排名新算法一[12-04]
- Google PageRank排名新算法二[12-04]
- Google PageRank排名新算法三[12-04]
- google中文关键词广告效果测试报..[12-04]
- 最新文章
- 谈Page Rank -Google 的民主表决..[12-04]
- Google排名服务找公司做还是找个..[12-04]
- Google PageRank排名新算法一[12-04]
- Google PageRank排名新算法二[12-04]
- Google PageRank排名新算法三[12-04]
- google中文关键词广告效果测试报..[12-04]
