1.搜集器:搜集器又是大家俗称为蜘蛛,蜘蛛负责抓取互联网上的网站,蜘蛛有两种抓取方式,一种是深度优先,一种是广度优先。我的网站为例,深度优先是指以蜘蛛看到网页的第一的链接开始顺序如下图,知道把第一个链接下面所有的链接全部抓取才开始抓第二个链接,广度优先是指把第一个页面的所有的链接全部抓取完毕,开始抓取第二个页面。
2.www:www指的就是互联网所有的网页,全球有多少个网站?2006年统计是为8065万个网站,在网络迅速发展的这几年来,直到今天来也得好几亿了吧,而搜索引擎的任务就是把这些网站搜集并且赋予排名给供用户搜索。
3.原始数据库:用来存储蜘蛛抓取下来的最原始的没有任何排名的网页.
4.控制器:蜘蛛把网页下载下来后传入控制器。控制器负责把这些网页进行简单的分析例如消重等等,控制器还负责调遣蜘蛛,安排他们的抓取时间,抓取方式与抓取对象等等。控制器把所有的url提取出来,分为两种,一个是以抓取url和未抓取url。把所有的url的页面抓取过来后存入原始数据库。
5.索引器:索引器将网页分析模块传递的有价值的网页分为正排索引与倒排索引。正排索引也就是把每个网页都进行分词,分成很多关键字。倒排索引反过来把每一个关键词列出很多网页并将它们排序。
6.网页分析模块:网页分析模块可以说是最重要的一块。这一部分主要是对垃圾网页的过滤,例如消重,欺诈,违法等一些网站,特别是最近的百度算法大更新后,更新的也就是这一块的算法,主要对采集伪原创和垃圾外链给予打击,以及对每个网页的价值和外链一些复杂的算法进行评分也就是我们所说的权重,有了这个权重之后为以后的排序做好了准备。
7.检索器:将用户所输入的词进行分词,并从索引数据库中取出网页,并且进行排序,最后返回给用户结果。
8.用户行为日志数据库:用户行为日志数据库用来存放用户的行为,包括用户点击了第几位,在某一位网站上停留了多少时间,点击第二个网站的间隔,搜索关键词都是什么等等
9.索引器数据库:索引数据库用来存放索引器以关键词列出的网页。
10.用户:顾名思义就是网民。
11.用户接口:可以理解为百度搜索结果页面。
12.日志分析器:这一块个人认为很重要,搜索引擎越来越注重用户体验,是未来搜索引擎的发展趋势所在,这一块把用户行为日志数据库里面的用户行为进行了细致的分析,对它们的行为对互联网里众多网站进行权重以及排序上进行加减。