近三年,大数据这个词出现的频次非常高,不仅纳入各大互联网巨头公司的战略规划中,同时也在国家的政府报告中多次提及,大数据已无疑成为当今时代的新宠。大数据给大多数人的感觉是,专业性强,门槛高,完全属于“高大上”的技术。好奇的人或许会通过网络了解一些概念,而有一些人则看到了大数据带来的机遇,投入大数据学习的洪流当中,投身大数据行业为自己带来利益。经历“坎坷”的学习大数据历程后,在求学之路上有哪些具体容易掉入的“坑”?让我们一一盘点下。

我们一起经历的那些坑

大多的初学者在入门初期,基本是在网上各种社区“大海捞针”的到处知乎、百度:

“大数据学习路径是怎样的?”

“学生党,会java,只有一台电脑!!如何学习大数据开发?”

“ 语言是学R还是Python?”

“我没时间有没钱,自学能学的会吗?”

“现在大数据开发挺火的,谁知道大数据开发学习机构哪家靠谱?”

“零基础学习大数据,想成为大数据开发工程师,请问该如何入门,有没有推荐网络教程,书籍或者大牛博客?”

自学过程中走过很多弯路,比如环境搭建,总会遇到各种奇葩问题,找不到答案;比如网上扑来各种资料不知道怎么分辨质量,也不知道如何科学利用,很痛苦又很困惑,毫无成就感,走了许多冤枉路,踩坑无数……

第一:花太多的时间在语言学习上

很多人因为是零基础,所以先从语言着手,很多学java的大佬不仅会让你学语法基础、数据结构、核心编程,还推荐你把J2EE、HTML5、Struts2、SpringMVC、Mybatis、Hibernate也学习一下,天了噜,这些知识只有在大数据可视化阶段才能用到,如果要学这么多,干嘛还要来学大数据呢,直接做前后端“攻城狮”不就好了嘛。事实上,你只需要知道一门语言的语法基础、数据结构和核心编程就ok了,而且语言的功夫并不是一朝一夕的,好在大数据生态架构所涉及编程的成分不算很多,更多时候需要你从业务、规模、产品设计、应用场景等多个方面来考虑和解决问题,所以等你进入这个领域后再慢慢修炼自己语言的内功也不迟。如果你是新手,建议你从python学起,代码简单,容易上手。

第二:Linux学的太深

不可否认大数据的架构是基于Linux基础上的,但是你要明白,Linux只是一个系统,说白了还是在为大数据服务,你只要能够运用基本的Linux知识将大数据生态系统搭建起来就可以,但是基本命令一定要通过多多练习熟练掌握。而且在大型公司作业中,系统搭建都是通过跑脚本,并且未来云主机的普及Linux环境都无需搭建啦。

第三:过度依靠书籍

很多书籍是比较经典,例如人人皆知的Hadoop权威指南,但是作为初学者,光看书是不行的,抓不到学习的重点。另外技术这东西一定要多多实践,而且现在有很多书籍,讨论的知识点非常的浅,一般也比真正企业中的技术落后。毕竟,这个时代技术更新太快。

第四:实验平台搭建

很多人在学习过程中,花费太多时间在实验环境搭建上。网上下载一些软件包因为版本更新或其他原因,很快就不适用了;而且实验过程中经常遇到一些环境问题,因为版本和环境差别很大,虽然只是很小的问题,但很难搜得到解决方法。深深的受过伤。

那到底该以什么样“姿势”学习大数据?

学习大数据开发的正确姿势

打好基础,做好多动手锻炼的准备

有些人说的天花乱转,实际动手能力却极差无比。有项目经验,自己或工作的相关项目,真正动手实现一些想法,沉淀一些思考,比如博客,github项目等,将学习过程和实践过程记录下来是最好的总结方式。

首先是语言基础。如果你有java基础,并且java还不错,学大数据是顺理成章的方向。如果java是零基础那就学python。发展到后期,个人感觉大数据跟人工智能平起平坐。但是光python是吃不住人工智能的,还要学其他的,大数据主要语言是java。不管大数据还是人工智能想学到精都很难。建议入门选python。

其次是Hadoop基础,先让Hadoop跑起来,并了解它们的原理,学习分布式存储和计算的思想。

然后逐步学习MapReduce编程开发、Hive数据仓库工具、开源数据库HBase、Spark生态体系、Storm实时开发。

工欲善其事必先利其器,要选好平台工具

有些人问只有一台电脑怎么跑实验环境?用虚拟机是可以,但是电脑什么配置?有没有16G?cpu几核的?单cpu还是多cpu?反正我搭建hadoop集群,开三个虚拟机就卡的没朋友。o(╯□╰)o

花几百元买内存条,扩内存,开虚拟机,不如尝试下使用公有云的大数据服务。

华为公有云上推出了企业智能EI大数据服务,最近价格全面下调,最小规格集群降低至¥1.99/小时起,从头到尾做一个大型实验,一两百块也就搞定了。学习真正的大数据真的很烧钱,硬件非常贵。但是借助于公有云按需付费,可以极大的降低成本,要善于使用大企业提供的这种福利。

好的学习习惯,要坚持,一定要有毅力

制定学习目标,列好学习计划,按照计划执行,加入一些学习社群,完成学习给自己一些小奖励。如果有条件,选择一个网上付费学习课程进行系统的,有序的学习,这样可以提高学习效率,遇到问题也可以及时解决。

最后,一点小建议

对于应届毕业生

夯实基础很重要,大学期间一般都开设数据结构、算法基础、操作系统、编译原理、计算机网络等课程。这些课程一定要好好学,基础扎实后学其他东西问题都不大,而且许多大公司面试都会问这些相关内容。如果你准备从事IT行业,这些东西将对你受益无穷。

对有工作经验想转行的同学

对有工作经验想转行的同学,主要考察三个方面,一是基础,二是学习能力,三是解决问题的能力。基础很好考察,给几道笔试题做完基本上就知道什么水平了。学习能力还是非常重要的,毕竟写Javaweb和写Mapreduce还是不一样的。

大数据处理技术目前都有好多种,而且企业用的时候也不单单使用一种,行业发展也很快,要时刻学习新的东西并用到实践中。最后是解决问题能力,在数据开发中尤为重要,我们通常会遇到很多数据问题,比如说最后产生的报表数据对不上,一般来说一份最终的数据往往来源于很多原始数据,中间又经过了n多处理。要求你对数据敏感,并能把握问题的本质,追根溯源,在尽可能短的时间里解决问题。

小福利  

浙江华为ICT学堂大数据老司机

倾情整理的学习大礼包

免费送!免费送!!

学习大礼包包含:

4大案例分析腾讯美团等公司大数据实战应用

6份学习资料入门Elasticsearch

8本大数据学习必看电子书

11节Java精选课件

16份Hive、Hbase、Hadoop等学习笔记

50+BAT等企业面试亲历者的面试经验分享

')}