谷歌搜出来的和百度一样「为什么类似百度谷歌搜索引擎搜索结果速度那么快」

如果你是个门外汉,对IT知识知之甚少,那就记着这句话:搜索结果速度这么快是因为你搜索的词之前大部分都搜索过了,你看到的不过是缓存而已。就好比说,你走的路都是别人已经修好的高速公路,当然跑起来比较顺畅了。

如果你想进一步了解搜索技术的原理,看官您可以继续阅读了

搜索的整个过程是从前端到后端,依次是cache(缓存),哈希,倒排索引。

Cache(缓存):每个模块,每个切分粒度,每个算法都会有自己的Cache,例如整个查询语句可能没有cache,但切词以后的基本词肯定有人查过,就可以直接读取cache。

对于没有Cache的情况:除了靠并行查询和高效的倒排索引集合求交算法,还有很复杂的查询策略优化,比如尽可能先查询高优先级的网页库。如果极端情况下,完全没有cache,可能耗时1秒左右也是有可能的。

哈希(Hash):将网页库按哈希拆分成多个子库,并行查询。

那到底什么是哈希呢?

比如这里有一万首歌,给你一首新的歌《青春修炼手册》,要求你确认这首歌是否在那一万首歌之内。

无疑,将一万首歌一个一个比对非常慢。但如果存在一种方式,能将一万首歌的每首数据浓缩到一个数字(称为哈希码)中,于是得到一万个数字,那么用同样的算法计算新的歌《青春修炼手册》的编码,看看歌《青春修炼手册》的编码是否在之前那一万个数字中,就能知道歌《青春修炼手册》是否在那一万首歌中。

当然这个简单的哈希算法很容易出现两者同样大小的歌曲,这就是发送了碰撞。而好的哈希算法发生碰撞的几率非常小。

倒排索引:以词为索引,包含该词的所有url为值的索引表,如下图。一个Query切词以后会命中下图中的若干行,然后对这些行做集合求交,交集中的Docs就是查询结果集合。

谷歌搜出来的和百度一样「为什么类似百度谷歌搜索引擎搜索结果速度那么快」

百度、Google、搜搜等搜索引擎是怎样工作的?为什么速度这么快?

