什么是Spark?

当然这里说的Spark指的是Apache Spark, Apache Spark is a fast and general engine for large-scale data processing: 一种快速通用可扩展的数据分析引擎。如果想要搞清楚Spark是什么,那么我们需要知道它解决了什么问题,还有是怎么解决这些问题的。

Spark解决了什么问题?

在这里不得不提大数据,大数据有两个根本性的问题,一个是数据很大,如何存储?另外一个是数据很大,如何分析?毕竟分析大数据是为了改善产品的用户体验,从而获取更多的价值。

对于第一个问题,开源社区给出的方案就是HDFS,一个非常优秀的分布式存储系统。

对于第二个问题,在Hadoop之 后,开源社区推出了许多值得关注的大数据分析平台。这些平台范围广阔,从简单的基于脚本的产品到与Hadoop 类似的生产环境。Bashreduce在 Bash环境中的多个机器上执行 MapReduce 类型的操作,可以直接引用强大的Linux命令。GraphLab 也是一种MapReduce 抽象实现,侧重于机器学习算法的并行实现。还有Twitter 的 Storm(通过收购 BackType 获得)。Storm 被定义为 “实时处理的 Hadoop”,它主要侧重于流处理和持续计算。

Spark就是解决第二个问题的佼佼者。

Why Spark?

现在有很多值得关注的大数据分析平台,那么为什么要选择Spark呢?

速度

与Hadoop的MapReduce相比,Spark基于内存的运算比MR要快100倍;而基于硬盘的运算也要快10倍!

易用

Spark支持Java,Python和Scala。而且支持交互式的Python和Scala的shell,这意味这你可以非常方便的在这些shell中使用Spark集群来验证你的解决问题的方法,而不是像以前一样,打包。这对于原型开发非常重要!

Hadoop的WorldCount的Mapper和Reducer加起来要20多行吧。Spark仅需要:

甚至可以将它们放到一行。

通用性

Spark提供了All in One的解决方案!

Spark All In One的解决方案非常具有吸引力,毕竟任何公司都想要Unified的平台去处理遇到的问题,可以减少开发和维护的人力成本和部署平台的物力成本。

当然还有,作为All in One的解决方案,Spark并没有以牺牲性能为代价。相反,在性能方面,Spark还有很大的优势。

和Hadoop的集成

Spark可以使用YARN作为它的集群管理器,并且可以处理HDFS的数据。这对于已经部署Hadoop集群的用户特别重要,毕竟不需要做任何的数据迁移就可以使用Spark的强大处理能力。Spark可以读取 HDFS , HBase , Cassandra 等一切Hadoop的数据。

当然了对于没有部署并且没有计划部署Hadoop集群的用户来说,Spark仍然是一个非常好的解决方法,它还支持 standalone , EC2 和 Mesos 。你只要保证集群的节点可以访问共享的内容,比如通过NFS你就可以非常容易的使用Spark!

Spark的现状与未来

值得庆祝的里程碑:

·        2009:Spark诞生于AMPLab

·        2010:开源

·        2013年6月:Apache孵化器项目

·        2014年2月:Apache顶级项目

·        Hadoop最大的厂商Cloudera宣称加大Spark框架的投入来取代Mapreduce

·        Hadoop厂商MapR投入Spark阵营

·        Apache mahout放弃MapReduce,将使用Spark作为后续算子的计算平台

·        2014年5月30日Spark1.0.0发布

