1、搜索引擎:一个网络应用软件系统,能够接受用户通过浏览器提交的关键字,在一个可接受的时间内返回一个和该用户查询匹配的网页信息列表,每个列表的每一条目至少包含三个元素,标题、网址链接、摘要。主要分为三个功能模块或者是三个子系统: 网页搜索、预处理和查询服务
2、搜集:网页搜集有两个思路:事先和即时。我们知道在网络比较畅通的情况,从网上下载一篇网页大约需要1秒左右,因此在用户查询时即时从网上抓来海量网页进行分析处理,不可能满足搜索引擎的即时响应的要求,系统整体效益也比较低。因此我们可以猜想到,大规模搜索引擎服务的基础应该是一批预先搜集好的网页。而这又会产生一个问题,预搜索的网页如何保持其时新性。对于这一批预先搜集好的网页同样也是需要进行维护更新的。主要有两种方式来进行维护
1)定期搜集:每次全量搜集,替换上一次的搜索。由于每次都重新进行搜索,开销比较大,对于大规模
引擎来说,每次搜集的时间通常都会花几周。如Google在一段时间曾是每隔28天一次。这种方式的优点
是简单,缺点是"时新性"不高,还有重复搜集所带来的额外带宽的消耗。
2)增量搜集:在原有的搜集结果上只搜集新出现的网页,修改过的网页,并将已经不存在的网页从库中
删除,事实上,很多网页的内容基本上都不变化。采用这种方式,在一般的网络条件下,半天也就搜集完
毕了,时新性也比较高。其缺点是系统实现比较复杂。
3、预处理:搜索引擎数据库中的页面太多,用户输入搜索,实现这么多页面的分析不可能在一两秒内返回
结果。预处理在很多资料被简称为索。可见其作用是用于加快搜索。主要包括
1)关键词提取:从HTML中提取关键词,并去掉召“的”,“呀”等没有内容意义的词,称为“停用词”
2)消除重复或转载的网页:对于相同内容的网页只保留一个
3)链接分析:顺着链接不断深入检索,在爬行页面的同时一并抓取内容
4)网页重要程序的计算:对搜索结果排名,返回用户比较满意的搜索内容,作为最终结果排序的部分
参数
4、服务查询:包括查询方式和匹配、结果排序、文档摘要