搜索引擎的定义与基本工作原理

本文作者:
5年前 (2012-05-21) 沙发

搜索引擎是什么?或许大家和小兽SEO一样有时候对这样问,毕竟我们做SEO的人每天接触它,但是具体给个定义,恐怕大家也说不清,一千个人就有一千个搜索引擎:有人认为搜索引擎就是百度,有人认为搜索引擎就是 Google,有人认为搜索引擎就是 Yahoo。百科全书是这样定义的:

搜索引擎是帮助用户查找存储在个人电脑、计算机网络如互联网上的信息的软件程序。用户输入搜索项目,通常是通过录入一个关键词或短语,搜索引擎通过扫描被搜索的计算机和计算机网络,或者分解(分析)它们数据的索引,返回万维网站点、个人电脑文件或文档的列表。

这个定义可能越看越模糊,那么我们就要从搜索引擎的工作原理开始认识这个搜索引擎的概念

现在互联网上存在的网页数量是数以百亿千亿计的,这些网站存储在不同的服务器上,分布在世界各地的数据中心和机房。对于搜索引擎来说,要抓取互联网上所有的网页几乎是不可能的,从目前公布的数据来看,容量最大的搜索引擎也不过是抓取了整个网页数量的百分之四十左右。

一方面原因是抓取技术存在瓶颈,无法遍历所有网页,有许多网页无法从其它网页的链接中找到;另一个原因是存储技术和处理技术的问题,如果按照每个页面平均大小 20K 计算(包含图片),100亿网页的容量是 100×2000G 字节,即使能够存储,下载也存在问题(按照一台机器每秒下载 20K 计算,需要 340 台机器不停的下载一年时间,才能把所有网页下载完毕)。同时,由于数据量太大,在提供搜索时也会有效率方面的影响。因此,许多搜索引擎的网络蜘蛛只是抓取那些重要的网页,而评价重要性的主要依据是某个网页的链接深度。

有人会认为搜索引擎在接收到搜索请求时,会实时地从全球所有的服务器上查询信息,并把查询结果展示在用户面前,这其实是一种误解。如果搜索引擎是这样工作的,那么查询一条信息可能要等上好几年才能得到搜索结果,这还不包括期间网页发生的变化。实际上,搜索引擎会预先去拜访大量的网站,并把这些网页的部分信息预先存储在自己的服务器上,这样,当用户搜索的时候,其实是在搜索引擎自己的服务器中进行查询,就像我们在自己的电脑中查询文件一样。搜索引擎是非常复杂的技术,但是其基本原理并不复杂,其基本技术包括抓取索引排序

相关文章

发表评论