学习大数据spark的方向如何确立,如何快速高效学习
来源:海牛大数据 时间:2018-05-03 13:45:53 编辑:星晨
大数据在不断的发展,spark的重要性也逐渐的显现。Spark是用于大规模数据处理的快速且通用的工具,快速意味着它比之前使用大数据的方法更快。spark比hadoop快、有机器学习库、好多大公司在用等等特点致使很多人涌入到这个领域,那么对于求学者而言, 如何才能够快速的学习大数据spark,其主要学习方向在哪里呢?
学习spark大数据首先要明确的一点就是它是用什么语言编写的,这对于我们的后续学习有着重要的作用。spark 原生由Scala语言编写,支持Java、Python、Scala、R API,学习Spark的时候选择你最熟悉的语言来执行Spark,因为你学习的是框架,清楚Spark的调用过程,语言本身并不重要(当然Java、R有很多高级特性需要自己编写更多的代码),如果你对于每种语言都很陌生,推荐你使用Scala,使用一段时间后会让你对函数式编程有更深入的了解。当然,这一点因人而异,如果你是编程小白,那么不妨从java开始学习。
纸上得来终觉浅,想要真正的学好spark重点还是要实践,一个最简单的入门方式就是先用你熟悉的编程语言无脑的跑一遍,对Spark CoreRDD和 Spark SQL有个感性的认识,因为 Spark 自带了“Quick Start” 和 “Programing Guides“,所以这一点实现起来并不复杂。这时候或许你对RDD的原理什么的不了解也没关系,跳过这些,用Spark-shell运行它们,看它是怎么调用的,返回了什么信息,你还要知道Spark 支持SQL ,而且有个Streaming 流式处理框架和MLlib机器学习库,以及图计算功能,那么你所跑的demo都是Core RDD的功能,底层的核心功能,后面大部分是可以用高级功能替代的。发现问题,解决问题,永远是学习新知识最为快捷的方式。当然,如果你是一个编程小白的话,那么建议你可以参考一下海牛大数据的大数据学习总纲,里面对于spark、spark调试的学习给出了最为合理的课程安排,小白可以借此作为自己学习的一个路线,让自己学习spark更有方向。
如今,很多人或许是被spark的概念“洗脑”了,认为hadoop将会被spark所取代,所以很多初学者开始放弃学习hadoop,但实际情况真的是这样吗?答案当然是否定的,hadoop与spark并不是敌对的关系,二者在短期时间内并不存在相互取代的问题,因为:
1、Hadoop 代表了一个完整的生态系统,Spark 只是其中的计算框架部分;
2、MapReduce 有可能会被 Spark 替代,但目前很多已经在生产的系统依然以 MapReduce、Hive 为主,Spark 用在局部领域,趋势在朝 Spark 发展;
3、hadoop与spark的功能并不相同,而这有相似也有不同点,并不是“替代品”的关系,二者的相互配合,能够让企业、机构更好实现大数据的构建。
所以,学习大数据时hadoop是不能忽略的。对于刚刚学习大数据的求学者其实最容易走偏,很多人会想当然的认为自己掌握了一种大数据工具,就掌握了大数据技术,其实这种做法是不正确的,管中窥豹的行为,最终只会让自己学而不精。
大数据是一个新兴的行业,很多企业、机构、学者都在研究,学习spark对于求学者而言至关重要,但是,不积跬步无以至千里,想要真正的实现大数据,仅仅依靠spark是不可能实现的,所以,这就需要求学者更加系统的去学习大数据,不仅要研究java、hadoop、hive、kafka等相关内容,还要明确大数据的概念和发展方向,当然,既然要真正的学好大数据,那么将大数据所需要的工具进行总结分析,了解他们之间的不同点、相似点,对于将来熟练的运用也至关重要。
spark如今的发展速度固然很快,但是对于求学者,尤其是刚刚进入大数据领域的小白,想要学习好大数据,不仅仅是学习spark,必须要有一个系统的学习计划、学习大纲,这样才能够更好的掌握大数据相关技能,也更能够明确为何spark为何如此受关注。