热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

搜索引擎的发展史:从网址簿进化到个人门户

如果说有什么发明拯救了互联网?那一定是搜索引擎,否则互联网中的信息越多,它本身崩溃得越快,因为人们找到自己需要的信息也就越难,使用体验也就越差。搜索的早期形态是啥

01125925X-0

如果说有什么发明拯救了互联网?那一定是搜索引擎,否则互联网中的信息越多,它本身崩溃得越快,因为人们找到自己需要的信息也就越难,使用体验也就越差。搜索的早期形态是啥?搜索经历的多少次变革?未来的搜索引擎将变成怎样?不妨总结一下搜索引擎发展的历史,发现其中的脉络。

其实,搜索的需求——从众多东西(主要是信息)中寻找自己要的,人类一直都有,只不过在IT技术发展之前,所有信息都没有数字化,搜索唯一可行的表现形式是纸质的目录、索引、电话簿。广域网产生以后,搜索的需求存在,但技术没有对应的迅速发展,因此互联网搜索的最早形式是网址簿。具体形式和电话簿、黄页相似,记录很多知名网站网址的一本书,大小视专业程度而定。笔者自己就买过一本普通网民适用的,大小薄厚类似一本新华字典,按网站内容的不同分类。

纸质的有了,网络版的很快跟上。1994年,杨致远创建雅虎,并开始人工搜集各类网站的网址,并将它们按一定规律分类、排序,网民可以只记住雅虎的网址,之后通过雅虎进入各个门类的网站,纸质的网址簿立即变得多余。部分互联网业内人士将雅虎用人工搜集网址并分类呈现的目录式搜索称为第一代搜索引擎,也有部分互联网专家认为雅虎这类做法并不能严格称为搜索引擎,而应算作最早的网址导航。笔者倾向于将其算作搜索实现形式中的一种,甚至包括网址导航也是如此。

但雅虎毕竟只是将纸质目录搬到了互联网网页上,肉眼查找和不同人对网站分类的理解都降低了这类搜索的使用效率。于是根据关键词进行自动查找的功能也被应用进搜索引擎,这其实并不难实现,因为根据关键词进行全文检索的技术甚至早在计算机刚刚被发明的上世纪50年代就已经出现(国内的中文全文检索技术最早被作为748工程的一部分,于80年代后期基本完成,但被广泛应用已经是90年代的事了)。

第一代搜索引擎唯一的问题是,网址仍然由人工收集,效率低、易出错、不全面。于是互联网急需一种替代人工收集网址的技术,而说到替代人工,人们必然会联想到的是机器人,于是第二代搜索引擎所依仗的就是机器人,用程序铸造、组装的游走在互联网中的机器人,现在它被人们熟知的名字是搜索爬虫或者搜索引擎蜘蛛。事实上,这种技术的出现还早于杨致远的雅虎,甚至早于万维网的诞生。

1990蒙特利尔大学学生Alan Emtage发明的Archie。虽然当时World Wide Web还未出现,但网络中文件传输还是相当频繁的,而且由于大量的文件散布在各个分散的FTP主机中,查询起来非常不便,因此Alan Emtage想到了开发一个可以以文件名查找文件的系统,于是便有了Archie。Archie工作原理与现在的搜索引擎已经很接近,它依靠脚本程序自动搜索网上的文件,然后对有关信息进行索引,供使用者以一定的表达式查询。由于Archie深受用户欢迎,受其启发,美国内华达System ComputingServices大学于1993年开发了另一个与之非常相似的搜索工具,不过此时的搜索工具除了索引文件外,已能检索网页。

现在的主流搜索引擎:谷歌、必应、百度等均采用了搜索爬虫抓取、下载网页,以取代人工,这些搜索爬虫每一定天数(例如谷歌是28天)进行一次全互联网的抓取,将所有网页结果下载至自己的服务器,等待再由人们通过输入关键词提起搜索申请。

机器人抓取网页的工作效率明显高于人工,再加上用关键词进行检索,新一代搜索引擎的登场时间理应早于目录式搜索和网址导航才对。但问题在于:互联网中的信息实在太多了,搜索爬虫拿回来的网页,人几乎无法再次进行分类,而仅仅经由关键词进行检索,人们依然要从一团乱麻中肉眼查找自己想要的内容,这个使用体验还不如直接使用目录。

这个问题的解决诞生了现今搜索领域的最强者,也是世界上最伟大的公司之一——谷歌。上世纪90年代后期,就在雅虎取得成功,让人们看到搜索的巨大需求之后,当时在斯坦福大学攻读理工博士的Larry Page 和 Sergey Brin开发出PageRank算法,用于衡量特定网页相对于搜索引擎索引中的其他网页而言的重要程度。这项算法基本可以理解为投票,最重要的部分是计算每个网页与其他网页之间链接的多少,链向某个搜索结果的网页越多且权重越高,那么这个搜索结果也就越重要。谷歌用这个办法解决了搜索结果排序的问题,以此取代了目录式的分类,也用搜索爬虫加PageRank的办法取代了雅虎最早提出的搜索引擎解决方案。部分业内人士把谷歌为代表的这一代搜索引擎称为第二代搜索引擎,也有人认为这才是真正意义上的搜索引擎,笔者比较支持前一种说法。

中国的搜索引擎历史基本是直接从第二代搜索引擎开始的,时间是1999年,百度、中搜等老牌搜索引擎厂商从一开始就采用了搜索爬虫和排序算法的组合(当时还有3721提供网址导航服务,但时间与百度、中搜等几乎重合)。与谷歌、雅虎不同,当时的百度、中搜,都主要为门户网站提供搜索技术的后台服务,而没有自己的呈现网站。直到谷歌和雅虎在本世纪初进入中国,百度、中搜以及后来的搜搜、搜狗和再后来的360才开始有了自己的搜索引擎网站。

历史似乎到此结束,但以上说到的最晚时间点距现在还有十年之久,搜素引擎在这十年也并非一成不变。


推荐阅读
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • mui框架offcanvas侧滑超出部分隐藏无法滚动如何解决
    web前端|js教程off-canvas,部分,超出web前端-js教程mui框架中off-canvas侧滑的一个缺点就是无法出现滚动条,因为它主要用途是设置类似于qq界面的那种格 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 近年来,大数据成为互联网世界的新宠儿,被列入阿里巴巴、谷歌等公司的战略规划中,也在政府报告中频繁提及。据《大数据人才报告》显示,目前全国大数据人才仅46万,未来3-5年将出现高达150万的人才缺口。根据领英报告,数据剖析人才供应指数最低,且跳槽速度最快。中国商业结合会数据剖析专业委员会统计显示,未来中国基础性数据剖析人才缺口将高达1400万。目前BAT企业中,60%以上的招聘职位都是针对大数据人才的。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • 如何使用代理服务器进行网页抓取?
    本文介绍了如何使用代理服务器进行网页抓取,并探讨了数据驱动对竞争优势的重要性。通过网页抓取,企业可以快速获取并分析大量与需求相关的数据,从而制定营销战略。同时,网页抓取还可以帮助电子商务公司在竞争对手的网站上下载数百页的有用数据,提高销售增长和毛利率。 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
author-avatar
总裁班的草根
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有