走进Spark--云计算大数据新一代技术的更多相关文章

  1. 王家林 Spark公开课大讲坛第一期:Spark把云计算大数据速度提高100倍以上

    王家林 Spark公开课大讲坛第一期:Spark把云计算大数据速度提高100倍以上 http://edu.51cto.com/lesson/id-30815.html Spark实战高手之路 系列书籍 ...

  2. 一文看懂大数据的技术生态圈,Hadoop,hive,spark都有了

    一文看懂大数据的技术生态圈,Hadoop,hive,spark都有了 转载: 大数据本身是个很宽泛的概念,Hadoop生态圈(或者泛生态圈)基本上都是为了处理超过单机尺度的数据处理而诞生的.你可以把它 ...

  3. 如何成为云计算大数据Spark高手

    Spark是发源于美国加州大学伯克利分校AMPLab的集群计算平台,它立足于内存计算,性能超过Hadoop百倍,从多迭代批量处理出发,兼收并蓄数据仓库.流处理和图计算等多种计算范式,是罕见的全能选手. ...

  4. 【互动问答分享】第15期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    "决胜云计算大数据时代" Spark亚太研究院100期公益大讲堂 [第15期互动问答分享] Q1:AppClient和worker.master之间的关系是什么? AppClien ...

  5. 【互动问答分享】第13期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    “决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第13期互动问答分享] Q1:tachyon+spark框架现在有很多大公司在使用吧? Yahoo!已经在长期大规模使用: 国内也有 ...

  6. 【互动问答分享】第10期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    “决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第10期互动问答分享] Q1:Spark on Yarn的运行方式是什么? Spark on Yarn的运行方式有两种:Client ...

  7. 【互动问答分享】第8期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    “决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第8期互动问答分享] Q1:spark线上用什么版本好? 建议从最低使用的Spark 1.0.0版本,Spark在1.0.0开始核心 ...

  8. 【互动问答分享】第7期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    “决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第7期互动问答分享] Q1:Spark中的RDD到底是什么? RDD是Spark的核心抽象,可以把RDD看做“分布式函数编程语言”. ...

  9. 【互动问答分享】第6期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    “决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第6期互动问答分享] Q1:spark streaming 可以不同数据流 join吗? Spark Streaming不同的数据流 ...

随机推荐

  1. Zebra - zebra command to get printer error and warning status

    1 Flag2 Nibble 16-93 Nibble 8-44 Nibble 35 Nibble 26 Nibble 1

  2. windows服务那些事

    前一段时间由于项目需求,写了一个windows服务.下面总结如下: windows服务其实就是一些后台程序,和其他程序的主要区别是它运行于系统后台.微软公司为了方便我们自己定制我们的服务,提供了很多借 ...

  3. 【bzoj4619】[Wf2016]Swap Space 贪心

    题目描述 你有许多电脑,它们的硬盘用不同的文件系统储存数据.你想要通过格式化来统一文件系统.格式化硬盘可能使它的容量发生变化.为了格式化,你需要买额外的硬盘.当然,你想要买容量最小的额外储存设备以便省 ...

  4. SetLocalTime设置本地时间

    /***************************************************************** 函数名:EnableSetTimePriviledge 功 能:开 ...

  5. [Leetcode] rotate image 旋转图片

    You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). ...

  6. C&C++——库头文件及其作用

    1. 一些头文件的作用::ANSI C.提供断言,assert(表达式):GCC.GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数.使用glib只需要包含:GCC.文件夹操作函数. ...

  7. C语言指针大杂烩

    By francis_hao Oct 31,2016 指针数组和数组指针 指针数组本身是个数组,数组的内容是指针.形如char *pa[].由于[]优先级高于*,pa先于[]结合表示pa是一个数组,p ...

  8. windows10-seaslog安装笔记

    1.seasLog在windows下的安装 首先,要下载seasLog的dll文件,下载地址:http://pecl.php.net/package/SeasLog  选择对应你的系统和php版本的d ...

  9. 解决Idea Jsp <%%>中 request resopnse等无自动提示的问题

    解决办法:缺少Apache的lib依赖, 只需 File->Project Srructure->Libraries 加号 找到Apache安装的lib目录添加依赖即可.亲测可用

  10. jzoj2700 【GDKOI2012模拟02.01】数字

    传送门:https://jzoj.net/senior/#main/show/2700 [题目大意] 令n为正整数,S(n)为n的各位数字之和,令