基于JAVA的搜索引擎的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要
网络中的资源非常丰富,但是如何有效的搜索信息却是一件困难的事情。建立搜索引擎就是解决这个问题的最好方法。本文首先详细介绍了基于英特网的搜索引擎的系统结构,然后从网络机器人、索引引擎、Web服务器三个方面进行详细的说明。为了更加深刻的理解这种技术,本人还亲自实现了一个自己的搜索引擎——新闻搜索引擎。
新闻搜索引擎是从指定的Web页面中按照超连接进行解析、搜索,并把搜索到的每条新闻进行索引后加入数据库。然后通过Web服务器接受客户端请求后从索引数据库中搜索出所匹配的新闻。
本人在介绍搜索引擎的章节中除了详细的阐述技术核心外还结合了新闻搜索引擎的实现代码来说明,图文并茂、易于理解。
关键词:搜索引擎;网络蜘蛛;搜索策略
Abstract
The resources in the internet are abundant, but it is a difficult job to search some useful information. So a search engine is the best method to solve this problem. This article fist introduces the system structure of search engine based on the internet in detail, then gives a minute explanation form Spider search, engine and web server. In order to understand the technology more deeply, I have programmed a news search engine by myself.
The news search engine is explained and searched according to hyperlink from a appointed web page, then indexes every searched information and adds it to the index database. Then after receiving the customers' requests from the web server, it soon searches the right news form the index engine,
In the chapter of introducing search engine, it is not only elaborate the core technology, but also combine with the modern code, pictures included, easy to understand.
Key W ords:Search engine;W eb spider;Search strategy
目录
摘要............................................................ I Abstract........................................................... I I 引言 (1)
1 搜索引擎的结构 (2)
1.1搜索引擎系统概述 (2)
1.2搜索引擎的构成 (2)
1.2.1网络蜘蛛 (2)
1.2.2索引与搜索 (2)
1.2.3 Web服务器 (3)
1.3搜索引擎的主要指标及分析 (3)
2 网络机器人 (4)
2.1什么是网络机器人 (4)
2.2网络机器人的结构分析 (4)
2.2.2 Spider程序结构 (4)
2.2.3如何构造Spider程序 (5)
2.2.4如何提高程序性能 (7)
2.2.5网络机器人的代码分析 (7)
3 基于lucene的索引与搜索、tomcat 服务器 (10)
3.1什么是L UCENE全文检索 (10)
3.2L UCENE的原理分析 (10)
3.2.1客户端设计 (10)
3.2.2全文检索的实现机制 (11)
3.2.3 Lucene的索引效率 (11)
3.2.4 中文切分词机制 (13)
3.2.5服务端设计 (14)
3.3L UCENE与S PIDER的结合 (15)
3.3.1如何解析HTML (16)
3.4基于T OMCAT的W EB服务器 (19)
3.5在T OMCAT上部署项目 (19)
4 搜索引擎策略 (21)
4.1简介 (21)
4.2面向主题的搜索策略 (21)
4.2.1导向词 (21)
4.2.2网页评级 (21)
4.2.3权威网页和中心网页 (22)
结论 (23)
参考文献 (24)
致谢 (25)
引言
面对浩瀚的网络资源,搜索引擎为所有网上冲浪的用户提供了一个入口,毫不夸张的说,所有的用户都可以从搜索出发到达自己想去的网上任何一个地方。因此它也成为除了电子邮件以外最多人使用的网上服务。
搜索引擎技术伴随着WWW的发展是引人注目的。搜索引擎大约经历了三代的更新发展:
第一代搜索引擎出现于1994 年前后。以Altavista,Y ahoo 和Infoseek为代表,注重反馈结果的数量,主要特征是“求全”。它主要依靠人工分拣的分类目录搜索,通常由网页制作人自行建立网站名称、网站内容的文字摘要,并将其加入到搜索引擎的资料库中。搜索引擎根据用户键入的信息,根据预先设定的规则进行简单的匹配、排序和显示。这种方法只能进行简单的字符串匹配,无法进行全文搜索。研究表明,搜索引擎性能并没有想象中的那么优秀,在全球11 个主要的搜索引擎中,搜索引擎仅能搜索到国际互联网上全部页面的16%,甚至更低,造成这种情况的原因,主要是这些搜索引擎没有及时更新资料。
第二代搜索引擎,利用超链接分析为基础的机器抓取技术,由搜索引擎使用一个程序在网络上撷取资料,并自动将得到的结果存入索引库中。搜索引擎根据用户键入的信息进行匹配、排序和显示。这些引擎的主要特点是提高了查准率,可以用“求精”来描述它的优点,即不需要网站制作人单独键入供搜索的信息,并且从理论上讲,可将任意网站的所有网页加入到它的资料库中。第二代搜索引擎的大多数查询都会返回成千上万条信息,查询结果中无关信息太多,而且查询结果显示比较混乱,使用者仍然难以找到真正想要的资料。
第三代搜索引擎是对第二代搜索引擎的改进,相对于前两代,其更注重智能化和用户使用的个性化,主要增加了互动性和个性化等高级的技术,采用了中文自动分类、自动聚类等人工智能技术,而且使用了中文内容分析技术以及区域智能识别技术,增强了搜索引擎的查询能力。同时,搜索技术将更加智能化,可搜索资源将更加广泛,搜索方式也将更加便捷有效,为用户使用搜索引擎获取信息获得更好的体验。
在美国搜索引擎通常指的是基于因特网的搜索引擎,他们通过网络机器人程序收集上千万到几亿个网页,并且每一个词都被搜索引擎索引,也就是我们说的全文检索。著名的因特网搜索引擎包括First Search、Google、HotBot等。本人这里研究的就是基于因特网的搜索技术。