大数据工程师未来职业规划

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据工程师未来职业规划相关的知识,希望对你有一定的参考价值。

我是一名刚毕业的大学生,大学学的是电子科学与技术专业。现在在一家公司做IT运维,就是比较简单的工作,能学到一些基本的WIN SERVER和云平台的技术。
但是我对未来的职业规划还是很迷茫。不知道该学点什么。我上网查了查,想学一学大数据方面的东西。从JAVA LINUX等等先学起。但是基础不是很好,得从零开始。
大家能给我点建议吗?这个方向未来的前景如何?有什么要注意的,有别的方向或者更好的规划吗?谢谢

想了解数据分析工程师的职业规划或学习计划,由此来提升自己的技能和专业知识,我觉得最准确最有针对性一个方法就是查阅招聘岗位的工作要求,这样我们就可以有的放矢地好好专研自己的学习。我们看一下以下这条招聘要求:
1.负责大数据平台的规划、分析、设计工作,把握整体架构,进行相关技术方案文档的撰写;
2.负责大数据平台的部署、开发、维护工作;
3.与BI分析人员协作,完成面向业务目标的数据分析模型定义和算法实施工作;
4.承担相关技术领域的探索与储备。
任职要求:
1.大学本科以上学历,熟练掌握C/C++或者JAVA;
2.熟悉各种常用数据结构及算法,对linux下的网络数据库开发有足够经验;
3.有2年以上C++实战经验者优先;
4.有大数据挖据方面经验和技能者优先;如hadoop、hbase、hive等;
5.善于与其他部门的成员沟通、协作。
还有一个招聘要求是:
岗位职责:
1、理解并挖掘用户需求,进行数据建模;
2、利用专业统计、分析工具从海量数据中总结规律、挖掘潜在价值,提供决策依据。
任职要求:
1、数学类、统计类、计算机类、人工智能类相关专业本科及以上学历,2年左右专职数据分析、挖掘经验,优秀的应届硕士也可;
2、良好的数据敏感性,善于从海量数据中提取有效信息进行分析挖掘和建模;
3、熟练掌握任一种分析工具,例SPSS、SAS、R语言、MatLab;
4、熟悉数据库技术,如oracle、SQL、MongoDB;
5、对于数学建模、数据挖掘、Hadoop大数据有经验者优先。
我想,你看到这,应该是对数据分析工程师有了非常明晰的看法,好好加油ba !
参考技术A 不同公司对数据分析师的职位划分稍有不同。在一些中小型企业,在没有成立独立的数据中心前,数据分析的相关职位往往是在市场部、运营部的管辖之下,人数通常在2-4人不等。对于一些大型企业,有独立的数据分析部门,团队成员也在数十人到百余人不等。对于职位头衔,有的按行政级别划分,如专员、主管、经理、总监等;也有的按专业水平划分,如助理、高级、资深、专家等。
数据分析职位整体上分为两大类:
1、数据分析师:
专业能力成长路径:助理数据分析师-数据分析师-资深数据分析师-高级数据分析师
行政职位晋升路径:数据分析专员-数据分析主管-数据分析经理-数据分析总监
主要专业技能要求:数据库知识(SQL)、基本的统计分析知识、熟练掌握Excel,了解SPSS/SAS,良好的PPT展示能力。
2、数据分析工程师:算法工程师、建模工程师。
(以上内容来自第一职场网“教练式”职业规划咨询报告)本回答被提问者采纳
参考技术B 不同公司对数据分析师的职位划分稍有不同。在一些中小型企业,在没有成立独立的数据中心前,数据分析的相关职位往往是在市场部、运营部的管辖之下,人数通常在2-4人不等。对于一些大型企业,有独立的数据分析部门,团队成员也在数十人到百余人不等。对于职位头衔,有的按行政级别划分,如专员、主管、经理、总监等;也有的按专业水平划分,如助理、高级、资深、专家等。
数据分析职位整体上分为两大类:
1、数据分析师:
专业能力成长路径:助理数据分析师-数据分析师-资深数据分析师-高级数据分析师
行政职位晋升路径:数据分析专员-数据分析主管-数据分析经理-数据分析总监
主要专业技能要求:数据库知识(SQL)、基本的统计分析知识、熟练掌握Excel,了解SPSS/SAS,良好的PPT展示能力。
2、数据分析工程师:算法工程师、建模工程师。
参考技术C 数据分析师这个职业前景很好,但是也得要学好技术,可以看一下spss sas软件的使用,可以去CDA数据分析师官网看看,那里有很多学这个的,还不错,CDA数据分析师的就业前景可选择于通讯、医疗、银行、证券、保险、制造、商业、市场研究、科研、教育等多个行业和领域。,根据三个不同的等级胜任不同的数据分析工作任务。 参考技术D

  数据分析师的职业发展非常的宽泛 ,非常的广,提供给我们很多发展的机遇,那么作为一个数据分析师,他会了解到企业经营或者一个组织的管理,非常非常深入地或者很细地各个方面的一些情况,因为我们日常都会对企业经营和组织管理方面的问题进行分析,来提供一些建议。因此我们对决明企业管理和经营会随着数据分析职业发展越来越了解,在了解了职业和业务的情况下,作为一个九道门数据分析师,他是有很多方向可以走。

01

       一个方向是我个人比较内向不希望和人做更多地沟通,我也不希望去管理别人的时候他可以做数据科学家,我们对企业的运营和经营在非常了解的情况下,能够学习一些高端的数据挖掘的技术或者数据分析的技术包括一些深度学习之类的,包括把自己的编程能力和系统的控制都提高之后我们可以在数据分析地领域走到我们领域地最高峰就是数据科学家。


02

       有些同学在数据分析的学习过程中,发现自己乐于分享也乐于沟通、管理别人,并对业务更有兴趣的时候,他可以走向业务管理的职业,为什么我们会说数据分析更适合做业务管理,因为在企业经营中,我们其实都在管理一些指标,也就是我们日常打交道的都是数据,数据分析师每天都在和数据打交道,对企业经营能够做到非常精细化的去理解并知道如何进行优化的情况下,他更适合去做一些管理的岗位,因此数据分析师如果了解到自己有具备这样的能力,他的职业规划可以向CXO,这样的职业阶层层面发展,随着工作年龄的增长,他是可以走到管理的岗位,甚至是比较高的管理岗位。

Spark一出,Hadoop必死?Spark才是大数据的未来?

最近公司邀请来王家林老师来做培训,其浮夸的授课方式略接受不了。其强烈推崇Spark技术,宣称Spark是大数据的未来,同时宣布了Hadoop的死刑。


那么与Hadoop相比,Spark技术如何?现工业界大数据技术都在使用何种技术?


来自Xiaoyu Ma,号称是大数据工程师的回答:


我本人是类似Hive平台的系统工程师,我对MapReduce的熟悉程度是一般,它是我的底层框架。我隔壁组在实验Spark,想将一部分计算迁移到Spark上。


年初的时候,看Spark的评价,几乎一致表示,Spark是小数据集上处理复杂迭代的交互系统,并不擅长大数据集,也没有稳定性。但是最近的风评已经变化,尤其是14年10月他们完成了Peta sort的实验,这标志着Spark越来越接近替代Hadoop MapReduce了。


Spark the fastest open source engine for sorting a petabyte


Sort和Shuffle是MapReduce上最核心的操作之一,比如上千个Mapper之后,按照Key将数据集分发到对应的Reducer上,要走一个复杂的过程,要平衡各种因素。Spark能处理Peta sort的话,本质上已经没有什么能阻止它处理Peta级别的数据了。这差不多远超大多数公司单次Job所需要处理的数据上限了。


回到本题,来说说Hadoop和Spark。Hadoop包括Yarn和HDFS以及MapReduce,说Spark代替Hadoop应该说是代替MapReduce。


MapReduce的缺陷很多,最大的缺陷之一是Map + Reduce的模型。这个模型并不适合描述复杂的数据处理过程。很多公司(包括我们)把各种奇怪的Machine Learning计算用MR模型描述,不断挖(lan)掘(yong)MR潜力,对系统工程师和Ops也是极大挑战了。很多计算,本质上并不是一个Map,Shuffle再Reduce的结构,比如我编译一个SubQuery的SQL,每个Query都做一次Group By,我可能需要Map,Reduce+Reduce,中间不希望有无用的Map;又或者我需要Join,这对MapReduce来说简直是噩梦,什么给左右表加标签,小表用Distributed Cache分发,各种不同Join的Hack,都是因为MapReduce本身是不直接支持Join的,其实我需要的是,两组不同的计算节点扫描了数据之后按照Key分发数据到下一个阶段再计算,就这么简单的规则而已;再或者我要表示一组复杂的数据Pipeline,数据在一个无数节点组成的图上流动,而因为MapReduce的呆板模型,我必须一次一次在一个Map/Reduce步骤完成之后不必要地把数据写到磁盘上再读出,才能继续下一个节点,因为Map Reduce2个阶段完成之后,就算是一个独立计算步骤完成,必定会写到磁盘上等待下一个Map Reduce计算。


