当前位置:首页 > 科技 > 正文

百度搜索引擎原理 搜索引擎的原理是什么?

搜索引擎的原理可以分为:数据收集、建立索引数据库、索引数据库中搜索和排序。1、数据收集:搜索引擎的自动信息收集功能分为两种类型,一种是定期搜索,即每隔一段时间。

文章目录:

  1. 搜索引擎的原理是什么?
  2. 搜索引擎的工作原理是什么?

一、搜索引擎的原理是什么?

搜索引擎的整个工作过程包括三个部分:

1、抓取

搜索引擎为想要抓取互联网站的页面,不可能手动去完成,那么百度,google的工程师就编写了一个程序,他们给这个自动抓取的程序起了一个名字,蜘蛛(也可以叫做“机器人”或者“网络爬虫”)。

互联网上的信息存储在无数个服务器上,任何搜索引擎要想回答用户的搜索,首先要把网页存在自己本地的服务器上,这靠的就是网络爬虫。它不停的向各种网站发送请求,将所得到的网页存储起来。

通常的做法是利用网页之间粗槐型的链接从一个网页岩猜出发,提取出指向其他页面的链接,把它们当成将下次要请求的对象,不停重复这个过程。有很多细节要被考虑。比如避免循环链接的网页;解析网页文档,提取里边的链接;当链接无法打开时对错误进行处理等。

2、索引

索引就是帮助程序进行快速查找的。大家都用过英汉词典。字典前边的按照单词首字母排列的部分就是索引。搜索引擎也一样。这里要介绍第一个最重要的数据结构:反转列表。

搜索引擎所拥有的文档中出现的每一个单词都拥有一个反转列表。它记录了这个单词在多少文档中出现,分别是哪些文档,每个文档分部出现多少次,分别出现在什么位置等信息。这样当搜索相关单词时,Google就不用遍历所有的文档,只需要查找每个单词对应的反转列表就可以知道这个词在哪里出现了。

每一个网络文档不仅只有文本信息。它还可能包括文件名,引用等部分。为了提高搜索质量,搜索引擎需要对文档的不同部分分别处理,构造反转列表。每一部分的单词都要被加入到这个词属于此部分的反转列表里。

3、搜索

有了索引,就可以快速找到所需内容了。前边说过搜索引擎根据用户的信息需求查找匹配的内容。信息需求来自于用户输入。搜索引擎用把用户输入的搜索字符进行一些类似于创建索引时对文本的处理,然后生成解析树。总之,以上技巧最终目标是帮助搜索引擎更好理解用户的信息需求,以便查找出更高质量的文档。

4、排序

用户输入的关键词,就可以查看到相关的内容了。这个时候,就会一条一条的展示,那谁排在第一,谁排在第二,我们把这种结果的排序,称为排名。

排名会是很复杂的,系统会对其进行一系列复杂的分析,并根据分析的结论在明圆索引库中寻找与之最为匹配的一系列网页,按照用户输入的关键词所体现的需求强弱和网页的优劣进行打分,并按照最终的分数进行排列。

二、搜索引擎的工作原理是什么?

搜索引擎的工作原理包括如下三个过程:首先在互联中发现、搜集网页信息;同时对信息进行提取和组织建立索引库;再由检索器根据用户输入的查询关键字,在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并将查询结果返回给用户。

1、抓取网页。每个独立的搜索引擎都有自则枣己的网页抓取程序(spider)。Spider顺着网页中的超链接,连续地抓取网页。被抓取的网页被称之为网页快照。由于互联网中超链接的应用很普遍,理论上,从一定范围的网页出发,就能搜集到绝大多数的网页。

发现、抓取网页信息需要有高性能的“网络蜘蛛”程序(Spider)去自动地在互联网中搜索信息。一个典型的网络蜘蛛工作的方式,是查看一个页面,并从中找到相关信息,然后它再从该页面的所有链接中出发,继续寻找相关的信息,以此类推,直至穷尽。网络蜘蛛要求能够快速、全面。网络蜘蛛为实现其快速地浏览整个互联网,通常在技术上采用抢先式多线程技术实现在网上聚集信息。通过抢先式多线程的使用,你能索引一个基于URL链接的Web页面,启动一个新的线程跟随每个新的URL链接,索引一个新的URL起点。当然在服务器上所开的线程也不能无限膨胀,需要在服务器的正常运转和快衡盯闭速收集网页之间找一个平衡点。在算法上各个搜索引擎技术公司可能不尽相同,但目的都是快速浏览Web页和后续过程相配合。目前国内的搜索引擎技术公司中,比如百度公司的网络蜘蛛采用了可定制、高扩展性的调度算法使得搜索器能在极短的时间内收集到最大数量的互联网信息,并把所获得的信息保存下来以备建立索引库和用户检索。

2、处理网页。搜索引擎抓到网页后,还要做大量的预处理工作,才能提供检索服务。其中,最重要的就是提取关键词,建立索引库和索引。其他还包括去除重复网页、分词(中文)、判断网页类型、分析超链接、计算网页的重要度/丰富度等。

索引库的建立关系到用户能否最迅速地找到最准确、最广泛的信息,同时索引库的建立也必须迅速,对网络蜘蛛抓来的网页信息极快地建立索引,保证信息的及时性。对网页采用基于网页内容分析和基于超链分析相结合的方法进行相关度评价,能够客观地对网页进行排序,从而极大限度地保证搜索出的结果与咐裂用户的查询串相一致。新浪搜索引擎对网站数据建立索引的过程中采取了按照关键词在网站标题、网站描述、网站URL等不同位置的出现或网站的质量等级等建立索引库,从而保证搜索出的结果与用户的查询串相一致。新浪搜索引擎在索引库建立的过程中,对所有数据采用多进程并行的方式,对新的信息采取增量式的方法建立索引库,从而保证能够迅速建立索引,使数据能够得到及时的更新。

3、提供检索服务。用户输入关键词进行检索,搜索引擎从索引数据库中找到匹配该关键词的网页;为了用户便于判断,除了网页标题和URL外,还会提供一段来自网页的摘要以及其他信息。

用户检索的过程是对前两个过程的检验,检验该搜索引擎能否给出最准确、最广泛的信息,检验该搜索引擎能否迅速地给出用户最想得到的信息。对于网站数据的检索,新浪搜索引擎采用多进程的方式在索引库中检索,大大减少了用户的等待时间,并且在用户查询高峰时服务器的负担不会过高(平均的检索时间在0.3秒左右)。对于网页信息的检索,作为国内众多门户网站的网页检索技术提供商的百度公司其搜索引擎运用了先进的多线程技术,采用高效的搜索算法和稳定的UNIX平台,因此可大大缩短对用户搜索请求的响应时间。作为慧聪I系列应用软件产品之一的I-Search2000采用的超大规模动态缓存技术,使一级响应的覆盖率达到75%以上,独有的自学习能力可自动将二级响应的覆盖率扩充到20%以上。

选自新华云科论搜索引擎

以上是问答百科为你整理的2条关于搜索引擎原理的问题,希望对你有帮助!更多相关搜索引擎原理的内容请站内查找。