孙荣辛|大数据穿针引线进阶必看——Google经典大数据知识

大数据技术的发展是一个非常典型的技术工程的发展过程 , 荣辛通过对于谷歌经典论文的盘点 , 希望可以帮助工程师们看到技术的探索、选择过程,以及最终历史告诉我们什么是正确的选择 。
何为大数据 
“大数据”这个名字流行起来到现在,差不多已经有十年时间了 。在这十年里,不同的人都按照自己的需要给大数据编出了自己的解释 。有些解释很具体 , 来自于一线写 Java 代码的工程师,说用 Hadoop 处理数据就是大数据;有些解释很高大上 , 来自于市场上靠发明大词儿为生的演说家 , 说我们能采集和处理全量的数据就是大数据,如果只能采集到部分数据 , 或者处理的时候要对数据进行采样,那就不是大数据 。
在笔者看来,其实“大数据”技术的核心理念是非常清晰的,基本上可以被三个核心技术理念概括 。

  • 服务器规模:能够伸缩到一千台服务器以上的分布式数据处理集群的技术 。
  • 服务器架构:这个上千个节点的集群,是采用廉价的 PC 架构搭建起来的 。
  • 编程模式:“把数据中心当作是一台计算机”(Datacenter as a Computer) 。
触发问题大数据技术传统数据处理技术解决的问题服务器规模千台服务器以上几十台服务器可行性服务器架构普通x86服务器,普通硬盘专用硬件,如大型机、小型机性价比编程模型Datacenter as a Computer使用方自己处理分布式和容错问题复杂性大型集群让处理海量数据变得“可能”;基于开放的 PC 架构,让处理海量数据变得“便宜”;而优秀的封装和抽象,则是让处理海量数据变得“容易” 。这也是现在谁都能用上大数据技术的基础 。可以说,这三个核心技术理念,真正引爆了整个“大数据”技术,让整个技术生态异常繁荣 。
笔者认为,Google 能成为散播大数据火种的人,是有着历史的必然性的:作为一个搜索引擎,Google 在数据层面,面临着比任何一个互联网公司都更大的挑战 。无论是 Amazon 这样的电商公司,还是 Yahoo 这样的门户网站 , 都只需要存储自己网站相关的数据 。而 Google,则是需要抓取所有网站的网页数据并存下来 。而且光存下来还不够,早在 1999 年,两个创始人就发表了 PageRank 的论文,也就是说,Google 不只是简单地根据网页里面的关键字来排序搜索结果,而是要通过网页之间的反向链接关系,进行很多轮的迭代计算,才能最终确认排序 。而不断增长的搜索请求量,让 Google 还需要有响应迅速的在线服务 。
三驾马车和基础设施 
面对存储、计算和在线服务这三个需求,Google 就在 2003、2004 以及 2006 年,分别抛出了三篇重磅论文 。也就是我们常说的“大数据”的三驾马车:

    推荐阅读