对于学习大数据的新人,面对开发语言和分析软件时,该如何选择?

栏目: 数据库 · 发布时间: 7年前

内容简介:大数据快速发展的今天,很多人选择加入大数据学习的阵营,课时从哪里入手,如何选择合适的开发语言来做与大数据相关的事,这个话题应该困扰了不少大数据学习的新人,在面对五花八门的「开发语言」和「分析软件」时,自己该如何选择?先开门见山的给出结论:在职场中,学习任何一门技术,优先考虑工作需求本身,其次是职业发展所需,最后才是兴趣和好奇驱动。本末颠倒的话,不仅学习效率低下,而且还可能竹篮打水一场空,浪费时间成本。

大数据快速发展的今天,很多人选择加入大数据学习的阵营,课时从哪里入手,如何选择合适的开发语言来做与大数据相关的事,这个话题应该困扰了不少大数据学习的新人,在面对五花八门的「开发语言」和「分析软件」时,自己该如何选择?

对于学习大数据的新人,面对开发语言和分析软件时,该如何选择?

先开门见山的给出结论:在职场中,学习任何一门技术,优先考虑工作需求本身,其次是职业发展所需,最后才是兴趣和好奇驱动。本末颠倒的话,不仅学习效率低下,而且还可能竹篮打水一场空,浪费时间成本。

就拿我自己说事,读书期间在做「数学建模」时,因为不是计算机\软件相关的专业,唯一接触过的C语言(The C Programming Language)也只懂皮毛,所以每一次比赛为了去「收集数据、处理数据、分析数据和构建模型」,只能借助人力、Excel、Matlab和SPSS去操作。

当然,这些 工具 也足够去满足比赛的技能要求了,而且比赛的核心也不在于非要用更高级的编程语言,相反它们只是解决问题的一种形式罢了,关键在于要快速上手,要能解决需求痛点。

所以,在这样的一个情况之下,我并没有牺牲大量的学习成本,重新去提高 C语言 的编程能力,甚至是从0到1去学习 Java 语言。

临近秋招前,我开始去了解工业上常用的数据开发软件和开发语言,简直是琳琅满目,有 Python 、R、Eviews、SAS、SPSS、Tableau、水晶易表,一大堆。还有Java、C、C++、Hadoop各种词汇都浮现于眼前。

那时候就有点不知所措了,完全不知道该学什么,所以最后都选择接触了一遍,但结果真的是白费努力,浪费时间。

后面实习入职了一家互联网电商平台,部署了6~7个节点的分布式集群去做大数据计算,当时还以为自己终于能玩「大数据」了,可没想到最后用的最多的却是SQL\HQL、Excel、PPT、SPSS。而且它们已经足够解决日常的工作需求了。

所以说,学习任何一门技术,最好能在实际工作中有所使用,毕竟你的工作时间限制了你的学习精力,否则你很难去达到熟练的程度,更别提深入专研。

但不管如何,从行业的发展趋势上,很多新技能是必须要学习和掌握的,如果工作中真的没有机会去接触和使用的话,那就只能换一个更合适的平台。

当初我就是这样去考虑的,毕竟「大数据」的热潮已经全面铺开了,再不抓紧就只有看夕阳西下了。

所以,在后面几年的工作经历中,我都是在接触Hadoop、Spark相关的开源软件,从0到1的去学过Python、Java、Hive、MapReduce(基于Java实现)、 Shell 、Scala、Spark Streaming这些技能。

但是不管如何,这一切的新知识学习都是为了去适应工作环境,为了更快捷和更高效去解决工作需求的问题。同时因为工作中常常接触到,所以才能熟练起来,也才有机会去深入思考更底层的问题。

总而言之,我认为任何技术都是为了更好的服务于业务,业务是驱动技术发展的关键因素。

当然,从行业趋势上,我也打算在后期引入深度学习的计算框架,也会去考虑高并发的计算效率优化等等,但是回归本质都是为了提升业务模型的效果,解决更多业务需求痛点。

因此,要想去学习新技能,引入新技术,大前提是现有的业务需求已经得到有所解决,而且能够得到业务的支持和信任,这样在后期技术的推进上才能有时间去摸索,有机会去尝试。否则,你同样只能学个皮毛。

好了,讲述完了我自己,最后来谈谈大多数朋友的局面,这也是大家所关心的。

① 首先,作为数据小白,应该先学习什么数据技能?

毫无疑问,这时候你需要先把「入门」作为首要目标,不要过于浮躁,优先考虑去学习 SQL 、Excel、SPSS、PPT,这样你才有机会进入一个平台,能够接触数据,开始数据分析,尝试撰写报告。利用好这个跳板,你才能向「成长」进阶。

② 其次,作为业务人员(含分析师、产品经理),应该学习什么数据技能?

这时候你需要去进一步提高自己的专业技能,这样才有机会去更了解数据,训练数据感,写出更有深度的分析报告,甚至是以后的转岗。所以你需要一把利剑,我会优先推荐Python,节省以后学习其他语言(Java、Scala)的时间成本。

③ 另外,作为数据开发,应该先学习什么数据技能?

我的建议是,你先去做好一个Java工程师,掌握一定的专业技能,再来考虑从事大数据开发呢。

当然,这样的时间成本或许挺高,而且现阶段开源这套技术框架基本稳定和易上手了。

④ 最后,作为数据挖掘,应该先学习什么数据技能?

数据挖掘这个岗位,严格上区别于算法工程师,前者是一个偏业务、重数据、看实践的岗位,通俗易懂就是在探索海量数据中的经济价值。

所以,大部分数据挖掘工程师,首当其冲的痛点是需要思考一个问题:如何将以往熟练的这套技术和流程与「大数据」和「业务」相结合。

别想着利用Python\R去直连生产环境的数据做分析,很多平台都有堡垒机,也不允许本地环境与生产环境的直接交互。即使你load到了线上数据,但是只凭借DataFrame这样的操作,我认为很难去分析出什么数据价值,更别提能不能单机运算的效率。

所以,做数据挖掘工作时,除了思考模型的效果提升,也要考虑清楚自己的模型后期将如何去与线上业务结合,以及它的计算效率和自动化工作。

因此,我建议优先去考虑一下分布式集群的计算方式,如果平台缺乏团队和资金的话,要么考虑单独增加本机的计算资源和优化模型的计算效率,要么考虑换一个工作环境。

最后,对于大部分数据挖掘工程师来说,一定要加强SQL、Excel的使用,这是最基本,也是最重要的。

所讲的这些,是为了让大家正确的做数据。学习这些技能,是为了让大家轻松的做数据。归根到底,都是为了提高核心竞争力,花最短的时间,输出最大的价值,让自己更值钱!

在不久的将来,多智时代一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏 多智时代 ,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

500 Lines or Less

500 Lines or Less

Amy Brown、Michael DiBernardo / 2016-6-28 / USD 35.00

This book provides you with the chance to study how 26 experienced programmers think when they are building something new. The programs you will read about in this book were all written from scratch t......一起来看看 《500 Lines or Less》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器