Web搜索引擎的工作原理

时间:2007-10-15 19:13:00 

1 各种搜索引擎的基本原理

目录式搜索引擎是以人工方式或半自动方式搜集信息,由编辑员查看信息之后,人工形成信息摘要,并将信息置于事先确定的分类框架中。信息大多面向网站,提供目录浏览服务和直接检索服务。该类搜索引擎因为加入了人的智能,所以信息准确、导航质量高,缺点是需要人工介入、维护量大、信息量少、信息更新不及时。这类搜索引擎的主要代表是Yahoo。

全文搜索引擎是由一个称为蜘蛛(Spider)的机器人程序以某种策略自动地在互联网中搜集和发现信息,由索引器为搜集到的信息建立索引,由检索器根据用户的查询输入检索索引库,并将查询结果返回给用户。服务方式是面向网页的全文检索服务。该类搜索引擎的优点是信息量大、更新及时、毋需人工干预,缺点是返回信息过多,有很多无关信息,用户必须从结果中进行筛选。这类搜索引擎的主要代表是Google、百度。

元搜索引擎没有自己的数据,而是将用户的查询请求同时向多个搜索引擎递交,将返回的结果进行排序和重复排除等处理后,作为自己的结果返回给用户。服务方式为面向网页的全文检索。这类搜索引擎的优点是返回结果的信息量更大、更全,缺点是不能够充分使用所使用搜索引擎的功能,用户需要做更多的筛选。这类搜索引擎的主要代表是WebCrawler、InfoMarket等。

2 全文搜索引擎的系统结构

全文搜索引擎通常由搜索器、索引器、检索器和用户接口等四个部分组成。其系统协作图如下所示:

搜索器的功能是在互联网中漫游,发现和搜集信息。它常常是一个计算机程序,日夜不停地运行。它要尽可能多、尽可能快地搜集各种类型的新信息,同时因为互联网上的信息更新很快,所以还要定期更新已经搜集过的旧信息,以避免死连接和无效连接。目前有两种搜集信息的策略:一是从一个起始URL集合开始,顺着这些URL中的超链(Hyperlink),以宽度优先、深度优先或启发式方式循环地在互联网中发现信息。这些起始URL可以是任意的URL,但常常是一些非常流行、包含很多链接的站点(如Yahoo!)。 二是将Web空间按照域名、IP地址或国家域名划分,每个搜索器负责一个子空间的穷尽搜索。

搜索器搜集的信息类型多种多样,包括HTML、XML、Newsgroup文章、FTP文件、字处理文档、多媒体信息。搜索器的实现常常用分布式、并行计算技术,以提高信息发现和更新的速度。商业搜索引擎的信息发现可以达到每天几百万网页。

索引器的功能是理解搜索器所搜索的信息,从中抽取出索引项,用于表示文档以及生成文档库的索引表。索引项有客观索引项和内容索引项两种:客观项与文档的语意内容无关,如作者名、URL、更新时间、编码、长度、链接流行度(Link Popularity)等等;内容索引项是用来反映文档内容的,如关键词及其权重、短语、单字等等。

内容索引项可以分为单索引项和多索引项(或称短语索引项)两种。单索引项对于英文来讲是英语单词,比较容易提取,因为单词之间有天然的分隔符(空格);对于中文等连续书写的语言,必须进行词语的切分。 在搜索引擎中,一般要给单索引项赋与一个权值,以表示该索引项对文档的区分度,同时用来计算查询结果的相关度。使用的方法一般有统计法、信息论法和概率法。短语索引项的提取方法有统计法、概率法和语言学法。

索引表一般使用某种形式的倒排表(Inversion List),即由索引项查找相应的文档。索引表也可能要记录索引项在文档中出现的位置,以便检索器计算索引项之间的相邻或接近关系(proximity)。

索引器可以使用集中式索引算法或分布式索引算法。当数据量很大时,必须实现即时索引(Instant Indexing),否则不能够跟上信息量急剧增加的速度。索引算法对索引器的性能(如大规模峰值查询时的响应速度)有很大的影响。一个搜索引擎的有效性在很大程度上取决于索引的质量。

检索器的功能是根据用户的查询在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并实现某种用户相关性反馈机制。检索器常用的信息检索模型有集合理论模型、代数模型、概率模型和混合模型四种。

用户接口的作用是输入用户查询、显示查询结果、提供用户相关性反馈机制。主要的目的是方便用户使用搜索引擎,高效率、多方式地从搜索引擎中得到有效、及时的信息。用户接口的设计和实现使用人机交互的理论和方法,以充分适应人类的思维习惯。

用户输入接口可以分为简单接口和复杂接口两种。简单接口只提供用户输入查询串的文本框;复杂接口可以让用户对查询进行限制,如逻辑运算(与、或、非)、相近关系(相邻、NEAR)、域名范围(如.edu、.com)、出现位置(如标题、内容)、信息时间、长度等等。

相关阅读:搜索引擎分类与工作原理

标签:搜索引擎,工作原理,搜索,蜘蛛,Spider
0
投稿

猜你喜欢

  • phpwindV6.3关于前台银行操作日志链接问题

    2009-02-20 15:35:00
  • 动易SiteWeaver6.6转换DEDECMS案例

    2009-05-05 11:15:00
  • 用tar包配置高可用性vsftp (中)

    2007-08-28 13:47:00
  • 50条个人站长必须知道的事

    2007-11-23 17:29:00
  • 80后站长,如何才能走向成功

    2008-04-23 12:25:00
  • 加速WordPress

    2010-03-21 13:38:00
  • Windows 2000服务器安全配置精华教程

    2010-04-02 18:30:00
  • SEO优化之百度十月革命

    2007-10-16 13:31:00
  • 悼念一篇被杀的软文

    2007-11-03 21:06:00
  • 架设博客服务器要注意什么

    2010-07-07 15:55:00
  • 虚拟服务器实现方法

    2008-05-04 14:46:00
  • GoDaddy,指定Document Root需要注意的问题

    2010-04-12 12:58:00
  • 谷歌搜索引擎算法大变 内容权重变得更高

    2009-03-02 12:48:00
  • google广告竞价的小技巧

    2008-02-27 13:13:00
  • 详细讲解Apache主配置文件(配置解说)

    2010-05-08 18:31:00
  • 如何选择免费虚拟主机及其五点注意事项

    2008-11-27 10:24:00
  • Godaddy:如何设置免费及付费电子邮件帐户

    2010-05-04 12:35:00
  • 虚拟网关解决ARP攻击

    2010-02-21 08:48:00
  • 如何备份和导入Wordpress的Blogroll

    2008-04-20 16:26:00
  • 浅析Apache服务器中SSI和CGI设定方法

    2010-05-08 17:59:00
  • asp之家 网站运营 m.aspxhome.com