搜索引擎之技术架构

本文约 2200 字,建议阅读时间 4 分钟,理解为主。

在开始讲述搜索引擎技术架构之前,大致阐述下搜索引擎的基本知识,有助于理解技术问题。

1 搜索引擎之基础知识

1.1 概念

搜索引擎,是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。

从以上解释中,都很容易提取出三个方面:

搜索引擎是什么?                   — 是一个软件系统。

搜索引擎从哪里搜索信息?     — 从互联网上。

搜索引擎从互联网上干什么? — 搜集信息。

搜索信息干什么?                   — 为用户提供服务。

简而言之,搜索引擎就是从互联网上搜集信息,并为用户提供服务的软件系统。

1.2 种类

搜索引擎也是分为很多种类的,从搜索信息的不同对象来说,可以分为:

1)全文搜索引擎,Full Text Search Engine

顾名思义,即对网页的文字、图片、视频、链接等全部内容进行搜索,如百度、Google。

百度


谷歌

2)垂直搜索引擎,Vertical Search Engine

即对网页的特定垂直领进行搜集和处理,如国内的携程只针对于机票、旅行信息进行搜集和处理,如国外的Pinterest 主要针对于图片进行搜集和处理。

携程
Pinterest

3)元搜索引擎,Meta Search Engine

“元”可以理解为数据的数据,比如这篇文章的字数多少啊,大小多少啊等等信息。

抽象来说,元搜索引擎就是搜集和处理搜索引擎的搜索引擎。

具体来说,元搜索引擎就是整合了很多种搜索引擎的数据,同时提供给用户。

如 meta crawler 等(国内访问不了)。


Meta Crawler

2 搜索引擎之技术架构

作为互联网最具技术含量应用之一的搜索引擎每天都在为几十亿的用户服务。用户除了知道在百度搜索框里输入一个“苹果”,点击百度返回的页面外,可能对搜索引擎就知之甚少了。但在用户没有看到结果之前,搜索引擎依靠着复杂的架构和算法,搜集并处理了海量的数据,同时还为用户提供尽可能准确的搜索信息。

接下来,我们重点看下非常宏观层面的搜索引擎架构。

搜索引擎是有许多技术模块组成的,负责在不同阶段对不同数据进行技术处理,互相构成了一个完成的技术架构,基本上这个架构图就可以涵盖搜索引擎的大致工作了。

搜索引擎之技术架构

为方便理解,我将这些技术模块分为两个阶段:

第一阶段是左侧的两列,发生在用户输入查询词前,也就是搜索引擎自己在默默做的事情;

第二阶段是右侧的两侧,发生在用户输入查询词和返回搜索结果的几毫秒内。

1)第一阶段,搜索引擎一直在默默做的事情。

首先,搜索引擎使用爬虫将互联网上的网页获取并下载到本地,可以理解为将各个网页以word文档的形式下载到了本地电脑里。

此步骤类似于,超市的采购员采购回来许多许多商品。

其次,有相关程序对下载的数据进行去重处理。因为下载了许多许多文档,存在很多文档完全一致的情况,因此需要对这些文档进行去重操作,保证每个文档都包含第一无二的内容。

此步骤类似于,超市的理货员对每个商品贴上独一无二的价格标签。

再次,有相关程序对这些去重后的文档进行解析操作,即抽取出文档的内容和链接。根据某些复杂的算法,对文字进行一定的操作,构成一个倒排索引表。同时,也根据某些复杂的算法,对链接进行一定的操作,构成了一个链接关系。

此步骤类似于,超市的理货员记住商品价格标签上的主要内容,如这个商品是食品还是衣物等。

最后,对已经进行过的所有操作,重点是构成好的倒排索引表及链接关系,进行反作弊的处理,比如剔除违法犯罪内容、删除坏网页等,类似超市货品上架之前的检查一样。

此步骤类似于,超市的理货员记住商品之间的推荐关系,比如苹果是和梨放一起还是和口红放一起等。

到此为止,第一阶段就结束了,当然真实的搜索和处理过程比这复杂得多,接下来,就进入第二阶段,用户在搜索框输入查询词到搜索结果展示之前的几毫秒的阶段了。

2)第二阶段,用户输入查询词之后发生的事情。

首先,用户在搜索框输入了“苹果”。

此步骤类似于,用户进入超市跟售货员说要买“苹果”一样(前提,用户不需要进入超市自己找要买的东西)。

其次,搜索引擎在Cache系统(即缓存系统)赶紧查一下有没有苹果。缓存系统可以理解为用户搜得很多,放在一个单独容易取到的地方。

此步骤类似于,超市售货员在离得最近的“最畅销货架”上找一下有没有“苹果”。如果有“苹果”,就直接给用户。如果没有,就赶紧跑进超市内部去找,则进入下一步骤。

再次,搜索引擎没有再缓存系统中找到用户要查的词语,就会根据查询词在第一阶段中处理出来的内容和链接进行分析,找到可能是用户想要的信息。

此步骤类似于,超市售货员迅速地翻各个商品的价格标签,找到跟“苹果”相关的所有商品。

最后,搜索引擎在几毫秒内找到的数以亿记的且都可能相关的网页,根据一定的相关性算法,把最可能是用户想要的页面展示在最前面,之后按照相关性进行排序,依次展示。

此步骤类似于,超市售货员拿着几亿的标签,最该给用户的是能吃的“苹果”呢?是“苹果”手机呢?还是“苹果”形状的抱枕呢?当然售货员会根据已有经验给用户推荐出相关性最大的商品。

以上,展示了搜索引擎的大致技术架构,辅以超市的例子,希望大家能够理解搜索引擎在用户“看不见”的背后都做了什么,我们用户也就能理解互联网技术的伟大之处了,互联网人也对搜索巨头Google 报以崇拜之情了。

另外,产品经理也不要吐槽工程师做不出百度这种搜索功能了,他要能做出来,他就不会在这个公司了。

之后,我会陆续给大家更新搜索引擎系列文章,展开讲述在不同阶段不同步骤,搜索引擎做了什么,为什么做,怎么做的。

公众号:产品美景,这里有最新最全的产品知识和个人提升方案,欢迎随时交流想法 ~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,717评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,501评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,311评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,417评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,500评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,538评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,557评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,310评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,759评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,065评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,233评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,909评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,548评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,172评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,420评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,103评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,098评论 2 352

推荐阅读更多精彩内容