Spark采用一个统一的技术堆栈解决了云计算大数据的如流处理、图技术、机器学习、NoSQL查询等方面的所有核心问题,具有完善的生态系统,这直接奠定了其一统云计算大数据领域的霸主地位;要想成为Spark高手,需要经历一下阶段:第一阶段:熟练的掌握Scala语言1, Spark框架是采用Scala语言编写的,精致而优雅。要想成为Spark高手,你就必须阅读Spark的源代码,就必须掌握Scala,;2,虽然说现在的Spark可以采用多语言Java、Python等进行应用程序开发,但是最快速的和支持最好的开发API依然并将永远是Scala方式的API,所以你必须掌握Scala来编写复杂的和高性能的Spark分布式程序;3,尤其要熟练掌握Scala的trait、apply、函数式编程、泛型、逆变与协变等;第二阶段:精通Spark平台本身提供给开发者API1,掌握Spark中面向RDD的开发模式,掌握各种transformation和action函数的使用;2,掌握Spark中的宽依赖和窄依赖以及lineage机制;3,掌握RDD的计算流程,例如Stage的划分、Spark应用程序提交给集群的基本过程和Worker节点基础的工作原理等第三阶段:深入Spark内核此阶段主要是通过Spark框架的源码研读来深入Spark内核部分:1,通过源码掌握Spark的任务提交过程;2,通过源码掌握Spark集群的任务调度;3,尤其要精通DAGScheduler、TaskScheduler和Worker节点内部的工作的每一步的细节;第四阶级:掌握基于Spark上的核心框架的使用Spark作为云计算大数据时代的集大成者,在实时流处理、图技术、机器学习、NoSQL查询等方面具有显著的优势,我们使用Spark的时候大部分时间都是在使用其上的框架例如Shark、Spark Streaming等:1, Spark Streaming是非常出色的实时流处理框架,要掌握其DStream、transformation和checkpoint等;2, Spark的离线统计分析功能,Spark 1.0.0版本在Shark的基础上推出了Spark SQL,离线统计分析的功能的效率有显著的提升,需要重点掌握;3,对于Spark的机器学习和GraphX等要掌握其原理和用法;第五阶级:做商业级别的Spark项目通过一个完整的具有代表性的Spark项目来贯穿Spark的方方面面,包括项目的架构设计、用到的技术的剖析、开发实现、运维等,完整掌握其中的每一个阶段和细节,这样就可以让您以后可以从容面对绝大多数Spark项目。
第六阶级:提供Spark解决方案1,彻底掌握Spark框架源码的每一个细节;2,根据不同的业务场景的需要提供Spark在不同场景的下的解决方案;3,根据实际需要,在Spark框架基础上进行二次开发,打造自己的Spark框架;前面所述的成为Spark高手的六个阶段中的第一和第二个阶段可以通过自学逐步完成,随后的三个阶段最好是由高手或者专家的指引下一步步完成,最后一个阶段,基本上就是到”无招胜有招”的时期,很多东西要用心领悟才能完成。
PPV课其他精彩文章:
1、回复“干货”查看干货 数据分析师完整知识结构
2、回复“答案”查看大数据Hadoop面试笔试题及答案
3、回复“设计”查看这是我见过最逆天的设计,令人惊叹叫绝
4、回复“可视化”查看数据可视化专题-数据可视化案例与工具
5、回复“禅师”查看当禅师遇到一位理科生,后来禅师疯了!!知识无极限
6、回复“啤酒”查看数据挖掘关联注明案例-啤酒喝尿布
7、回复“栋察”查看大数据栋察——大数据时代的历史机遇连载
8、回复“数据咖”查看数据咖——PPV课数据爱好者俱乐部省分会会长招募
9、回复“每日一课”查看【每日一课】手机在线视频集锦
原文始发于微信公众号(PPV课数据科学社区):【学习】如何从菜鸟成长为Spark大数据高手?
原创文章,作者:ppvke,如若转载,请注明出处:http://www.ppvke.com/archives/21484