Spark海量数据处理:技术详解与平台实战
上QQ阅读APP看书,第一时间看更新

1.1 Spark与BDAS

Hadoop雏形来源于谷歌公司在2004年到2006年间的3篇论文,从这个层面上来说,Hadoop来自业界。而与Hadoop不同,Spark诞生于加州大学伯克利分校的AMP(Algorithms, Machines, and People)实验室,有着非常浓厚的学术背景,借助于伯克利在计算机科学方面强劲的实力,可谓厚积薄发。虽然Spark在2009年才正式发布,但是它具有很明显的后发优势,针对Hadoop(MapReduce)的不足,有针对性地进行设计与开发,一出手便彰显其不凡特性,迅速赢得了开发者的喜爱。在2012年的时候,正是Hadoop如日中天的时代,Spark也才发布了0.6版本,但当时的情况却是开发者都期待着Spark 1.0的发布,由此可见一斑。Spark从一个追赶者变成领导者用了不到几年时间,AMP实验室也因此闻名世界,在2016年的秋天,伯克利关闭了AMP实验室并在其基础上成立了一个新的RISE(Real-time Intelligence with Secure Execution)实验室,如图1-3所示,在该实验室的官网,可以看到RISE实验室获得了国内外多家企业的资助,且与业界领先公司建立了紧密的合作,如蚂蚁金服、华为、微软等。

图1-3 AMP实验室与RISE实验室

AMP实验室在规划Spark的蓝图时,就没有将其定位为一个工具或者是一个普通的开源项目,而是为其规划了一个生态圈,AMP实验室将其称为伯克利数据分析栈(Berkeley Data Analytics Stack, BDAS),它集成了若干AMP实验室开发的组件,BDAS的初衷是解读大数据,Spark是其中最重要的一个组件,如图1-4所示。

图1-4 BDAS(伯克利数据分析栈)

从图1-4可以看到,在Spark生态圈中,除了HDFS以外,留给Hadoop的位置已经不多了。Hadoop只在存储层和资源管理层占有两个位置,即便如此还面临着Alluxio与Mesos的威胁。Spark生态圈的目的是成为大数据技术的工业标准。

本节的最后,再来谈谈Spark与Hadoop之间的关系。首先这两个名字后面都代表了业界先进的大数据技术生态圈,从这个角度上来说,两者肯定是存在竞争关系的,但在实际情况中,由于Hadoop存量用户数太多,加之Spark生态圈技术成熟度的一些问题,因此,更多情况下,Spark和Hadoop会互补形成生产环境的解决方案,它们之间的关系是竞争与合作并存。