JAVA的精密,强大,拥有其它语言不可替代的性能和可维护性,早已经是成为最受欢迎的编程语言之一,很多人想进入IT行业,首选的第一门语言就是JAVA。但是,在未来10年肯定是大数据的天下,人工智能的爆发,将会有大量企业会进入大数据领域,而从JAVA程序员转JAVA大数据就会有天然的优势,因为目前大数据的架构基本都是用JAVA语言完成,未来10年,JAVA大数据的需求量会越来越大。
现在学习JAVA的小伙伴,如果想以后不被淘汰,将来势必会进军大数据行列,根据目前的行业动态,JAVA程序员由于发展的局限性以及随着年龄增长,在竞争方面也越来越容易被年轻一代赶超,因为JAVA程序员的加班时间过长导致,所以大批JAVA工程师前辈已经先一步进军大数据了。
为什么要转大数据?
1、大数据职位发展空间大
Java这块如果做5~6年到管理岗位的话,薪资基本可以达到2万-2.5万了。但是2.5万基本上是Java技术人员的天花板,能上这个数的人很少,除非是架构师或者做底层的开发。但Hadoop这块2万多的薪资只能算一般,后面还有很大发展空间,所以很多有经验的Java老鸟在往这块转。
2、大数据不受年龄限制
年龄大对搞技术的来说是个比较大的问题,Java工程师满大街都是,年龄大了工资还好但精力跟不上年轻人,不能加班,有家有室也不能长期出差,会比较尴尬。Hadoop这块年龄影响比较小,因为搞大数据不是简单的编程,编程的份量连1/6都不到,很多时候需要你从服务器、存储、计算、运维等多个方面来分析问题解决问题,年龄越大经验越丰富,也越吃香。
目前有一大半学Hadoop的学员都有不错的Java基础,有的是工作2~3年发现工资一直在7k-12k这个位置徘徊,上不去,想突破一下;也有的是不想整天做业务系统开发,想去大互联网公司发展,待遇和氛围好一些;也有的是公司有些业务需要用到Hadoop,边学边做,碰到问题也能跟老师同学交流。
3、大数据岗位工资高
做Java的人已经比较多了,很多人工作4~5年月薪也难上2万,能上2.5万的更是寥寥。但Hadoop很多人只1年经验就拿2万以上了。所以很多现在待遇还不错的人也还来学Hadoop,主要也是考虑未来发展天花板的问题。
4、大数据是未来趋势
做Java也是不错的,不过目前大数据是个趋势。稍微有实力点的企业都在上大数据项目,而Hadoop本身又是Java开发的,再加上Hadoop工程师普遍比纯Java开发要高3k以上,所以有很多搞Java的都在往这hadoop大数据方向转。
大数据的方向在哪?
大数据的方向的工作有 大数据运维工程师、大数据开发工程师、数据分析、数据挖掘、架构师等。
大数据的技术有:
Hadoop HDFS文件系统 MR计算模型
Hive数据仓库
HBase数据库
Flume日志收集
Kafka消息系统
Storm流式计算
Spark生态圈:Spark Core、Spark SQL、Spark Streaming、MLLib和GraphX
Zookeeper协调系统
NOSQL数据库:Redis、MongoDB
机器学习:Mahout
该如何学习大数据?
- 先学Hadoop Hadoop框架中由两大模块组成,一个HDFS(Hadoop Distributed File System),是用来存储需要处理的数据,另外一个是MapReduce,是Hadoop的处理数据的计算模型。2. 学习一门数据库,像MySQL学点SQL吧3. Hive 只要你会SQL,你就会使用它。hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。4. HBase HBase即Hadoop DataBase,Hadoop的数据库,HBase是一种 "NoSQL" 数据库,即不是RDBMS ,不支持SQL作为主要访问手段。5. Sqoop Sqoop是迁移数据工具,可以在很多数据库之间来迁移,6. Flume Flume是一个分布式的海量日志采集和传输框架,一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。7. Kafka 使用Kafka完成数据的一次收集,多次消费。它是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统。8. Spark基于内存计算的框架 Spark Core最为重要再学SparkSQL、Spark Streaming、图计算、机器学习9. Storm实时的流计算框架。
大体分为 7 个阶段:入门知识 → Java 基础 → Scala 基础 → Hadoop 技术模块 → Hadoop 项目实战 → Spark 技术模块 → 大数据项目实战。
大数据的知识涉及到很多方面,看起来很复杂,但是Java程序员想要转行大数据并不需要有太大的心理压力,相对于其他大多数专业,Java专业已经与大数据十分接近。加上Java编程学习中所锻炼的程序员专业的思维方式,能帮助Java程序员理解大数据相关知识更加容易。
总而言之,Java程序员学习大数据具有很多别人不具备的先天优势,相信学习起大数据来也是如鱼得水,游刃有余。想要转行大数据的Java程序员不用顾虑太多,时代的机遇稍纵即逝,及时抓住才是硬道理。
欢迎工作一到五年的Java工程师朋友们加入Java技术交流:585550789
原文地址:https://blog.51cto.com/14226273/2361305