经常看到近几万的朋友都在疑惑,学习Java应该选择什么发展方向,这个咱们在之前的文章中有提到过,Java发展在领域上有三个选择方向:
JavaEE,主要应用于企业级应用开发;安卓开发方向;嵌入式应用开发方向。在此建议大家选择JavaEE方向,因为应用非常广泛,岗位设置也比较多。
但我们从来没有讨论过学习Java,难道这辈子就只能做Java后端开发吗?只能在这条路上奋斗到底吗?难道中途没有其他的选择吗?
偶然认识的一个朋友,最开始是从事Java后端开发的,后来他在业余时间自学成功转入大数据行业,现在是一名大数据工程师,待遇也比之前好更多。前提是他是一名Java后端开发。
大数据是我们如今比较火的一个发展方向。
但是大数据的起点要高,并不是所零基础就可以入门的。
我们接下来讲述的有关大数据的学习是有条件限制的,首先你需要是一名普通的工程师,如果你是Java工程师的话更好,但如果你是小白的话,那就只能成为一名工程师的后再来学习大数据吧。
已经为大家精心准备了大数据的系统学习资料,从Linux-Hadoop-spark-......,需要的小伙伴可以点击进入
一
认识大数据
大数据本质其实也是数据,不过也包括了些新的特征:
数据来源广;数据格式多样化(结构化数据、非结构化数据、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
三
学习规划
第一阶段
Linux学习:Linux操作系统介绍与安装、Linux常用命令、Linux常用软件安装、Linux网络、 防火墙、Shell编程等。
Java 高级学习:掌握多线程、掌握并发包下的队列、掌握JVM技术、掌握反射和动态代理、了解JMS。
Zookeeper学习:Zookeeper分布式协调服务介绍、Zookeeper集群的安装部署、Zookeeper数据结构、命令。
第二阶段
Hadoop 、Hive、HBase、Scala、Spark 、Python
第三阶段
Sqoop、Flume、Oozie、Hue这些工具的学习主要在CSDN,51CTO以及官网都可以学习。
已经为大家精心准备了大数据的系统学习资料,从Linux-Hadoop-spark-......,需要的小伙伴可以点击进入
总结
在技术行业里面,每天都会有新的东西出现,需要关注最新技术动态,不断学习。任何一般技术都是先学习理论,然后在实践中不断完善理论的过程。
如果你觉得自己看书效率太慢,你可以网上搜集一些课程。
快速学习的能力、解决问题的能力、沟通能力在这个行业是真的非常重要的指标。
要善于使用StackOverFlow和Google来帮助你学习过程遇到的问题。
视频课程推荐:可以去万能的淘宝购买一些视频课程,然后选择一个适合自己的。
以上是我们对大数据学习的总结,当然我们也提到了,并不是说零基础的就可以直接学习,需要有编程的基础,我们需要先掌握扎实的编程基础,在此建议学习Java,成为一名工程师的时候,有一定编程经验,自学起来也相对比开始要简单一点,然后对大数据有兴趣或者想要进入这个行业的就可以去学习了。
码字不容易,帮忙点个赞,点赞关注是我写作的动力,谢谢!
网友评论