网页是基于互联网的一个最基本的单位,搜索引擎围绕一个网页展开的工作大致需要经历如下四个环节(包括但不限):
(1)下载系统:搜索引擎下载页面
(2)分析系统:搜索引擎对页面进行分析
(3)索引系统:搜索引擎根据分析结果决定是否予以收录、索引
(4)查询系统:搜索引擎将页面加入缓存,进行查询
为何搜索引擎要按照这种方式展开工作?搜索引擎的使命是什么?
(1)搜索引擎为何要将页面下载回去?
难以想象,搜索引擎不把页面下载回去,加入搜索引擎的页面库,搜索引擎将如何对页面进行分析。难道让搜索引擎根据需求才对页面进行实时下载、分析,然后直接进行展现?哦不……那样效率会非常之低,在用户搜索一个关键词进行检索时,搜索引擎需要花费大量的时间才能分析完毕,给用户返回结果,不怕用户等得不耐烦跑掉?
实际上,搜索引擎需要在非常短暂的时间内,对用户的搜索请求返回结果,因此就需要事先在搜索引擎中建立一个数据库,然后把常用的信息放入高速缓存之中,这样就可以保证在极短的时间内,对用户的请求进行响应了。
关于缓存,大家可以自行百度一下,我举个不是太好的例子,就像电脑的机械硬盘和固态硬盘相对于内存的速度(有明显质的或者几何级别的区别)
不仅如此,搜索引擎所担负的使命主要还有两点,一是抓取更多页面,而是根据分析系统和查询系统的情况,根据重要程度去跟踪观察一些页面。
搜索引擎需要尽可能地遍历并下载互联网上存在的所有页面,只有这样才能为用户提供更多的参考信息。我来举个例子:许多人都在谈论,谷歌在学术界的搜索体验要明显高于其他搜索引擎,其实也可以说是谷歌在世界范围中抓取的学术界的页面的数量和质量都要比其他搜索引擎要多要好。
对于越重要的页面,更新越频繁的页面,展现多的页面,需要分配更多资源对其进行跟踪,以确保目标页面处于一种正常状态(当目标页面处于非正常状态时,可以及时反应过来,进行相应处理)。
(2)为什么页面被下载回去还要进行分析?
因为互联网上的页面,绝大部分都并不会是优质的页面(一方面是没有搜索价值或者用户搜索需求的页面,比如我的流水账一样的日记,比如一些隐私信息等;另一方面是针对搜索引擎制造的粗制滥造、抄袭的垃圾页面,就是我们熟知的黑帽作弊页面;还有一些是已经不存在的页面,比如一些页面曾经可访,现在由于一些原因不可访问,比如一些国外倒闭公司的网站,或者因为不同原因删除的页面……
搜索引擎为了对鱼龙混杂的互联网上存在的大量页面进行甄选,所以必然需要对这些页面进行选拔,对优质页面进行优先展现,将劣质页面过滤掉不予展现。
(3)为何需要索引机制?
用户从搜索引擎中进行搜索时,一般只会对很少的一部分页面进行访问即可解决需求,因此并不需要对大量的网页进行展现。因此,为了加快查询响应速度,只对根据分析系统得到的一批优质页面进行展现,是一个不错的主意。
而且,这个阶段有一个特性,会把页面和关键词进行联系。这为搜索引擎在遇到用户的不同搜索词对不同页面进行展现提供了解决方案。
就如同一个页面不会霸占所有的关键词,一个关键词的结果展现中对于不同的页面也有不同的排序。
(4)查询系统是什么好吃吗?
查询系统是搜索引擎与用户最接近的一个环节,用户想从搜索引擎得到的信息都是直接通过查询系统进行展现的。
普通的用户不会在意他得到的信息来自于哪里,而是对他是否有帮助。所以搜索引擎必须致力于解决这个环节上可能出现的问题与矛盾。搜索引擎会根据这个环节中用户的各种行为,来对搜索结果排序进行调整、干预。我举个例子,比如大部分用户通过某个关键词进入排序在前面的某个页面,但是在该站点的另外一个页面上进行了跳出或者转化,那么搜索引擎可能就会认为,最终的页面才更适合展现给用户,如果用户浏览的具有价值的页面没有被抓取、收录、索引的话,搜索引擎可能会对目标页面进行这样的工作,对最终的展现进行跳转。另一个例子,如果有大量用户对排在前面的页面的跳出率过高,搜索引擎可能会认为这个页面展示的效果不好,从而把本来排在前面的页面移到后面去。