搜索的激情岁月:从网址簿进化到个人门户

2023-11-28 16:59

本文主要是介绍搜索的激情岁月:从网址簿进化到个人门户,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

保研面试的时候,老师问到的其中一个问题就是”你认为雅虎有技术吗?“,我没有回答大哭老师们自顾自讨论去了。2003年我刚用Google的时候,就像发现了一个新玩具,至此成为它的粉丝直到今天,而那时百度刚成立不久。偶尔看到这篇文章,非常有感触,转贴过来,

http://www.chinaz.com/start/2013/1223/332288.shtml?zyy

【导读】如果说有什么发明拯救了互联网?那一定是搜索引擎。搜索的早期形态是啥?搜索经历的多少次变革?不妨总结一下搜索引擎发展的历史,发现其中的脉络。


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


其实,搜索的需求——从众多东西(主要是信息)中寻找自己要的,人类一直都有,只不过在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才开始有了自己的搜索引擎网站。


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


前面说到的搜索引擎爬虫加排序算法只能解决现在的网页搜索功能,目前世界上所有的搜索爬虫都只能用较长时间(20天以上)实现一次全网抓取,对于更新频率稍慢的网页,这个速度是合理的。但对于更新频率较快的互联网中的新闻,这个方法就显得太过笨重。国内部分业内人士认为随着搜索技术和互联网速度的不断增强,这个问题会自然随之解决,但事实上至今网页搜索仍未能承担搜索新闻的工作,现在人们通过专门的新闻搜索技术查找自己想看的新闻。


国内最早为门户网站提供新闻搜索技术服务的是中搜,时间是2003年。他们将原来全网抓取网页内容的搜索爬虫限定在少数几百个选定的新闻源网站范围内,这样就将看似无边无际的互联网大大缩小,全部抓取一次的时间从几天变成了几分钟甚至几十秒。而一旦新闻源本身出现变动,只需将其加入或剔除自己选定的新闻源范围即可。这种技术和曾经大热的RSS阅读技术有些类似,但后者因为需要信息的源头符合RSS的格式,所以正在逐渐萎缩,谷歌的RSS阅读产品Greader就在2013年夏天正式停止了服务。此外新闻搜索的排序规则也略有不同,更加注重时间、相关性、发布媒体等等权重。


与新闻搜索类似的,搜索特殊类别信息的特殊搜索技术还有图片搜索、视频搜索、比价搜索等等。此外,由于互联网中的信息实在过于庞大,通用搜索很难对所有信息都做到专业、精准、及时,因此一些专门针对某个行业或领域的垂直搜索也应运而生。其原理大多是和新闻搜索类似:缩小搜索爬虫活动的范围,再适当修改排序规则。


中搜对国内乃至整个搜索技术的贡献还在于,第一次尝试了搜索的更高级形式——个人门户,2004年,他们发布个人信息门户浏览器,英文缩写是PIG,因此也被称为网络猪。


之所以把个人门户称为搜索的更高级形式,是因为此前的搜索引擎都是被动的等着人们主动输入关键词提出搜索申请,而能够让搜索变被动等待为主动提供服务的方式就是个人门户。如果搜索始终等待用户输入关键词,那么它就始终难以摆脱工具的角色,与目录、电话簿之间的区别只在形式和效率之间。此外,主动为用户提供服务还能被更多的关注、使用,获得更多的广告收益。因此主动和被动,不仅仅是一个服务形式的问题。


门户网站顾名思义,是力求为网民提供最大信息量,解决最多互联网诉求的“超市”,但前面如果加上个人,主要诉求就在全面之外又加上了精准。似乎整个互联网中也只有利用关键词进行检索的搜索能够提供全面且精准的信息服务。中搜的做法是允许用户自己订阅搜索关键词,再自由组合成一张首页,所有订阅关键词的搜索结果都第一时间呈现给刚一打开浏览器的网民。


在此之后谷歌也推出了自己的个人主页产品——igoogle,并且功能更为丰富(增添了天气、股票等等)。但个人门户产品并没有像传统的搜索引擎那样获得成功,至少在桌面互联网是这样,“网络猪”和igoogle都没有获得搜索厂商们心目中的理想结果,后者还于2013年冬天和Greader一样停止了服务。其他力求主动为网民提供搜索服务的尝试还包括雅虎,他们也允许网民订阅搜索关键词,之后每天会将搜索结果的更新主动发送至用户的邮箱中。


中国国内对搜索的创新还不得不提百度的竞价排名机制:渴望宣传自身的企业按与自己相关的搜索结果的点击次数付费给搜索引擎厂商,企业的推广信息出现在搜索结果中,由单次点击付费高低决定结果的排序(付费高者靠前)。尽管备受业内指责,但这一机制还是解决了搜索引擎厂商的吃饭问题,因此才能摆脱为其他网站提供后台服务的角色,同时肇始者获得的暴利也吸引了更多玩家跟进投入搜索引擎市场,促进了技术、市场的繁荣。


但以上尝试都是在第二代搜索引擎的基础上进行的,无论针对类别、展示形式还是盈利模式。这一代搜索引擎虽然用搜索爬虫解决了对搜索结果巨量、全面的需求,但仅用关键词和PageRank一类排序方法是无法实现完全精准的。无论英文还是中文,同一个关键词出现多种含义再平常不过,而再好的排序方式也不可能将每个人真正需要的结果都全部放在前几页,每个人搜索的结果都可能出现在第一百页、一千页甚或一万页之后,因为互联网中的信息实在实在太多了,并且还可能有不断重复的信息出现。


