文档介绍:基于特定主题的搜索引擎设计
——数据收集子系统
(管理学院信息管理与信息系统专业彭文杰)
(学号:2000044025)
内容摘要:搜索引擎的设计和实现问题。在总结搜
索引擎的设计和实现的原理的基础上,提出了一种可行的面向专题的搜索引擎的设计和实现
方案,并基于java及其类库实现了该系统。最后,给出了部分实际运行的结果。
关键词:专题式搜索引擎;网络蜘蛛;索引程序;Java类库
教师点评:本文研究了一个面向专题的 搜索引擎的设计和实现问题。作者首先
阅了系列相关文献,总结了搜索引擎的设计和实现问题的特点,并提出了一种可行的搜索引
擎的设计和实现方案,实现了该系统。从实际实验的结果看,其设计和实现是正确可行的。
论文表明作者具有坚实的信息系统方面的知识和较强的动手能力。该论文是一篇成功的毕业
论文。(指导教师:万国华副教授)
一、引论
1. 的搜索引擎的基本概念
随着 的飞速发展,人们越来越依靠网络来查找他们所需要的信息。但是网上
的信息源多不胜数,普通网络用户想找到所需的资料简直如同大海捞针,也就是我们经常所
说的"Rich Data, Poor Information"。不少企业花了很多钱构建了一个内容丰富的网站,
但却没有建立一条有效的信息提供途径,这样导致的直接后果就是浏览者在庞大的网站上不
知道如何才能看到自己最感兴趣的内容,于是很快就失去耐心,离开这个网站。无论企业建
站的目的是什么,提供信息都是摆在第一位的。无法有效提供信息,网站就不能成为企业走
向新经济时代,获得更大发展的有利工具。所以如何有效的去发现我们所需要的信息,就成
了一个很关键的问题。为了解决这个问题,搜索引擎就随之诞生。据中国互联网路信息中心
统计,目前搜索引擎是仅次于电子邮件的第二大 的应用。现在在网上的搜索引擎
也已经有很多,例如国外比较著名的有 AltaVista, Yahoo, InfoSeek, Metacrawler,
SavvySearch 等等。国内也建立了很多的搜索引擎,比如:搜狐、新浪、北极星等等。
现代意义上的搜索引擎的祖先,是 1990 年由蒙特利尔大学学生 Alan Emtage 发明的
Archie。虽然当时 World Wide Web 还未出现,但网络中文件传输还是相当频繁的,而且由
于大量的文件散布在各个分散的 FTP 主机中,查询起来非常不便,因此 Alan Emtage 想到了
开发一个可以以文件名查找文件的系统,于是便有了 Archie。
Archie 工作原理与现在的搜索引擎已经很接近,它依靠脚本程序自动搜索网上的文件,
然后对有关信息进行索引,供使用者以一定的表达式查询。由于 Archie 深受用户欢迎,受
其启发,美国内华达 puting Services 大学于 1993 年开发了另一个与之非常相
似的搜索工具,不过此时的搜索工具除了索引文件外,已能检索网页。
当时,“机器人”一词在编程者中十分流行。电脑“机器人”(Computer Robot)是指某
个能以人类无法达到的速度不间断地执行某项任务的软件程序。由于专门用于检索信息的
“机器人”程序像蜘蛛一样在网络间爬来爬去,因此,搜索引擎的“机器人”程序就被称为
“蜘蛛”程序。
世界上第一个用于监测互联网发展规模的“机器人”程序是 Matthew Gray 开发的 World
1
wide Web Wanderer。刚开始它只用来统计互联网上的服务器数量,后来则发展为能够检索
网站域名。
与 Wanderer 相对应,Martin Koster 于 1993 年 10 月创建了 ALIWEB,它是 Archie 的
HTTP 版本。ALIWEB 不使用“机器人”程序,而是靠网站主动提交信息来建立自己的链接索
引,类似于现在我们熟知的 Yahoo。
随着互联网的迅速发展,使得检索所有新出现的网页变得越来越困难,因此,在 Matthew
Gray 的 Wanderer 基础上,一些编程者将传统的“蜘蛛”程序工作原理作了些改进。其设想
是,既然所有网页都可能有连向其他网站的链接,那么从跟踪一个网站的链接开始,就有可
能检索整个互联网。到 1993 年底,一些基于此原理的搜索引擎开始纷纷涌现,其中以
JumpStation、The World Wide Web Worm 和 Repository-Based Software Engineering (RBSE)
spider 最负盛名。然而 JumpStation 和在数据库中找到匹配信息
的先后次序排列搜索结果,因此毫无信息关联度可言。而 RBSE