大数据在国内的落地,大致是从2013年左右开始,而随后这几年的发展,可以说是保持着比较快的速度在增长,从BAT为首的互联网大厂开始,蔓延到各个行业的大小企业当中。很多人也看到了大数据的前景,想学大数据,那么大数据主要是学啥?怎么开始学?下面我们来具体讲一讲。
首先,想学大数据,建议大家先对大数据做一个基本的行业背景了解,大数据是什么,大数据做什么,大数据应用场景有哪些,大数据主要用到哪些技术……等等这些问题,需要有一个基本的认识。
大数据主要是学啥,我们可以从从基础开始,给大家一条学习路线做参考——
1、Java基础
掌握面向对象编程思想,面向对象编程,主流的SSM、Spring Boot等开源框架最好也能掌握。
2、MySQL
MySQL数据库掌握关系型数据库的原理,主要是各种复杂SQL语句的编写,这对于后期学Hive数仓的HQL也有帮助。
3、Linux
因为大数据相关软件都是在Linux上运行的,所以Linux也是必学的,系统命名、Shell脚本等,必须掌握。
4、Hadoop框架
初学Hadoop,从核心组件HDFS、MapReduce和Yarn开始,这三个组件是重点,也是难点。
5、数据仓库Hive
有SQL语法的基础,学习Hive并不难。Hive的底层是MapReduce,你只要写HQL就能完成MapReduce程序执行。
6、数据采集Sqoop/Flume
Sqoop主要用于把MySQL里的数据导入到Hadoop,是个数据导入导出的工具。
Flume是一个分布式的海量日志采集和传输框架,可以实时的从网络协议、消息系统、文件系统采集日志,并传输到HDFS上。
7、内存计算引擎Spark
Spark的出现,本身就是用来弥补基于MapReduce处理数据速度上的缺点,Spark把数据装载到内存中计算,实现了准实时的数据计算。
Spark主要掌握的知识点包括:
Spark的运行原理与架构,Spark的各种应用场景;基于Spark RDD的各种算子的使用;Spark Streaming针对流处理的底层原理;Spark SQL对各种数据源处理;Spark机器学习算法库等。
8、数据传输Kafka
目前Flume+Kafka,在实时流式日志的处理非常常见,后面再通过Spark Streaming等流式处理技术,就可完成日志的实时解析和应用。
9、任务调度Oozie/Azkaban
不仅仅是分析任务,数据采集、数据交换同样是一个个的任务。这些任务中,有的是定时触发,有点则需要依赖其他任务来触发。调度监控系统是整个数据平台的中枢系统,类似于AppMaster,负责分配和监控任务。
10、实时数据计算引擎
对于需要绝对实时的业务场景,用的比较多的是Storm,对于其他准实时的业务场景,可以是Storm,也可以是Spark Streaming,简单业务场景Kafka Streams也能搞定,当然现在最火的是Flink。
关于大数据主要是学啥,怎么开始学,以上就是给到大家的一些学习建议了。大数据技术体系庞杂,从零开始学习,想要高效地完成,那就一定要做好系统的课程规划才行。成都加米谷大数据,专业
大数据培训机构,大数据开发、大数据分析,零基础班本月正在招生中,课程大纲及试听课程可联系客服领取!