对下一代搜索引擎的尝试已经开始,2011年国内的搜索引擎厂商中搜发布上线第三代搜索引擎平台,算是第一个打起第三代搜索旗子的。中搜宣称自己是第三代的原因是:区别于第一代纯粹用人工收集搜索结果和完全第二代用搜索爬虫抓取结果,他们的搜索引擎采用人机结合的办法:即用搜索爬虫继续收集网页,解决搜索结果的量的问题,但用人工将搜索结果进行分类、整理,解决搜索结果的准确。前面笔者曾说过这是个不可能完成的任务,中搜给出的解决办法是允许每个网民参与到这个过程中,他们将整个搜索开放,任何人对搜索结果有不同意见,有不同想法都可以提出修改,不同于百度用户只能接受搜索结果。中搜的搜索结果呈现方式也有所改变,成为了针对某个关键词含义的类似门户专题的多框页面(区别于其他搜索引擎的目录式结构),同一关键词的不同含义分别有完全不同的专题页面呈现。


此后国内一大批“第三代搜索”跟风而至,但无论优劣,其搜索结果的收集、呈现方式并未如同中搜,与现有第二代搜索引擎有任何明显差异,宣称“第三代”未免空穴来风。


2012年,谷歌也宣布推出知识图谱,与中搜的呈现方式类似,也具有很强的延展性,将与关键词相关的信息展示在边条。2013年初百度也作出了类似调整,但这些都是以技术方式实现的,没有添加人工。谷歌更重要的新一代搜索尝试还包括将搜索迁移进专门的硬件——谷歌眼镜,虽然目前还不能确定其能否获得成功,但指明的方向已经清楚:未来的搜索将和人们的生活离得更近,很可能不局限于文字输入请求和表达结果,也不局限于2维世界。


不过,对普罗大众而言,眼下更为现实的尝试则是移动搜索的种种创新。还是中搜,将第三代搜索迁移到移动端之外,他们又重新操起个人门户。2013年末,中搜发布中搜搜悦移动个人门户,其中除搜索、新闻等功能,还添加了网址导航、应用商店、第三方评价、生活服务等多个搜索在移动端可能实现的主要功能,和之前的个人门户一样,中搜搜悦也能够接受用户的订阅,并主动呈现搜索结果的更新,更为主动的是它能够用移动互联网的方式推送给用户。

这篇关于搜索的激情岁月:从网址簿进化到个人门户的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/429995

相关文章

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

hdu1240、hdu1253(三维搜索题)

1、从后往前输入,(x,y,z); 2、从下往上输入,(y , z, x); 3、从左往右输入,(z,x,y); hdu1240代码如下: #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#inc

hdu 4517 floyd+记忆化搜索

题意: 有n(100)个景点,m(1000)条路,时间限制为t(300),起点s,终点e。 访问每个景点需要时间cost_i,每个景点的访问价值为value_i。 点与点之间行走需要花费的时间为g[ i ] [ j ] 。注意点间可能有多条边。 走到一个点时可以选择访问或者不访问,并且当前点的访问价值应该严格大于前一个访问的点。 现在求,从起点出发,到达终点,在时间限制内,能得到的最大

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close

hdu4277搜索

给你n个有长度的线段,问如果用上所有的线段来拼1个三角形,最多能拼出多少种不同的? import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;

HomeBank:开源免费的个人财务管理软件

在个人财务管理领域,找到一个既免费又开源的解决方案并非易事。HomeBank&nbsp;正是这样一个项目,它不仅提供了强大的功能,还拥有一个活跃的社区,不断推动其发展和完善。 开源免费:HomeBank 是一个完全开源的项目,用户可以自由地使用、修改和分发。用户友好的界面:提供直观的图形用户界面,使得非技术用户也能轻松上手。数据导入支持:支持从 Quicken、Microsoft Money

分布式系统的个人理解小结

分布式系统:分的微小服务,以小而独立的业务为单位,形成子系统。 然后分布式系统中需要有统一的调用,形成大的聚合服务。 同时,微服务群,需要有交流(通讯,注册中心,同步,异步),有管理(监控,调度)。 对外服务,需要有控制的对外开发,安全网关。

Java IO 操作——个人理解

之前一直Java的IO操作一知半解。今天看到一个便文章觉得很有道理( 原文章),记录一下。 首先,理解Java的IO操作到底操作的什么内容,过程又是怎么样子。          数据来源的操作: 来源有文件,网络数据。使用File类和Sockets等。这里操作的是数据本身,1,0结构。    File file = new File("path");   字

当你输入一个网址后都发生什么

原文:http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/  作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。 本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事~

LeetCode 第414场周赛个人题解

目录 Q1. 将日期转换为二进制表示 原题链接 思路分析 AC代码 Q2. 范围内整数的最大得分 原题链接 思路分析 AC代码 Q3. 到达数组末尾的最大得分 原题链接 思路分析 AC代码 Q4. 吃掉所有兵需要的最多移动次数 原题链接 思路分析 AC代码 Q1. 将日期转换为二进制表示 原题链接 Q1. 将日期转换为二进制表示 思路分析