互联网科技@产品@产品首页推荐

产品人应了解的搜索引擎工作原理

2017-10-01  本文已影响952人  万能的船长

在互联网时代,搜索引擎可以说是日常生活的一部分。不仅如此,搜索引擎历经20多年的风霜雨雪,仍然牢牢占据着流量入口,不得不让人感叹。

而且,提起搜索引擎,我们都会想到一家高大上的巨无霸公司和一家被黑出xiang的巨霸公司。足以见得搜索引擎的巨大作用。

image

作为产品人,对此当然不能视而不见,也应该了解了解其工作原理。

搜索引擎工作原理大致可以分为3个步骤

1. 爬行与抓取

2. 预处理

3. 排序

所谓一图胜千言,没图我说个……

image

下面详细叙述:

  1. 爬行与抓取

简单地说:就是搜索引擎蜘蛛沿着互联网络爬行并抓取其爬行的页面,将这些抓取的页面存储起来。

说到这,你可能会问:为什么叫「蜘蛛」?

为了抓取尽量多的页面,搜索引擎会跟踪页面上的链接,从一个页面爬行到下一个页面,好像蜘蛛在蜘蛛网上爬行那样,这就是搜索引擎蜘蛛这个名称的由来。

搜索引擎在跟踪网络上的链接时,会使用一定策略,因为现在的网络链接太多。最简单的爬行遍历策略有两种,一种是深度优先,一种是广度优先

还有一点值得一提:搜索引擎访问网站页面时类似于普通用户使用的浏览器。搜索引擎蜘蛛抓取的数据存入原始页面数据库,其中的页面数据与用户浏览器得到的HTML完全一样。

  1. 预处理

由于抓取的页面数量太大(以"亿"为单位),无法快速实时排序,所以需要预处理。这就是产品设计中的「复杂性守恒原则」,我们没办法让用户等待十几秒甚至更久,就只能在后台处理上下功夫。

image

在一些资料中,「预处理」也被称为「索引」,因为「索引」是预处理最主要的内容。

预处理的过程比较复杂,值得一提的有这么几点:

得到了倒排索引,就能很快地根据用户搜索的关键词找到对应文件,但这样就够了吗?别天真啊。

imageimage

通过上述步骤,其实只得到了页面本身的内容。说白了,就是页面本身告诉搜索引擎自己如何如何。

俗话说:王婆卖瓜,自卖自夸。

就像我们网购时不仅会看店家给的商品介绍,还会看看买家的评论一样,页面内容质量,也需要其他人的评价——这里的「其他人」指「其他页面。」所以,我们还需要链接关系计算。

  1. 排名

发现没有:排名,是用户是用户唯一能感觉到的步骤,爬行与抓取、预处理,都在后台完成。正因如此,用户才会感到用起来十分快捷。

排名的过程也比较复杂,其中值得一提的有如下几点:

但由于每个关键词对应的文件数量都可能是巨大的(如几亿个),处理如此庞大的数据量,无法满足用户对「快」的需求。同时,用户并不需要所有内容,他们往往只查看前几页内容,甚至很多用户只查看第一页的前几条内容。因此,选择一定数量的内容进行处理,很有必要。这就涉及到选择初识子集

但如何选择呢?这是一个问题。

imageimage

但到此就结束了吗?还没有哦。

imageimage
上一篇下一篇

猜你喜欢

热点阅读