什么是搜索引擎,其工作原理是什么

什么是搜索引擎,其工作原理是什么

发布时间:2010/12/25      发布者:本站      来源:原创
1015
一、什么叫搜索引擎? 

在Internet上有上百亿可用的公共Web页面,即使是最狂热的冲浪者也不会访问到所有的页面,而只能看到其中的一小部分,更不会在这浩瀚的Web海洋中发现你那即使精彩却渺小的一隅。当然你可以为你的存在做广告,可以用大大的字把你的URL刻在你的身体上,然后裸体穿过白宫草坪,但你得保证媒体正好在那里,并注视到了这一切。与其这样做,不如好好去理解搜索引擎是如何工作的?又怎样选择和使用"keywords"(关键词)等等。 
本文的目的就是让众多的页面设计者在了解搜索引擎的基础上,寻求如何使自己的页面在搜索引擎索返回的列表中获得好的排列层次的方法。 

"搜索引擎"这个术语一般统指真正意义上的搜索引擎(也就是全文检索搜索引擎)和目录(即目录式分类搜索引擎),其实他们是不一样的,其区别主要在于返回的搜索结果列表是如何编排的。 

1、目录 

目录(比如Yahoo!)返回的列表是由人工来编排的。 
这类引擎提供了一份人工按类别编排的网站目录,各类下边排列着属于这一类别的网站的站名和网址链接,再记录一些摘要信息,对该网站进行概述性介绍(摘要可能是你提交过去的,也可以是引擎站点的编辑为你的站点所做的评价)。人们搜索时就按相应类别的目录查询下去。 
这类引擎往往还伴有网站查询功能,也称之为网站检索,即提供一个文字输入框和一个按钮。我们可以在文字框中输入要查找的字、词或短语,再点击按钮,便会在目录中查找相关的站名、网址和内容提要,将查到的内容列表送过来。目前国内Sohoo、常青藤等都是这种搜索方式。 

2、搜索引擎 

搜索引擎(如HotBot)是自动创建列表的。 
搜索引擎看起来与目录的网站查询非常相似,也提供一个文字输入框和按钮,使用方法也相同,而且有些也提供分类目录,但两者却有本质上的区别。 
目录的资料库中,搜集保存的是各网站的站名、网址和内容提要;搜索引擎的资料库中,搜集保存的则是各网站的每一个网页的全部内容,范围要大得多。 
搜索引擎是以全文检索的方式工作的。全文检索查到的结果不是站名、网址和内容提要,而是与你输入的关键词相关的一个个网页的地址和一小段文字。在这段文字中,可能没有你输入的那个关键词,它只是某一网页的第一段话,甚至是一段无法看懂的标记,但在这个网页中,一定有你所输入的那个关键词,或者相关的词汇。打个比方说,网站查询可以查到网上有哪些报纸,如《文汇报》、《大公报》,而全文检索则可以查到网上这些报纸的每一篇文章中的词汇。 

3、两者相结合的搜索引擎 

某些搜索引擎同时也提供目录。包含在搜索引擎中的目录通常质量比较高,也能从那里找到许多好站点。因为即使你把你的站点提交过去,也并不能保证一定被加到目录中去,他们把注意力放在那些已经在别的目录中存在的站点上,并有选择地寻找有吸引力的加到自己的目录中。 
搜索引擎和目录各有各自不可替代的功用。目录比较简单,要想获得一个好的排列层次,除了你努力创建一个好内容的高品质站点外别无他法。搜索引擎复杂得多,它们随时都在自动地索引众多WEB站点的最新网页,所以常常会发现目录所不能得到的信息。如果你改动了你的页面,搜索引擎还随时会发现这个变化,并重新排列你在列表中的位置。而目录就做不到。下面专门讨论搜索引擎的工作原理以及如何提高在搜索引擎列表中的排列位置。
参考资料:http://www.yuan.sc.cn/cpc/buildweb/search101.htm

按照信息搜集方法和服务提供方式的不同,搜索引擎系统可以分为三大类: 

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

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

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

…… 

主 要 技 术 

一个搜索引擎由搜索器、索引器、检索器和用户接口等四个部分组成。 

1.搜索器 

搜索器的功能是在互联网中漫游,发现和搜集信息。它常常是一个计算机程序,日夜不停地运行。它要尽可能多、尽可能快地搜集各种类型的新信息,同时因为互联网上的信息更新很快,所以还要定期更新已经搜集过的旧信息,以避免死连接和无效连接。目前有两种搜集信息的策略: 

● 从一个起始URL集合开始,顺着这些URL中的超链(Hyperlink),以宽度优先、深度优先或启发式方式循环地在互联网中发现信息。这些起始URL可以是任意的URL,但常常是一些非常流行、包含很多链接的站点(如Yahoo!)。 

● 将Web空间按照域名、IP地址或国家域名划分,每个搜索器负责一个子空间的穷尽搜索。 

搜索器搜集的信息类型多种多样,包括HTML、XML、Newsgroup文章、FTP文件、字处理文档、多媒体信息。 

搜索器的实现常常用分布式、并行计算技术,以提高信息发现和更新的速度。商业搜索引擎的信息发现可以达到每天几百万网页。 

2.索引器 

索引器的功能是理解搜索器所搜索的信息,从中抽取出索引项,用于表示文档以及生成文档库的索引表。 

索引项有客观索引项和内容索引项两种:客观项与文档的语意内容无关,如作者名、URL、更新时间、编码、长度、链接流行度(Link Popularity)等等;内容索引项是用来反映文档内容的,如关键词及其权重、短语、单字等等。内容索引项可以分为单索引项和多索引项(或称短语索引项)两种。单索引项对于英文来讲是英语单词,比较容易提取,因为单词之间有天然的分隔符(空格);对于中文等连续书写的语言,必须进行词语的切分。 

在搜索引擎中,一般要给单索引项赋与一个权值,以表示该索引项对文档的区分度,同时用来计算查询结果的相关度。使用的方法一般有统计法、信息论法和概率法。短语索引项的提取方法有统计法、概率法和语言学法。 

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

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

3.检索器 

检索器的功能是根据用户的查询在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并实现某种用户相关性反馈机制。 

检索器常用的信息检索模型有集合理论模型、代数模型、概率模型和混合模型四种。 

4.用户接口 

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

简单接口只提供用户输入查询串的文本框;复杂接口可以让用户对查询进行限制,如逻辑运算(与、或、非;+、-)、相近关系(相邻、NEAR)、域名范围(如.edu、.com)、出现位置(如标题、内容)、信息时间、长度等等。目前一些公司和机构正在考虑制定查询选项的标准。
分享到: