|
|
泡泡:4月4日评点Google
|
时间:编辑时间:2005/04/27 出处:Brian Sun 泡泡 |
4月4日评点Google
终于有时间让我们冷静下来好好谈谈Google。好在现在是凌晨,我打开了窗户,这样很冷,但是可以让我的脑子更清醒一点,看看这个我们的生活已经离之不得的工具——尽管几年前我们还没有——看看它到底有什么可谈论的话题。
在我们谈论它之前首先我要感谢它,愚人节那天Google将我的邮箱升级到了2G,感谢它给我的这个节日礼物,尽管我半年内只用了5M。
1、Google以前做什么
在Google出现之前人们只有一种搜索引擎,那就是分类引擎,这个想法来源于Yahoo,或者可以说来源于图书馆。后来人们在想如果网页不是由“人类” 添加上去的,而是“机器”自己找到的那该有多好,实现这个理想就意味要用大量的Spider搜寻整个互联网。“嘿,等等,机器怎么知道鸡肉的味道?我是说它们很可能搞错了,这有可能是三文鱼的味道!”就像<<黑客帝国>>所担心的一样,Spider怎么才能知道我们需要什么能?于是有了动态的给每个网页评分的办法,这个办法就像小朋友们做游戏,别人对你的评价要远远重要于他们对你的拜访,PageRank就是这么来的,在结合了几种天才的想法和可行的技术细节之后,人类智慧的结晶,人工智能的当代经典,Google诞生了。
Google用大量的服务器(数以万计)做着每日的网页查找,每个线程就是一个Spider,每个Spider的工作就是从一个网页去另一个网页,检查他们是否已更新,是否废弃,是否存在新创建的页面,评价他们之间的关系,生成快照,并将数据存入数据库。Spider需要很好的协调以避免重复的劳动,同时他们需要确定工作范围的优先级,否则就会“跟不上时代的变化”或者干脆淹死在某些每秒种更新数千次的网页中。在确定了两张网页的关系之后,Google分别更新他们的PageRank得分,这个得分显然已经不是一个公式能够说清楚的了,它总是处在动态更新之中,但PageRank的大意就是,别人对你的连接数量越高你就越有价值,Google就越让你的位置靠前。
Google的出现使互联网的应用向前大大迈出了一步,大量可用性很强的信息资源立即出现在它的需求者面前。为此,权威的PC Magazine将Google和同一年出现的<<The Sims>>同时称为人工智能的经典作品。但也正是Google的这种优秀表现使人们开始了先知式的担忧,著名评论家Dvorak认为 Google的存在改变了以往“小公司大喇叭”的商业格局(借用了Chuck Martin的说法),它再次使互联网变成庸俗的经过资本市场洗礼的温顺绵羊,人们真正需要的东西可能会被排在后面或者根本找不到(比如我的Blog,),而商业化的东西往往占据重要的位置(比如MSN的Blog!),最麻烦的是一旦人们依赖了Google,它就会不自然的扼杀人们对通过其它途径找寻信息的兴趣和勇气。从个人感情角度来讲,我认为这个论调是很有道理的,可这个问题的提出方式已经超出了本文讨论的范围,就像是一个生活态度问题:即使麦当劳再提供100倍的温馨服务,它也无法击败我家楼下买锅贴的;也不能指望USR公司自己维护NS-5机器人的安全,v这些都只能靠别人。同样,假如Google真的谋杀了互联网的本质,那么我相信拯救我们星球的会是一个更体现互联网本质的Hero,而不是Google自己。
2、Google后来做了什么
正如我们所期望的,Google迅速成长为互联网企业的新兴代表,不断优化的引擎使我们获得了快速获取免费信息的途径,在一片叫好声中,Google开始向其它网络产品扩展。比如Google新闻,就是对Google这个巨大资源库的一种非结构化应用。现在Google新闻不仅有了搜索能力,还有了自动选择能力,这是在公开的抢报纸编辑的饭碗。再比如Google图像搜索,也为我们解决了不少难解决的问题,还有Google Group,这些服务使Google看起来更像Yahoo,或者MSN这样的门户网站,而事实上Google用来实现这些功能的成本比其竞争者要小的多,原因很简单,他们用的是人,Google用的是Spider!Google就像互联网领域里的Matrix,随处可见。
在提供了这些网络产品的同时,Google还在客户端与竞争者们一决高下,首先是浏览器的工具条Google Toolbar,起初我觉得很有用,后来觉得没什么用占地方还损失性能,但是现在看到Firefox和Google结合的这么好,又开始使用了。然后Google推出了用于推广它自己的极好工具,这就是著名的Google API,在付出少许费用之后,你就可以在自己的程序里使用Google了(通常是Java),我曾经还一度想做一个Flash版的Google呢。此外还有用于处理“科学难题”的网格计算:Google Compute,模仿捐献家用计算能力以分析外星人电波的SETI@home,后者由Stanford提供。
Froogle也是一个伟大的设想,虽然它还没有中文版,但我已经领略到了它的能力。它提供一个商品的搜索引擎,让你可以在需要时浏览商品的价目和图片。这使得Froogle有时看起来很想ebay,况且Froogle还有它的WAP版,也就是移动版。Google Local又是一个有价值的作品,它使得Google可以作为旅游指南或者地图使用。即使是Google的web搜索也有了很多衍生用法,比如瞧天气啦,找手机归属地啦,当计算器用啦,当词典用啦,反向搜索啦什么的。
3、Google现在做什么
在客户端的竞争中Google并没有占到什么优势,MSN反而成了受益者,你想啊,搞软件设计谁能搞得过“买块肉SOFT”,Netscape、 Apple、IBM都尝试过,也不怕Google多尝试一次。但是Google却在这种内忧外患的情况下上了市,而且市场反映一片叫好!为了推陈出新,保持股价的攀升,Google采用了上市公司最喜欢华尔街最欣赏股民们最容易被欺骗的手法——虚伪扩张!一方面,Google大量投资研究操作系统、数据库和应用服务器这些网络商最赖以生存的技术;另一方面则投入大笔资金扩展业务领域,这种手段的优点是可以转嫁主营业务的成本和风险,做出更漂亮的财务报表,缺点是片面注重表面上的资源优化,往往错过改革技术和商业策略的最佳时机。
在Google陷入寻找新的扩展点而不能自拔时,一个新新人类的话题摆在了Google前进的道路上,这群人就是Blogger,他们要玩的就是Blog。说时迟,那时快!只见乌云密布,雷鸣电闪,咔喳一声晴天霹雳,Google站在Blogger.com面前,笑里藏刀的说:“天下英雄,唯使君与操尔!”在收购了Blogger之后,Google基本放弃了它建造blog.google.com的计划。
2004年愚人节,对于网络邮箱供应商来说简直就是一个鬼节,这一天Google推出了它的Gmail服务BETA版,它采用了非常具有神秘色彩并借助六度分隔和150法则而更具有神秘色彩的邀请发放方式。最令人头疼的是它提供1G的空间和压缩邮件(压缩意味着物理空间1G,而很多邮件供应商公布的空间是压缩之前的占用空间)。2005年的愚人节,Google更“丧心病狂”(开玩笑)的将这个数字增加到2G!跟进还是卖出?!这是其它邮箱供应商必须面对的一个抉择!
GDS(Google Desktop Search)是Google的另一个重磅炸弹,这个是用来对付微软的。是的,你没听错!当微软在它下一版Windows(长角)的计划中露出新版文件搜索引擎的设想时,Google已经把成型的产品送到了客户面前。但是在试用了几次之后我有点纳闷,为什么这个备受好评的GDS在我的机器上跟Lucene 一样难用(对不起一次骂了两位),它几乎搜不到什么有价值的文件——难道因为我用的是英文版?抑或是我没有掌握使用技巧?
4、Google遇到了什么困难
多少年来一个问题一直困扰着我,“一个以高科技著称于世的企业不会不在正面战场上胜过一个商业成熟的企业呢?”几乎每个受到工业革命和文艺复兴影响的人都会相信这句话。可恰恰是这句话导致了很多企业的失败。Google并未在正面击败Yahoo,相反,在与Yahoo的竞争中Google已经渐渐显出劣势的一面,这是由于“机器不能理解鸡肉的味道”的缘故吗?我们不得而知,但是有一点可以肯定,促使巴别塔停止建造的原因也在困扰着Google,简单的说就是全球化和本地化。在中文搜索引擎市场上,简体中文的第一是百度,其次是Yahoo,繁体中文的第一是Yahoo,其次是Google,日文版市场排名第一的还是Yahoo,第二名是MSN,俄文搜索引擎的老大也是俄罗斯的本地化引擎。面对这个局面,Google只能说OMG!(Oh!My God!)。下面这段文字摘自<<Google中文的三大软肋>>:
……据iResearch(艾瑞市场咨询)研究报告分析,百度仅用4年时间,远远领先于Google,百度拥有目前世界上最大的中文信息库,比Google中文更准确,更全面,快照功能也占优势…… ……雅虎一直很重视本地化,收购3721则是最好的一例。在国内市场上,3721的本地化购物搜索非常好,再上本地化的商业搜索,更具竞争优势。从某种意义上来说,3721网络实名的目录,就是一个典型的中国本地化企业产品的目录。所以说,拥有3721之后,雅虎如虎添翼,对Google构成了更大威胁…… ……在中文语言处理能力上,本地搜索公司的优势更让Google难堪。比如,《功夫》公映之前很久,在百度上检索“功夫”就能直接指向周星驰的电影,可是 Google搜索相同的“功夫”,则大失所望。因为这些时令性的关键词都需要专业团队去随时添加,由于Google缺乏专门针对中国市场的开发力量,尤其是对中国互联网信息检索存在的问题了解不透,所以,Google对于国内市场需求的反应速度很慢,本地化技术服务力量也跟不上,无法解决国内网民遇到的一些实际问题……
Google的新闻搜索也引来很大的争议,我们都知道如果一家媒体要摘录别人的新闻作为自己的新闻,那么他必须付费,可是如果这条新闻是搜索引擎搜出来的怎么办?如果这条新闻是和它的提供商几乎同时登出又怎么办?Google当然不会为他搜出来的每条新闻付费,而且,就像前面说的那样,Dvorak这样的同志又要大骂Google了,因为它扼杀了消费者冲浪的乐趣和获取别人没能及时获取的信息的喜悦感,以及Google的意志代替了互联网的意志等等。
5、Google以后会做什么
目前还不知道Google下一步想做什么,但是我们都知道了资本的魔力和技术的信仰在控制着它,这使它成为人类有史以来最有想象力的公司之一。
我们猜想Google不久就会开放它的Gmail供人们随意申请,但申请时仍需要提供一个唯一的其它邮箱的帐号,(就像非Logitech的老鼠标加钱换新罗技,随意一款老洗衣机加钱换新荣事达一样),现在Gmail的策略是每个用户可以邀请50个新用户参加,此外每20人次的Google Web Search使用就会放出一个新的邀请。
Picasa也将是Google发展的重头戏之一。前者是一个图片文件客户端,看起来好像很简单,肯定没有ACDSee做的好,但是在图片共享方面 Google可是从来没有放弃过啊。现在,Picasa又和Gmail结合到了一起,每个Gmail用户都可以用Picasa将图片上传到Gmail,这项功能大大加强了Picasa图片共享的能力。
此外,人工智能和大型计算技术也是Google发展的重要方向。不久之前Google发布了它的企业搜索服务器,虽然引来一路臭骂,但还是有一些专家认为这是个利好消息,说明Google正在别的盈利点上发觉自己的价值。概念已经有了,天价只是技术之不成熟性使然。这一趋势不仅可以从Google的产品上看出来,从Google的挖人策略也一样可见一斑。前不久,Google正式宣布它挖到了Java世界一只下金蛋的鹅——Joshua Bloch,这个人经常在我的梦中出现,要卖一本<<如来神掌>>给我! 对不起,记错了,是一本<< Effective Java>>。说说J.Bloch的历史,可能很多人都会感到惊讶不已。他首先创造了曾在危难时期令整个Java世界恢复自信的Collection Framework,并获得了当年的Jolt大奖;后来为了让更多的Java程序员从Collection Framework的设计模式中收益(当时设计模式还不是很流行),他又以此为题写了<<Effective Java>>,并再次获得了Jolt大奖;为了在Java世界引入元模型的魔力,他继而提出了JSR175(A Metadata Facility for the JavaTM Programming Language),并成为其首席专家;在Sun最危难的时刻挺身而出接掌Tiger(JDK 5.0)的大旗;在这之后,关于他的唯一新闻就是被Google挖走了。此外,Google还高薪挖走了无数把名字倒过来写我们都能认识的科学家, CSDN这样报道:
……接着,Google又把BEA的首席架构师Adam Bosworth拢入自己旗下。Bosworth在软件行业作为技术主管受到广泛的尊敬。在为新创企业Crossgain(2001年被BEA收购)工作之前,Bosworth曾在微软任职数年,并成功地从事于一些项目的开发,如微软的Access数据库。 他的跳槽来得太突然了,两个月以前,他还在供应商的“年度eWorld秀”中担任重要角色,并他的主题演讲中介绍Alchemy项目----一个建立下一代移动浏览器的计划。 Google的招兵买马计划一直在有条不紊的进行着,曾在SUN微系统工作的David Stoutamire,现在在Google工作。就在上星期,Neal Gafter,SUN公司的javac主管,也离开SUN转向Google。 不仅是Java方面,Greg Stein,曾是CollabNet项目经理,管理Subversion 项目并且发布了他们的SourceCast产品,现在在Google的博客软件组工作;Rob Pike,曾是贝尔实验室最初Unix团队成员之一,参与过Plan 9 和Inferno操作系统的开发,如今也投奔Google。 Google一直渴求人才,对于开发者来说,Google也是一个充满吸引力的地方。他只雇佣最棒的、最聪明的、近乎于天才的那些家伙,在笼络人才这方面,也只有微软可与之媲美。最近Java人才不断涌入Google究竟是巧合,或是Google准备尝试基于Java做一些事情,我们拭目以待……
如果我没记错的话,Google前不久还从微软挖走了一位足可以称为WindowsNT之父的人,Google之野心路人皆知。看看下面这则招聘启事也许你就会更了解这一点了:
Passionate about these topics? You should work at Google.
• algorithms • artificial intelligence • compiler optimization • computer architecture • computer graphics • data compression • data mining • file system design • genetic algorithms • information retrieval • machine learning • natural language processing • operating systems • profiling • robotics • text processing • user interface design • web information retrieval • and more! Send your resume and a brief cover letter to great-engineers@google.com.
6、Google应该做什么
这一节我们将抛弃所有商业的想法,认认真真的坐下来考虑一下技术问题,当然,这会使得我们对Google的要求过高,我们会把很多未能被实现的我们曾经的梦想都交给未来的Google,就像我们把Sun没有做到的强加给IBM,把IBM没有做到的强加给微软,把微软没有做到的强加给Netscape,把Netscapge没有做到的强加给Yahoo一样。
首先,Google应该认真考虑考虑语义网的问题了,我个人仍然认为这是互联网发展的正道。虽然RDF标准的发展雷声大雨点小,可是现在RSS已经如火如荼,这还只是语义网技术的一小部分,(就像WAP没什么用,但短信却发展起来一样),XSL和XSLT也是语义网的一小部分,它们将作为语义网与其展现之间的接口。我为什么要提语义网这个东西呢?举个例子你就能明白,比如我的Blog每篇文章每一页上都有菜单,都有最新评论、阅读排行榜和自定义列表,这些加速了访问者的效率,是富有亲和力的展现形式,但是对于Google来说这些都是垃圾,因为它们错误的表达了网页的含义,如果我要搜一篇阅读率极高的文章,可能搜出一堆没用的东西,而这些东西又不可能从页面上拿掉,所以Google必须自己去认。
反向快照可能是解决这个问题的临时方案。它的主要思想是Google首先发现别人是如何“描述”该网页的(通过链接的文字表达),再在该网页中找到与这个 “描述”相关的内容,把这部分内容作为该网页的高优先级内容,再把该网页与相同目录下的其它文件比较,将相同的部分列为低优先级的内容。(这是我个人想出来的方法,不知道可否奏效,估计可能会遇到性能问题)
其次,Google将面临语义搜索的问题。这是MSN正在开发的技术,我相信Google也一定在做。这项技术的目的是让使用者同计算机之间的交互变得更人性化,看起来好像是用户像计算机提出了一个问题,计算机利用Google这颗大脑找到答案然后告知。哈哈,这个镜头是不是有点眼熟,它多次在好莱坞的电影中出现,比如<<AI>>中的Dr.Know(无所不知博士)和<<时间机器>>中的图书馆管理员,他们都是语义Google的愿景和Use Case。其中最有趣的是Dr.Know,他首先让用户选择类别,然后提问,问题按个数记费,答案往往只给出一个——当然是人工智能觉得最符合问题的一个。这提示了我们带类别的语义识别可能将成为语义识别技术迈出的第一步。再看看Google英文版目前提供的收费服务Google Answer~~~有点意思吧?
第三是模式学习。不客气的讲,Google一直在以自己的想法在搜索。不是吗?Google把Spider找到的所有页面都认为是资源,所以对其涵盖的内容一视同仁,对其表达的形式漠不关心,而正确的方式应该是将页面和搜索用户都看成用户,把页面人性化,从页面中吸取人类思维的模式,进行模式学习。这种技术给Google带来的好处是巨大的,其实现技术也简单于语义理解。打个比方,对于Sina被盛大收购,很多新闻网站都作为专题加以报道,而对于Google来说,要等很久才能把新浪和盛大这两个单词联系起来,这中间的时间包括其它由人来更新的网站的更新时滞,其它网站对这些网站的连接的更新时滞,这些更新被Spider发现的时滞,发现后PageRank更新到合理数值(中间可能经过多次迭代)的时滞等等。这使得Google明显慢于人的反映速度,这也就直接的造成了上面所提到的<<功夫>>不能及时搜到的原因。靠人工智能实现本地化,这是一条路。
第四是信息源的深层发掘。这使得Google能触及互联网的死角,就像洗衣粉尽量触及衣物的死角一样,(“有汰渍,没污渍”),例子很简单,如果我在网页中加入一段Javascript,就可以很容易把网页引到另一个地址,而这个地址很有可能是Google没有涉及到的,浏览器却可以访问。
第五就是不得不提到的网格计算。因为Google的客户来自世界各地,一个日本人拜访Google和一个印第安人拜访Google在99.99%的概率上是不会访问相同内容的,因此将这两个人所要访问的内容放在一起实在是一种性能上的损失。最近听说Yahoo已经将中文搜索服务器迁到国内,这正是为了性能考虑的啊。当然,分布式服务器已经可以做到这一点了,那为什么还要网格呢?解释这个问题首先要从解释BT的原理开始,BT之所以让人们下载的那么快就是因为BT让Downloader成为其它Downloader的服务器,这种P2P的方式充分利用了Downloader的机器的计算能力和上行带宽。Google也可以做到这一点,例如我、我的邻居、李彦宏(百度总裁)和杨志远(Yahoo创始人之一)四人同时搜索了同一个关键字,假定服务器在中国,李彦宏首先获得了响应页面,我再访问时,Google通知我找李商量一下,李毫不犹豫的给了我页面,杨志远的请求收到处理,因为它不便于访问李彦宏或者我的机器,所以Google又给他开了一个响应页面,最后处理的是我的邻居,他的请求被推给了我,因为我们处在相同的子网内所以交流更为方便。原本四次的检索变成两次,即使加上两次简单的响应,总时间也大大缩短,假若我们四个人拜访Google的机会分别是10:10:2:1,结果就更不言自明了。如果Google在网格方面多追加一些研发资金,自然会比Yahoo做的好,这是由Google软件的架构决定的。
写这篇文章花了我整整一天的时间,我写这篇文章的开始时间是4日凌晨0点04分,现在已经快到5日的0点04分了,可是我还意犹未尽,为了不影响手头上的工作我决定就此打住,如果您有什么想法,请回帖指教,谢谢。
累死了的泡泡 |
|