以下为网友布丁的回答: 先一句话回答:在与搜索相关的基础技术方面,百度距离 Google 仍有很大的差距,但今天是否还存在量级上的差距存疑。 开头先扯个不相干的领域,苏联 1960 年代装备的 Mig-25 截击机,这是世界上第一款能飞双三(三倍音速,30000米升限)的战斗机。西方世界面对这变态的性能参数惊诧莫名,推断苏联在航空技术上已全面超越西方。直到别连科驾驶 Mig-25 叛逃西方,他们终于有机会接触真机,才发现它使用的技术其实没那麽先进,变态的性能指标都是用普通的技术基础硬干上去的,飞机非常笨拙以至有“直线战斗机”的称号,可怜的发动机要真飞一次三倍音速落地就得报废。苏联的航空技术并没有他们想象的这麽逆天。 2009年我在百度,面对 Google 公开的技术资料和百度的内部系统,我首先想起的就是 Mig-25. 就跟这台战机一样,当时的百度,在中文搜索结果质量的各项指标上,对比 Google 还是有优势。百度的工程师非常聪明,也非常努力,在某些点上也做得很细很出色,但是在与搜索相关的基础技术上,百度还是全面落后。百度的搜索质量提高,有很大部分是依靠人工做大量细緻的策略调整硬拉上去的。 用普通技术飞上双三,Mig-25 本身是个了不起的工程成就。下一代战机,不管是苏联的 Su-27 还是美国的 F-15, 乃至四代机 F-22, 都没有能飞出双三来的,但这些下一代战机在技术水准和整体性能上,无疑远胜 Mig-25, 这应该能算得上题主所说的量级差异。技术的量级差异不能拿某个特定指标或孤例评估(Mig-25 还曾击落过 F/A-18 呢),也不能只比较某些技术点上的优劣,而往往是决定于基础技术水平。 在 2009 年,我可以很肯定地说百度搜索相关的基础技术对比 Google 有量级差距。据我了解,这些年百度在基础技术方面进步很快,当然同时 Google 也在快速进步。它们在今天是否有量级的差异,我不确定。 下面列几个重要的而且公开资料较多的基础技术: 大规模机群建设与管理。Google 的情况可以参见《The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines, Second Edition》。 Google 拥有世界上最大的计算机集群,论机器数量的话能在量级上超过所有其他公司。同时,它有一整套自动化管理软件,以便工程师申请和使用这些硬件资源(大致可以理解成一套 Amazon EC2)。就我的了解,现在在普通工程师使用机群硬件资源的方便程度和可以使用的量上,百度还是远远不及。 大规模计算与存储。Google 论文老三篇 GFS, MapReduce, BigTable 不再赘述,近年 Google 在这些方面的研发和进步没有停滞甚至在加快。当然百度也在努力追赶,百度不仅使用 Hadoop, 而且基于 Hadoop 做了大量改进和扩展,并贡献回 Hadoop 开源社区。百度在 SSD 存储技术等方面也很有心得,比如 flash 存储方面最近中了的一篇 ASPLOS '14 SDF: Software-Defined Flash for Web-Scale Internet Storage System. 机器学习和人工智能。被吹得神乎其神的 deep learning 和 Google Brain 等等。在 deep learning 这个相对较新的领域,百度追赶的更快,水平也更接近。 机群管理的技术水平决定你能拥有和有效使用多少硬件资源,大规模计算与存储决定你能在这些硬件上做多大规模的事情 —— 而最后,搜索引擎本身就是一套大规模机器学习系统。 在纯技术之外,我想特别提一点极大影响技术进步,而至少在 2009 年百度与 Google 差距巨大的因素:普通工程师所能使用的工具水平。我在 Google 感觉最爽的事情是我可以很容易获得大量的计算资源,做以前无法想象的大规模数据分析。要验证一个想法,我可以基于一整天的搜索记录做分析,只需几分钟就能得到结果(可查看:research.google.com/pubs/pub36632.html),进行调整和下一步分析;而如果没有这套基础软件和可以随意使用的硬件资源,我可能得等一整天才能有结果,或者只能分析小规模的抽样数据。在我自己的知识和技术水平不变的前提下,Google 这套系统极大地提高了我的工作效率,让我能做到以前完全无法想象的事情。 我觉得作为一个技术人员,黑或者捧哪个公司毫无意义,技术的事情很直接的,身在哪个公司都无法影响基本判断。还在百度的时候,我就经常想,Mig-25 的故事是个很好的警示,人很容易为类似“双三”这样的成就沾沾自喜,而对实打实的基础技术差距视而不见,不图进步,那前景就相当危险了。幸好据我所知的情况,百度可没有这麽不争气。 补充一个实际例子来说明不同技术条件下两个公司做事思路的区别。 (责任编辑:admin) |