谷歌为例... 获得网站网页资料,能够建立数据库并提供查询的系统,我们都可以把它叫做搜索引擎。按照工作原理的不同,可以把它们分为两个基本类别:全文搜索引擎(FullText Search Engine)和分类目录Directory)。
全文搜索引擎的数据库是依靠一个叫“网络机器人(Spider)”或叫“网络蜘蛛(crawlers)”的软件,通过网络上的各种链接自动获取大量网页信息内容,并按以定的规则分析整理形成的。Google、百度都是比较典型的全文搜索引擎系统。
分类目录则是通过人工的方式收集整理网站资料形成数据库的,比如雅虎中国以及国内的搜狐、百度、网易分类目录。另外,在网上的一些导航站点,也可以归属为原始的分类目录,比如“网址之家”( http://www.hao123.com/)。
在网上,对这两类搜索引擎进行整合,还产生了其它的搜索服务,在这里,我们权且也把它们称作搜索引擎,主要有这两类:
⒈元搜索引擎(META Search Engine)。这类搜索引擎一般都没有自己网络机器人及数据库,它们的搜索结果是通过调用、控制和优化其它多个独立搜索引擎的搜索结果并以统一的格式在同一界面集中显示。元搜索引擎虽没有“网络机器人”或“网络蜘蛛”,也无独立的索引数据库,但在检索请求提交、检索接口代理和检索结果显示等方面,均有自己研发的特色元搜索技术。比如“metaFisher元搜索引擎”( http://www.hsfz.net/fish/),它就调用和整合了Google、Yahoo、AlltheWeb、百度和OpenFind等多家搜索引擎的数据。
⒉集成搜索引擎(All-in-One Search Page)。集成搜索芹旦此引擎是通过网络技术,在一个网页上链接很多个独立搜索引迟改擎,查询时,点选或指定搜嫌迅索引擎,一次输入,多个搜索引擎同时查询,搜索结果由各搜索引擎分别以不同页面显示,比如“搜啊聚合搜索”( http://www.sooua.com/?tn=s)。
二、搜索引擎的工作原理
全文搜索引擎的“网络机器人”或“网络蜘蛛”是一种网络上的软件,它遍历Web空间,能够扫描一定IP地址范围内的网站,并沿着网络上的链接从一个网页到另一个网页,从一个网站到另一个网站采集网页资料。它为保证采集的资料最新,还会回访已抓取过的网页。网络机器人或网络蜘蛛采集的网页,还要有其它程序进行分析,根据一定的相关度算法进行大量的计算建立网页索引,才能添加到索引数据库中。我们平时看到的全文搜索引擎,实际上只是一个搜索引擎系统的检索界面,当你输入关键词进行查询时,搜索引擎会从庞大的数据库中找到符合该关键词的所有相关网页的索引,并按一定的排名规则呈现给我们。不同的搜索引擎,网页索引数据库不同,排名规则也不尽相同,所以,当我们以同一关键词用不同的搜索引擎查询时,搜索结果也就不尽相同。

谷歌搜出来的和百度一样「为什么类似百度谷歌搜索引擎搜索结果速度那么快」

百度、Google、搜搜等搜索引擎是怎样工作的?为什么速度这么快?

搜索引擎的工作原理大致可以分为:
搜集信息:搜索引擎的信息搜集基本都是自动的。搜索引擎利用称为网络蜘蛛的自动搜索机器人程序来连上每一个网页上的超链接。机器人程序根据网页链到其中的超链接,就象日常生活中所说的“一传十,十传百……”一样,从少数几个网页开始,连到数据库上所有到其他网页的链接。理论上,若网页上有适当的超连结,机器人便可以遍历绝大部分网页。
整理信息:搜索引擎整理信息的过程称为“创建索引”。搜索引擎不仅要保存搜集起来的信息,还要将它们按照一定的规则进行编排。这样,搜索引擎根本不用重新翻查它所有保存的信息而迅速找到所要的资料。想象一下,如果信息是不按任何规则地随意堆放在搜索引擎的数据库中,那么它每次找资料都得把整个资料库完全翻查一遍,如此一来再快的计算机系统也没有用。
接受查询:用户向搜索引擎发出查询,搜索引擎接受查询并向用户返回资料。搜索引擎每时每刻都要接到来自大量用户的几乎唯芦是同时发出的查询,它按照每个用户的要求检查自己的索引,在极短时间内找到用户需要的资料,并返回给用户。目前,搜索引擎返回主要是以网页链接的形式提供的,这样通过这些链接,用户便能到达含有自己所需资料的网页。通常搜索引擎会在这些链接下提供一小段来自这些网页的摘要信息以帮助用户判断此网页是否含有自己需要的内容。
整理信息及接受查询的过程,大量应用了文本信息检索技术,并根指棚带据网络超文本的特点,引入了更多的信息。
工作原理
1、抓取网页
每个独立的搜索引擎都有自己的网页抓取程序(spider)。Spider顺着网页中的超链接,连续地抓取网页。被抓取的网页被称之为网页快和镇照。由于互联网中超链接的应用很普遍,理论上,从一定范围的网页出发,就能搜集到绝大多数的网页。
2、处理网页
搜索引擎抓到网页后,还要做大量的预处理工作,才能提供检索服务。其中,最重要的就是提取关键词,建立索引文件。其他还包括去除重复网页、分析超链接、计算网页的重要度。
3、提供检索服务
用户输入关键词进行检索,搜索引擎从索引数据库中找到匹配该关键词的网页;为了用户便于判断,除了网页标题和URL外,还会提供一段来自网页的摘要以及其他信息。

上一篇: 女销售原来靠这样卖房(楼盘置业顾问提成大概多少)
下一篇: 日照五莲楼盘最新价格,日照五莲房价走势