搜索引擎的工作机制.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
搜索引擎的工作机制   搜索引擎是一种依靠技术取胜的产品,搜索引擎的各个组成部分,包括页面搜集器、索引器、检索器等,都是搜索引擎产品提供商进行比拼的着力点。   近几年,搜索引擎的商业化取得了巨大的成功,如著名搜索引擎公司Google、Yahoo(本文中提到Yahoo时,特指英文Yahoo)、百度等纷纷成功上市,引发了众多公司涉足于该领域,带动了人力、资本的大量投入,连软件巨人Microsoft公司也禁不住诱惑积极打造自己的搜索引擎。但是,从性能上来说,目前的搜索引擎还不尽如人意,搜索返回的结果往往与用户的检索要求相去甚远,有效性还不是很高。本文将对搜索引擎的工作原理及其实现技术进行分析,从中可以了解限制搜索引擎用户体验改善的因素到底有哪些。      搜索引擎的工作过程      大型互联网搜索引擎的数据中心一般运行数千台甚至数十万台计算机,而且每天向计算机集群里添加数十台机器,以保持与网络发展的同步。搜集机器自动搜集网页信息,平均速度每秒数十个网页,检索机器则提供容错的可缩放的体系架构以应对每天数千万甚至数亿的用户查询请求。企业搜索引擎可根据不同的应用规模,从单台计算机到计算机集群都可以进行部署。      搜索引擎一般的工作过程是: 首先对互联网上的网页进行搜集,然后对搜集来的网页进行预处理,建立网页索引库,实时响应用户的查询请求,并对查找到的结果按某种规则进行排序后返回给用户。搜索引擎的重要功能是能够对互联网上的文本信息提供全文检索。   搜索引擎通过客户端程序接收来自用户的检索请求,现在最常见的客户端程序就是浏览器,实际上它也可以是一个用户开发的简单得多的网络应用程序。用户输入的检索请求一般是关键词或者是用逻辑符号连接的多个关键词,搜索服务器根据系统关键词字典,把搜索关键词转化为wordID,然后在标引库(倒排文件)中得到docID列表,对docID列表中的对象进行扫描并与wordID进行匹配,提取满足条件的网页,然后计算网页和关键词的相关度,并根据相关度的数值将前K篇结果(不同的搜索引擎每页的搜索结果数不同)返回给用户,其处理流程如图1所示。   图2描述了一般搜索引擎的系统架构,其中包括页面搜集器、索引器、检索器、索引文件等部分,下面对其中的主要部分的功能实现进行了介绍。      搜集器      搜集器的功能是在互联网中漫游,发现并搜集信息,它搜集的信息类型多种多样,包括HTML页面、XML文档、Newsgroup文章、FTP文件、字处理文档、多媒体信息等。搜索器是一个计算机程序,其实现常常采用分布式和并行处理技术,以提高信息发现和更新的效率。商业搜索引擎的搜集器每天可以搜集几百万甚至更多的网页。搜索器一般要不停地运行,要尽可能多、尽可能快地搜集互联网上的各种类型的新信息。因为互联网上的信息更新很快,所以还要定期更新已经搜集过的旧信息,以避免死链接和无效链接。另外,因为Web信息是动态变化的,因此搜集器、分析器和索引器要定期更新数据库,更新周期通常约为几周甚至几个月。索引数据库越大,更新也越困难。      互联网上的信息太多,即使功能强大的搜集器也不可能搜集互联网上的全部信息。因此,搜集器采用一定的搜索策略对互联网进行遍历并下载文档,例如,一般采用以宽度优先搜索策略为主、线性搜索策略为辅的搜索策略。   在搜集器实现时,系统中维护一个超链队列,或者堆栈,其中包含一些起始URL,搜集器从这些URL出发,下载相应的页面,并从中抽取出新的超链加入到队列或者堆栈中,上述过程不断重复队列直到堆栈为空。为提高效率,搜索引擎将Web空间按照域名、IP地址或国家域名进行划分,使用多个搜集器并行工作,让每个搜索器负责一个子空间的搜索。为了便于将来扩展服务,搜集器应能改变搜索范围。      1.线性搜集策略   线形搜索策略的基本思想是从一个起始的IP地址出发,按IP地址递增的方式搜索后续的每一个IP地址中的信息,完全不考虑各站点的HTML文件中指向其他Web站点的超链地址。此策略不适用于大规模的搜索(主要原因在于IP可能是动态的),但可以用于小范围的全面搜索,利用此种策略的搜集器可以发现被引用较少或者还没有被其他HTML文件引用的新HTML文件信息源。      2. 深度优先搜集策略   深度优先搜集策略是早期开发搜集器使用较多的一种方法,它的目的是要达到被搜索结构的叶结点。深度优先搜索顺着HTML文件上的超链走到不能再深入为止,然后返回到上一个接点的HTML文件,再继续选择该HTML文件中的其他超链。当不再有其他超链可选择时,说明搜索已经结束。深度优先搜索适宜遍历一个指定的站点或者深层嵌套的HTML文件集,但对于大规模的搜索,由于Web结构相当深,也许永远也出不来了。  

文档评论(0)

聚文惠 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档