很多人了解到大数据发展的前景和空间很好,适合发展自己的职业生涯,那么零基础的新手想转行学习大数据,可以按照什么样的流程来安排学习呢?
1、首先,0基础入门大数据,先从一门编程语言入手。如果你想往大数据开发方向走,学习Java,想学数据分析或者数据挖掘,那就选Python。
为什么一开始的入门要学习编程,要这样安排?
这就跟问学习为什么要学会拿画笔、学习音乐为什么要练发声一样,因为它是基础啊!
学习大数据,不能只看数据,不能只设计算法,关键是要通过编程把算法来实现,看算法是否对数据有一定的效果。如果不学一门语言,你就不能和计算机对话,就没有办法让计算机来处理数据,也就不能证明你的想法和算法的有效性和准确性。
既然编程是基础,重要性就不用多说了吧,一定要学好哦。
2、编程语言学习之后,着手学习什么呢?大数据基础,Linux、Maven基础
why?加米谷知道肯定会有人问为什么。因为Linux 作为操作系统,本身是为了管理内存,调度进程,处理网络协议栈等。大数据的发展是基于开源软件的平台,Linux占据优势, 大数据的分布式集群( Hadoop,Spark )都是搭建在多台 Linux 系统上,对集群的执行命令都是在 Linux 终端窗口输入的。
当然你也可以把这部分内容放在编程语之前学习也是可以滴!
3、then,学啥子呢?可以开Hadoop体系的学习啦!
大数据比较通用的平台是基于Hadoop+Saprk ,那为什么不先学习Spark呢,因为学习Spark之前需要先学习Scala呀,那怎么不先学习Scala呀,你的Java学牢实了吗,练手试过没有呀?
好了,上面只是加米谷猜测一些喜欢刨根问底(其实是杠)的同学可能会问的一些问题,正传,现在为什么可以进行Hadoop的学习呢?
0基础的同学经过前面Linux、Java等一系列基础的学习,时间都已经过去三个月啦,再不学个大数据平台,加米谷估计很多同学会心慌啦!
除了这个原因,其实还因为大数据平台Hadoop就是采用Java语言实现的,在Hadoop下采用Java语言也是一个比较常见的选择。Java学习完成后,进一步学习Hadoop平台的相关知识,最后在Hadoop平台下采用Java完成任务开发。这样就可以阶段性的两部分内容联系起来,既学习了理论知识,也算实践上手训练了一波。
Hadoop是目前被广泛使用的大数据平台,是目前比较常见的大数据支撑性平台,包含的内容比较多,加米谷提醒大家一定要好好学习哦!
4、然后,你们是不是在学完Hadoop后就想立即进入Spark的学习了呢?别着急,大数据技术的学习还需要掌握Scala,为什么呢,Spark要用啊。
Hadoop学习之后,还得学习Spark,它是一种与 Hadoop 相似的开源集群计算环境,拥有Hadoop MapReduce所具有的优点,Spark是MapReduce的替代方案,而且兼容HDFS、Hive,可融入Hadoop的生态系统,以弥补MapReduce的不足。这是大数据技术学习的两大重点。
但是学习Spark之前,还要学习一门语言,叫Scala。Scala在大数据方向不是偏科研的,是非常多地方都会用的,比如说spark。
不过在学习Scala之前,你最好先对Java和任一函数式语言(Haskell,SML等)有一定程度理解以后,尤其是能够在编程范式之间随意切换以后,再去了解Scala。
Scala的好处:
JVM base, 全面兼容Java. 对于Java基础扎实的同学, 学习Scala是很友好的;
在常用工具中, Flume和Hadoop由java编写, Spark和Kafka由Scala编写。
Scala作为一门较新的语言,它的社区是比较混乱的。Scala社区里有很多不同的尝试,以Java一支和Haskell一支为主,此外还有使actor和reactive programming一派的。你如果连一个已经成熟的编程范式都没有掌握,我觉得很大可能你会吃不消Scala。
对于0基础的同学首先安排大家学习Java编程,等到Java编程基础良好后,进行Hadoop体系的学习,再安排学习Scala,然后在学习Spark、kafka浙西,这样的顺序是比较科学合理的,大家也更容易掌握。
5、这步真的可以学习Spark啦!
Spark的重要性已经在前文中说过了,那就不多说了,大家撸起袖子,认真学起来吧!
6、来个真实项目实战练手
市场上主流的大数据技术都学习过一遍了,怎么能不来个真实项目练练手,在实战环境中去练习,看看自己掌握的程度如何,技术之间的衔接和融合运动卡不卡壳,存在哪些问题需要解决等等。
在这里还是要推荐下我自己建的大数据学习交流群:943791324,群里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据软件开发相关的),包括我自己整理的一份最新的大数据进阶资料和高级开发教程,欢迎进阶中和进想深入大数据的小伙伴加入。
大数据是什么
大数据 = 编程技巧 + 数据结构和算法 + 分析能力 + 数据库技能 + 数学 + 机器学习 + NLP + OS + 密码学 + 并行编程
不要看他涵盖的领域非常多,我们作为一个普通人,只要学懂并精于某一个模块,就足以有自己的立身之地。
学习可分为以几个阶段:
阶段一:java基础
java是目前使用最为广泛的编程语言,它具有的众多特性,特别适合作为大数据应用的开发语言。如果您有一定的java基础,可以忽略此步,如果您没有接触过编程语言,也不要太担心,可以从网站 W3C 上一步一步来,也可以在网上找到一些比较好的博客,重要的是要有恒心,想想迎娶白富美,走向人生巅峰,这点苦是个啥。
下面给出java我们到底学什么:
1、Java编程语言(新版)
2、Java进阶之设计模式
3、J2SE核心开发实战
4、JDK 核心 API
5、JDBC 入门教程
6、java 8 新特性指南
阶段二:linux基础
在学习之前需要先掌握基本的数据库知识。比如 MySQL、MongoDB、Redis,关于这些的学习,W3C值得你信赖。大家访问一下就知道了,千万不要爱的不能自拔。
下面给出linux我们到底学什么:
1、Linux 基础入门(新版)
2、Vim编辑器
3、Git 实战教程
4、MySQL 基础课程
5、MongoDB 基础教程
6、Redis基础教程
阶段三:Scala基础
还是那句话,W3C值得你信赖,千万不要爱的不能自拔。(PS:说实话,这一部分我现在还在学习的初级阶段,如果有哪位大佬看到这篇分享,可以好好指点我一下,先在此谢过)
下面给出scala我们到底学什么:
1、Scala 开发教程
2、Scala 专题教程 - Case Class和模式匹配
3、Scala 专题教程 - 隐式变换和隐式参数
4、Scala 专题教程 - 抽象成员
5、Scala 专题教程 - Extractor
阶段四:Hadoop技术模块
Hadoop 是一款支持数据密集型分布式应用并以 Apache 2.0 许可协议发布的开源软件框架,它能搭建大型数据仓库,PB 级别数据的存储、处理、分析、统计等业务。编程语言你可以选,但 Hadoop 一定是大数据必学内容。要学习hadoop,我们首先的了解一下他的生态系统有哪些,先从整体上把控他,当然要记得W3C哦!
下面给出hadoop我们到底学什么:
1、Hadoop入门进阶课程
2、Hadoop部署及管理
3、HBASE 教程
4、Hadoop 分布式文件系统--导入和导出数据
5、使用 Flume 收集数据
好了,先分享大数据学习的这四个阶段,如果真的想学习的大佬,就做好被折磨的准备,然后征服它,驾驭它。想学习好大数据,前端,Python 可以关注公众号【程序员大牛】 有视频资源分享一起学习
领取专属 10元无门槛券
私享最新 技术干货