现在的搜索引擎往往不单单采取某种排序算法,他们往往将多重排序算法融合在一起,达到一个更佳的排序效果。因此,搜索引擎的排序流程涉及搜索引擎的每个环节。总体来说,我在优化长株潭应届生网时发现,搜索引擎排序算法主要涉及以下几个环节:网页抓取环节、离线分析环节以及用户查询环节。
一、网页抓取环节。搜索引擎一般利用爬虫,通过网页的链接关系到网上抓取页面。网页抓取环节是搜索引擎数据积累的过程。在网页抓取环节,爬虫需要记录网页的链接关系,网页的锚文本,网页更新时间网页等网页信息。然后对网页进行解析,除噪,得到网页的主题内容和网页之间的链接关系。然后通过分词工具对页面内容进行分词,统计网页中的TF,TP(词位置信息)等信息。最后,爬虫将这些信息保存到一个大的索引库当中去,为搜索引擎提供检索的数据。(以上信息离线计算)
二、离线分析环节。网页的抓取非常耗时,而且不可能一次性把网上的所有页面全部抓取下来。一般来说,搜索引擎都是隔一段时间对网络抓取一次,将新抓取的页面更新到索引中去。在网页抓取下来以后,需要统计索引库中网页的IDF值,然后根据网页的链接关系,计算网页的PageRank值等。(以上信息离线计算)
三、用户查询环节。用户查询时,用户向搜索引擎提交查询信息。搜索引擎对查询信息进行预处理,包括分词,停顿词过滤等,向索引库提交解析后的查询条件。根据上面得到的TF,TP,DF以及网页PageRank值,融合用户反馈信息,网页更新时间等因素,得到最终的网页得分。最后将得到的网页根据最终得分由高到底展现给用户,供用户浏览。(在线计算)
在以上三个环节当中,前面两个环节相对来说计算量非常大,而且非常耗时,所以是在用户进行查询之前就先进行了。这两个步骤为第三个步骤进行了大量的数据准备。第三个步骤在用户查询的时候在线计算,所以对速度要求比较高。搜索引擎在排序算法上要做到速度和质量的平衡因此,搜索引擎的排序流程涉及搜索引擎的每个环节,具体流程如图:
转载请注明转自长株潭应届生网 www.cztyjs.com。