有一朋友将要研究生毕业,专业为地质方面。不想从事地质专业的工作而想转为大数据程序员工作。这个跨度有些大,与本专业关系很小。目前也正在自学编程,一步一步正在实践自己的想法。其实要说花了两三年时间读了研究生,转行的话总给人有些浪费的感觉。毕竟研究生的专业是地质,如果到专业的单位应该也可以有很好的发展的,但自己已经铁了心想要转型到编程来。那转行到大数据程序员,需要学习哪些东西呢?
其实大数据方面的知识也多,如果单纯说要学什么东西也不能说完,因为也有相关联的知识。但从基本的来说能够先入行,再深入学习以下几个方面。
首先是Linux。大数据的分布式集群目前基本都是搭建在多台Linux系统上,对集群的执行命令都是在Linux终端窗口输入的。所以Linux的学习是必须要的。比如:用户权限,环境变量配置,各种命令,yum/apt-get等等。
其次是开发语言。目前用得多的是Java、Python等,目前Java是比较大众化的,从这个学习其实应该是不错的,资料实战例子也多。Python因为比较简单目前用得越来越多,当然还有Go啊之类的,以后也是可以多学习了解。
再次是ETL数据清洗。了解数据的抽取、清洗转换、加载等所需要的工具。比如:OWB、DTD、SSIS等,或者SQL方式实现,或两者结合。作为开发来说,也许不需要特别深入,但多了解一些也是有好处的。
第四是大数据开发核心技术Hadoop框架。这里涉及的知识就比较多,比如HDFS,HIVE,HBase或Spark,YARN,MapReduce等等。简单的来讲Hadoop的编译、环境搭建、HDFS Shell的使用,YARN集群资源管理与任务监控,MapReduce编程,分布式集群的部署管理等等。
第五是某些使用到的工具。比如用于Hadoop与传统数据库之间进行数据传递的Sqoop,调度MapReduce Job和HiveQL的Oozie,文件收集框架Flume,大数据WEB工具Hue等等。
还有分布式数据库的学习也是不可少的,比如Hase。如果能够再学习Storm,Spark框架以及Scala语言就更好了。
数据的分析开发以后一段时间也会持续有一定的热度,相关的工种也比较多。但作为开发来说,其实除了工具使用差异及应用差异以外总的来说还是程序员的范围。程序员现在队伍也是越来越庞大,竞争也是越来越激烈。转行过来还是相当的辛苦,即使是研究生但开发上面并不天生占有优势。但只要认定了方向一直努力下去,干专干精终会有自己的位置。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.