
对于Java程序员,大数据的主流平台hadoop是基于Java开发的,所以Java程序员往大数据开发方向转行从语言环境上更为顺畅,另外很多基于大数据的应用框架也是Java的,所以在很多大数据项目里Java语言的确是可以派上用场的。所以,Java程序员转大数据工程师是具备很好的基础条件的。 当然,hadoop核心价值在于提供了分布式文件系统和分布式计算引擎,对于大部分公司而言,并不需要对这个引擎进行修改。这时候除了熟悉编程,你通常还需要学习数据处理和数据挖掘的一些知识。尤其是往数据挖掘工程师方向发展,则你需要掌握更多的工具和知识。
Java程序员转大数据职位的学习路线图:
第一步:分布式计算框架
掌握hadoop和spark分布式计算框架,了解文件系统、消息队列和Nosql数据库,学习相关组件如hadoop、MR、spark、hive、hbase、redies、kafka等
第二步:算法和工具
学习了解各种数据挖掘算法,如分类、聚类、关联规则、回归、决策树、神经网络等,熟练掌握一门数据挖掘编程工具:Python或者Scala。目前主流平台和框架已经提供了算法库,如hadoop上的Mahout和spark上的Mllib,你也可以从学习这些接口和脚本语言开始学习这些算法。
第三步:数学
补充数学知识:高数、概率论和线代
第四步:项目实践
1)开源项目:tensorflow:Google的开源库,已经有40000多个star,非常惊人,支持移动设备
2)参加数据竞赛:Kaggle和国内天池数据竞赛
3)通过企业实习获取项目经验
如果你仅仅是做大数据开发和运维,则可以跳过第二步和第三步,如果你是侧重于应用已有算法进行数据挖掘,那么第三步也可以先跳过。
总结:
Java工程师可以更容易理解hadoop的框架和生态,很多大数据saas级产品也是Java开发的,因此Java基础是转行大数据的一个很好的起点。但大数据是一个更为宽广的领域,具有跨界知识和能力的人才会更受企业青睐。随着人工智能时代的到来,大数据将迎来黄金发展的10年,如果你已经做好准备,那么就立即开始行动吧!
我也做过好多年Java,去年开始也接触了些大数据的架构。跟你情况类似。我的观点是你可以去动手搭建一下,玩玩,其实并不像你想象的那样高深莫测。都是些工具,我不太喜欢学如何用这些工具,只要能解决我要解决的问题,去用就是了。如果工具的实现感兴趣就去看看代码。工具本身怎么用就是个fact,只是知道和不知道的区别。不要觉得做Java就比别人低一等。你一样可以做的很出色。会用那些大数据工具也并不代表能力有多强欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)