小白如何学习大数据?需要多长时间
近年来,大数据、云计算、区块链、人工智能等技术风靡全球,非常火热,大数据学习成了很多人的首先,但面对大数据学习,是选择自学,还是参加大数据的培训,成了很多人考虑的问题。
面对社会的压力,生活的压力,很多人员不满足于现状的工作状态,亦或是想要提高自己的能力,追求更完美的生活状态,亦或者是对于大数据技术有着热情的追求,不管出于什么样的原因,不得承认,大数据技术是目前比较热门的互联网技术之一。由此,有很多小白想学习,却找不到如何入门,怎么学习,以下个人简单的解答一下,仅供参考!
在这里还是要推荐下我自己建的大数据学习交流群:199427210,群里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据软件开发相关的),包括我自己整理的一份最新的大数据进阶资料和高级开发教程,欢迎进阶中和进想深入大数据的小伙伴加入。
大数据涉及到的组件技术非常的多,需要我们逐一学习。各个组件之间相互配合,熟练运用,还是需要下苦功夫的。
那么对于各个组件之间,在处理大数据项目流程中,是该怎么分配的呢,是如何整合完成整个项目的呢?可以看下下面的图帮咱咱们解答疑惑。
大数据目前发展更新迭代比较快,从Hadoop,spark,storm到最新的flink,太多的东西需要去学习,需要追随IT技术的发展,可能会让我们产生一种挫败感,刚刚学会Hadoop,又有新的技术产生,还需要去学习。其实不断地学习肯定是需要的!但是工作中我觉得无需纠结谁会替代谁,要有大局观和生态意识,一切一应用场景出发,以公司项目出发。只要能够完成,就是好的,无可替代的。
一、学习大数据需要的基础
1、java SE、EE(SSM)
90%的大数据框架都是Java写的
2、MySQL
SQL on Hadoop
3、Linux
大数据的框架安装在Linux操作系统上
在有了上面的技术基础支撑之后,便可以开始我们的大数据开发工程师的锻造之旅了,可以根据以下三个大的方面进行学习,当然了,中间需要穿插一些项目练习,将理论和实战相关联才能成长的很快!
二、大数据技术需要学什么
1、大数据离线分析
一般处理T+1数据(T:可能是1天、一周、一个月、一年)
a、Hadoop :一般不选用新版本,踩坑难解决
(common、HDES、MapReduce、YARN)
环境搭建、处理数据的思想
b、Hive:大数据的数据仓库
经过写SQL对数据进行操作,类似于MySQL数据库的sql
c、HBase:基于HDFS的NOSQL数据库
面向列存储
d、协作框架:
sqoop(桥梁:HDFS《==》RDBMS)
flume:搜集日志文件中的信息
e、调度框架
anzkaban
了解:crotab(Linux自带)
zeus(Alibaba)
Oozie(cloudera)
f、前沿框架扩展:
kylin、impala、ElasticSearch(ES)
2、大数据实时分析
以spark框架为主
Scala:OOP(面向对象程序设计)+FP(函数是程序设计)
sparkCore:类比MapReduce
sparkSQL:类比hive
sparkStreaming:实时数据处理
kafka:消息队列
前沿框架扩展:flink
阿里巴巴:blink
3、大数据机器学习
spark MLlib:机器学习库
pyspark编程:Python和spark的结合
以上就是大数据的学习路线,有兴趣的朋友,也可以了解下人工智能和物联网。