五个月成为一名大数据工程师,需要具备什么条件?

学习大数据没有零基础入门,首先你要成为一名工程师

在技术论坛中或知乎上,看到近几万的朋友都在疑惑,学习Java应该选择什么发展方向,这个咱们在之前的文章中有提到过,Java发展在领域上有三个选择方向:

JavaEE,主要应用于企业级应用开发;安卓开发方向;嵌入式应用开发方向。在此建议大家选择JavaEE方向,因为应用非常广泛,岗位设置也比较多。

Java的职业发展规划之路我们也曾在(一文阐述Java从初级到高级的学习之路——白老师分享篇(2)

)详细列举,这里就不一一列举了。

但我们从来没有讨论过学习Java,难道这辈子就只能做Java后端开发吗?只能在这条路上奋斗到底吗?难道中途没有其他的选择吗?

偶然认识的一个朋友,最开始是从事Java后端开发的,后来他在业余时间自学成功转入大数据行业,现在是一名大数据工程师,待遇也比之前好更多。前提是他是一名Java后端开发。

大数据是我们如今比较火的一个发展方向,但是很多培训机构有提到几个月速成的,小编觉得不是特别靠谱。

原因有以下:

大数据是一个新生行业,还不太成熟。

Java发展了将近20年,也没有说几个月速成的,最多也就是带你入门,让你对Java的知识结构体系有一个清晰的认知,在后期的工作实践期间成长的速度更快。

大数据的起点要高,并不是所谓的零基础就可以入门的。

很多初学者,对大数据的概念都是模糊不清的,大数据是什么,能做什么,学的时候,该按照什么线路去学习,学完往哪方面发展,想深入了解,想学习的同学欢迎加入大数据学习qq群:957205962,(零基础以及进阶的经典实战)与大家分享目前国内最完整的大数据高端实战实用学习流程体系。

我们接下来讲述的有关大数据的学习是有条件限制的,首先你需要是一名普通的工程师,如果你是Java工程师的话更好,但如果你是小白的话,那就只能成为一名工程师的后再来学习大数据吧。

一、认识大数据

大数据本质其实也是数据,不过也包括了些新的特征,

数据来源广;

数据格式多样化(结构化数据、非结构化数据、Excel文件等);

数据量大(最少也是TB级别的、甚至可能是PB级别);

数据增长速度快。

而针对以上新的特征需要考虑很多问题:

例如,数据来源广,该如何采集汇总?采集汇总之后,又该存储呢?数据存储之后,该如何通过运算转化成自己想要的结果呢?

对于这些问题,我们需要有相对应的知识解决。

二、大数据所需技能要求

Python语言:编写一些脚本时会用到。

Scala语言:编写Spark程序的最佳语言,当然也可以选择用Python。

Ozzie,azkaban:定时任务调度的工具。

Hue,Zepplin:图形化任务执行管理,结果查看工具。

Allluxio,Kylin等:通过对存储的数据进行预处理,加快运算速度的工具。

必须掌握的技能:
Java高级(虚拟机、并发)、Linux 基本操作、hadoop(HDFS+MapReduce+Yarn )、 HBase(JavaAPI操作+Phoenix )、Hive(Hql基本操作和原理理解)、 Kafka、Storm/JStorm、Scala、Python、Spark (Core+sparksql+Spark streaming ) 、辅助小工具(Sqoop/Flume/Oozie/Hue等)

高阶技能6条:

机器学习算法以及mahout库加MLlib、 R语言、Lambda 架构、Kappa架构、Kylin、Alluxio

三、学习规划

每天需要有3个小时的学习时间,周末的时候需要10小时,如果做不到的话,只能是

第一阶段(基础阶段)

Linux学习

Linux操作系统介绍与安装、Linux常用命令、Linux常用软件安装、Linux网络、 防火墙、Shell编程等。

Java 高级学习(《深入理解Java虚拟机》、《Java高并发实战》)

掌握多线程、掌握并发包下的队列、掌握JVM技术、掌握反射和动态代理、了解JMS。

Zookeeper学习

Zookeeper分布式协调服务介绍、Zookeeper集群的安装部署、Zookeeper数据结构、命令。

第二阶段(攻坚阶段)

Hadoop、Hive、HBase、Scala、Spark、Python

第三阶段(辅助工具工学习阶段)

Sqoop、Flume、Oozie、Hue这些工具的学习主要在CSDN,51CTO以及官网都可以学习。

四、学习资源推荐

Apache 官网(//apache.org/)

Stackoverflow(https://stackoverflow.com/)

Github(https://github.com/)

About 云 ://www.aboutyun.com/

CSDN(//www.csdn.net/)

51CTO (//www.51cto.com/)

总结

在技术行业里面,每天都会有新的东西出现,需要关注最新技术动态,不断学习。任何一般技术都是先学习理论,然后在实践中不断完善理论的过程。

如果你觉得自己看书效率太慢,你可以网上搜集一些课程。

快速学习的能力、解决问题的能力、沟通能力在这个行业是真的非常重要的指标。

要善于使用StackOverFlow和Google来帮助你学习过程遇到的问题。

以上是我们对大数据学习的总结,当然我们也提到了,并不是说零基础的就可以直接学习,需要有编程的基础,要先掌握扎实的编程基础,在此建议学习Java,成为一名工程师的时候,有一定编程经验,自学起来也相对比开始要简单一点,然后对大数据有兴趣或者想要进入这个行业的就可以去学习了。

很多初学者,对大数据的概念都是模糊不清的,大数据是什么,能做什么,学的时候,该按照什么线路去学习,学完往哪方面发展,想深入了解,想学习的同学欢迎加入大数据学习qq群:957205962,(零基础以及进阶的经典实战)与大家分享目前国内最完整的大数据高端实战实用学习流程体系。

猜你喜欢

转载自blog.51cto.com/14309943/2400838