技术分为道和术(搜素引擎)

技术分为道和术两种,具体的做事方法是术,做事的原理和原则是道。

以搜索引擎为例,很多具体的搜索技术很快会从独门绝技到普及,再到落伍,追求术的人一辈子工作很辛苦。只有掌握了搜索本质和精髓才能永远游刃有余。很多人想通过“术”,来走捷径,但是真正做好一件事没有捷径,离不开一万小时的专业训练。最好搜索,最基本的要求就是每天分析10-20个不好的搜索结果,累积一段时间才会有感觉,在Google的第一技术负责人阿米特.辛格至今依然经常分析那些不好的搜索结果。但是,很多做搜索的工程师(美国的,中国的都有)都做不到这一点,他们总是指望靠一个算法、一个模型就能毕其功于一役,而这并不现实的。

关于搜素引擎的原理其实非常简单,建立一个搜索引擎大致需要做这几件事:自动下载尽可能多的网页;  建立快速有效的索引;根据相关性对网页进行公平准确的排序。所以把搜搜所有的搜索产品都提炼成下载、索引和排序这三种基本服务。这就是搜索的“道”。所有的搜索服务都可以在这三个基本服务的基础上很快实现,这就是”术“。

布尔代数

世界上没有比二进制更简单的技术方法,它只有2个数字:0和1。从单纯数学的角度来讲,它甚至比我们的十进制更合理。经过历史伟大数学家对二进制的进一步完善,并用0和1表示两个数字,成为我们今天使用的二进制。二进制除了是一种计数的方式外,他还可以表示逻辑的“是”与“非”。这第二个特性在索引中非常重要。布尔运算是针对二进制,尤其是二进制第二个特征的运算,它很简单,可能没有比布尔运算更简单的运算了。尽管今天每个搜索引擎都宣称自己如何聪明,多么智能(这个词非常忽悠人),其实从根本上都没有逃出布尔运算的框框。

索引

大部分使用搜索引擎的人都会吃惊为什么它能在零点零几秒钟内找到成千上万甚至上亿的搜索结果。显然,如果是扫描所有的文本,计算机扫描的速度再快也不可能做到这一点的,那是为什么呢?这个技巧就是建索引。这就如图我们科技读物末尾的索引,或者图书馆的索引。如何简单地介绍搜索引擎?一个好的解答是:拿图书馆的索引卡片做类比。每个网站就像图书馆里的一本书,我们不可能在图书馆书架上一本本地找,而是要通过搜索卡片找到它的位置,然后直接去书架上拿。图书馆的索引卡片当然无法进行复杂的逻辑运算。但是,当信息检索进入计算机时代后,图书的索引便不再是卡片,而是基于数据库的。数据库的查询语句(SQL)支持各种复杂的逻辑组合,但是背后的基本原理是基于布尔运算的,至今如此。早期的文献检索查询系统,严格要求查询语句符合布尔运算。相比之下,今天的搜索引擎要聪明得多,它会自动把用户的查询语句转换成布尔运算的算式,但是基本的原理并没有什么不同。(最简单的索引结构是用一个很长的二进制数表示一个关键字是否出现在每篇文献中,有多少篇文献,就有多少位数,每一位对应一篇文献,1代表相应的文献有这个关键字,0代表没有。)

注意,计算机做布尔运算是非常非常快的。现在最便宜的微机都可以在一个指令周期内进行32位布尔运算,一秒钟进行数十亿次以上。当然,由于这些二进制数中的绝大部分位数都是0,只需要记录那些等于1的位数就可以。于是,搜索引擎的索引就变成一张大表:表的每一行对应一个关键词,而每一个关键词后面跟一组数字,是包含该关键词的文献序列。

对于互联网的搜索引擎来讲,每一个网页就是一个文献。互联网的网页数量是巨大的,网络中的所用的词也非常非常多。因此,这个索引是巨大的,在万亿字节这个量级。由于之前受计算机速度与容量的限制,早期的搜索引擎只能对重要、关键的主题词建立索引。现在为了保证对任何搜索都能提供相关的网页,常见的搜索引擎都会对所有的词进行索引。但是,在工程上却既具有挑战性。

随着互联网上的内容的增加,尤其是在互联网2.0时代,用户产生的内容越来越多,即时是Google这样的服务器数量近乎无限的公司,也感觉到数据增加带来的压力。因此,需要根据网页的重要性,质量和访问的频率建立常用和非常用等不同级别的索引。常用的索引需要访问速度快,附加信息多,更新也要快;而非常用的要求就低很多了。但不论搜索引擎的索引在工程上如何复杂,原理上依然非常简单,即等价于布尔运算。

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

推荐阅读更多精彩内容