上面这些问题,算是每个号称下一代平台都尝试解决的。


现在号称次世代平台现在做的相对有前景的是Hortonworks的Tez和Databricks的Spark。他们都尝试解决了上面说的那些问题。Tez和Spark都可以很自由地描述一个Job里执行流(所谓DAG,有向无环图)。他们相对现在的MapReduce模型来说,极大的提升了对各种复杂处理的直接支持,不需要再绞尽脑汁“挖掘”MR模型的潜力。


有兴趣的童鞋可以看看这个PPT


http://www.slideshare.net/Hadoop_Summit/w-235phall1pandey


这是Hadoop峰会上Tez的材料,第九页开始有描述Hive on Tez和传统MR Hive的区别,这些区别应该也适用于MR Hive和Spark SQL,也很清楚的体现了为何MR模型很笨重。


相比Tez,Spark加入了更多内存Cache操作,但据了解它也是可以不Cache直接处理的,只是效率就会下降。


再说Programming Interface,Tez的Interface更像MapReduce,但是允许你定义各种Edge来连接不同逻辑节点。Spark则利用了Functional Programming的理念,API十分简洁,相比MR和Tez简单到令人发指。我不清楚Spark如果要表现复杂的DAG会不会也变得很麻烦,但是至少wordcount的例子看起来是这样的,大家可以比较感受下:


incubator-tez/WordCount.java at master · apache/incubator-tez · GitHub

Examples | Apache Spark


处理大规模数据而言,他们都需要更多proven cases。至少Hadoop MapReduce是被证明可行的。


作为Data Pipeline引擎来说,MapReduce每个步骤都会存盘,而Spark和Tez可以直接网络发送到下一个步骤,速度上是相差很多的,但是存盘的好处是允许继续在失败的数据上继续跑,所以直观上说MapReduce作为pipeline引擎更稳健。但理论上来说,如果选择在每个完成的小步骤上加CheckPoint,那Tez和Spark完全能和现在的MapReduce达到一样的稳健。


总结来说,即便现在不成熟,但是并没有什么阻碍他们代替现有的MapReduce Batch Process。


对Tez而言,似乎商业上宣传不如Spark成功。Databricks头顶Berkley的光环,商业宣传又十分老道,阵营增长极快。光就系统设计理念,没有太大的优劣,但是商业上可能会拉开差距。Cloudera也加入了Spark阵营,以及很多其他大小公司,可以预见的是,Spark会成熟的很快,相比Tez。


但Tez对于Hortonworks来说是赢取白富美的关键,相信为了幸福他们也必须努力打磨推广tez。


所以就算现在各家试用会有种种问题,但是毕竟现在也就出现了2个看起来有戏的“次世代”平台,那慢慢试用,不断观望,逐步替换,会是大多数公司的策略。


————————————————————————————————


来自 纪路,大数据工程师/自由软件拥护者/Pythoner/…的回答:


我根据我有限的知识对Hadoop和Spark做一下对比,在附加一点自己的评论就好了。


原生语言:hadoop-JAVA,Spark-scala


评注:虽然可以实现接口,但原生的语言就是好用,如果某人痛恨java,Spark给你一条生路。


计算模型:hadoop-MapReduce,Spark-DAG(有向无环图)


评注:经常有人说Spark就是内存版的MapReduce,实际上不是的。Spark使用的DAG计算模型可以有效的减少Map和Reduce人物之间传递的数据,尤其适合反复迭代的机器学习场景。而Hadoop则更擅长批处理。不过Tez也是使用的DAG计算模型,他也是Hadoop,明眼人都知道DAG计算模型比MR更好。


存储:hadoop-HDFS,Spark-RDD,HDFS


评注:spark既可以仅用内存存储,也可以在HDFS上存储,即使Spark在HDFS上存储,DAG计算模型在迭代计算上还是比MR的更有效率。


我并不觉得这两个及系统又大多的矛盾,只不过Spark一直宣称比hadoop快而已。实际上从应用场景上区分,Hadoop更适合做批处理,而Spark更适合做需要反复迭代的机器学习。


点击阅读原文可查看知乎原帖。


以上是关于大数据工程师未来职业规划的主要内容,如果未能解决你的问题,请参考以下文章

DBA这一职业未来该如何发展?

学习大数据,你的职业是如何规划的?

作为一名软件工程系的一员,未来的职业规划!

从行业到职业,看数据的现在与未来

大数据工程师职业到底有多吃香?

.Net程序员的未来