【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第1节②

3、你为何须要Spark;算法

你须要Spark的十大理由:编程

1,Spark是能够革命Hadoop的目前惟一替代者,可以作Hadoop作的一切事情,同时速度比Hadoop快了100倍以上:性能优化

 

Logistic regression in Hadoop and Spark架构

能够看出在Spark特别擅长的领域其速度比Hadoop快120倍以上!app

 

2,原先支持Hadoop的四大商业机构纷纷宣布支持Spark,包含知名Hadoop解决方案供应商Cloudera知名的Hadoop供应商MapR框架

3,Spark是继Hadoop以后,成为替代Hadoop的下一代云计算大数据核心技术,目前SPARK已经构建了本身的整个大数据处理生态系统,如流处理、图技术、机器学习、NoSQL查询等方面都有本身的技术,而且是Apache顶级Project,能够预计的是2014年下半年到2015年在社区和商业应用上会有爆发式的增加。运维

4,国外一些大型互联网公司已经部署了Spark。甚至连Hadoop的早期主要贡献者Yahoo如今也在多个项目中部署使用Spark;国内的淘宝、优酷土豆、网易、Baidu、腾讯等已经使用Spark技术用于本身的商业生产系统中,国内外的应用开始愈来愈普遍。Spark正在逐渐走向成熟,并在这个领域扮演更加剧要的角色。机器学习

5,不得不提的是Spark的“One stack to rule them all”的特性,Spark的特色之一就是用一个技术堆栈解决云计算大数据中流处理、图技术、机器学习、交互式查询、偏差查询等全部的问题,此时咱们只须要一个技术团队经过Spark就能够搞定一切问题,而若是基于Hadoop就须要分别构建实时流处理团队、数据统计分析团队、数据挖掘团队等,并且这些团队之间不管是代码仍是经验都不可相互借鉴,会造成巨大的成本,而使用Spark就不存在这个问题;分布式

6,Mahout前一阶段表示从如今起他们将再也不接受任何形式的以MapReduce形式实现的算法,另一方面,Mahout宣布新的算法基于Spark;函数式编程

7,若是你已经使用了Hadoop,就更加须要Spark。Mahout前一阶段表示从如今起他们将再也不接受任何形式的以MapReduce形式实现的算法,另一方面,Mahout宣布新的算法基于Spark,同时,这几年来,Hadoop的改进基本停留在代码层次,也就是修修补补的事情,这就致使了Hadoop如今具备深度的“技术债务”,负载累累;

8,伴随Spark技术的普及推广,对专业人才的需求日益增长。Spark专业人才在将来也是煊赫一时,垂手可得能够拿到百万的薪酬;

9,百亿美圆市场,教授为之辞职,学生为止辍学,大势所趋!

10,Life is short.

 

4、如何成为云计算大数据Spark高手(含思惟导图和每一个阶段的课程推荐);

 

Spark采用一个统一的技术堆栈解决了云计算大数据的如流处理、图技术、机器学习、NoSQL查询等方面的全部核心问题,具备完善的生态系统,这直接奠基了其一统云计算大数据领域的霸主地位;

要想成为Spark高手,须要经历六大阶段:

第一阶段:熟练的掌握Scala语言

1, Spark框架是采用Scala语言编写的,精致而优雅。要想成为Spark高手,你就必须阅读Spark的源代码,就必须掌握Scala,;

2, 虽说如今的Spark能够采用多语言Java、Python等进行应用程序开发,可是最快速的和支持最好的开发API依然并将永远是Scala方式的API,因此你必须掌握Scala来编写复杂的和高性能的Spark分布式程序;

3, 尤为要熟练掌握Scala的trait、apply、函数式编程、泛型、逆变与协变等;

推荐课程:”精通Spark的开发语言:Scala最佳实践”

第二阶段:精通Spark平台自己提供给开发者API

1, 掌握Spark中面向RDD的开发模式,掌握各类transformationaction函数的使用;

2, 掌握Spark中的宽依赖和窄依赖以及lineage机制;

3, 掌握RDD的计算流程,例如Stage的划分、Spark应用程序提交给集群的基本过程和Worker节点基础的工做原理等

推荐课程:“18小时内掌握Spark:把云计算大数据速度提升100倍以上!”

第三阶段:深刻Spark内核

此阶段主要是经过Spark框架的源码研读来深刻Spark内核部分:

1, 经过源码掌握Spark的任务提交过程;

2, 经过源码掌握Spark集群的任务调度;

3, 尤为要精通DAGSchedulerTaskScheduler和Worker节点内部的工做的每一步的细节;

推荐课程:“Spark 1.0.0企业级开发动手:实战世界上第一个Spark 1.0.0课程,涵盖Spark 1.0.0全部的企业级开发技术”

第四阶级:掌握基于Spark上的核心框架的使用

Spark做为云计算大数据时代的集大成者,在实时流处理、图技术、机器学习、NoSQL查询等方面具备显著的优点,咱们使用Spark的时候大部分时间都是在使用其上的框架例如Shark、Spark Streaming等:

1, Spark Streaming是很是出色的实时流处理框架,要掌握其DStreamtransformationcheckpoint等;

2, Spark的离线统计分析功能,Spark 1.0.0版本在Shark的基础上推出了Spark SQL,离线统计分析的功能的效率有显著的提高,须要重点掌握;

3, 对于Spark的机器学习和GraphX等要掌握其原理和用法;

推荐课程:“Spark企业级开发最佳实践”

第五阶级:作商业级别的Spark项目

经过一个完整的具备表明性的Spark项目来贯穿Spark的方方面面,包括项目的架构设计、用到的技术的剖析、开发实现、运维等,完整掌握其中的每个阶段和细节,这样就可让您之后能够从容面对绝大多数Spark项目。

推荐课程:“Spark架构案例鉴赏:Conviva、Yahoo!、优酷土豆、网易、腾讯、淘宝等公司的实际Spark案例”

第六阶级:提供Spark解决方案

1, 完全掌握Spark框架源码的每个细节;

2, 根据不一样的业务场景的须要提供Spark在不一样场景的下的解决方案;

3, 根据实际须要,在Spark框架基础上进行二次开发,打造本身的Spark框架;

推荐课程:“精通Spark:Spark内核剖析、源码解读、性能优化和商业案例实战”

前面所述的成为Spark高手的六个阶段中的第一和第二个阶段能够经过自学逐步完成,随后的三个阶段最好是由高手或者专家的指引下一步步完成,最后一个阶段,基本上就是到无招胜有招的时期,不少东西要用心领悟才能完成。

相关文章
相关标签/搜索