作为一个较新领域,大数据每年都会有新技术不断涌现。这里结合我个人学习经历,梳理一个大致的学习路线,作为参考以及后续学习的方向。

大数据的学习路线主要分为两大部分:专业基础、大数据组件。

1 专业基础

基础技术大致分为6个方向:Java 方向、Web 方向、数据库方向、Python 方向、Linux 方向、计算机基础方向。

1.1 Java 方向

Java 是大数据领域常用的编程语言之一,大数据组件基本上都是用 Java 或者是它的衍生编程语言(Scala)所编写。

方向所含技能:Java SE、Maven、SpringBoot、Scala

1.2 Web 方向

Web 开发也是大数据领域十分重要的的一部分,常常用于大数据的数据可视化方面。

方向所含技能:HTML、CSS、JavaScript、Vue

1.3 数据库方向

数据库用于进行数据的存储管理,是大数据不可或缺的一部分。

方向所含技能:MySQL、Redis、ClickHouse

1.4 Python 方向

Python 也是大数据领域常用的编程语言之一,常用大数据的处理、获取、机器学习等方面。

方向所含技能:Python、Pandas、Numpy、Matplotlib、Python 爬虫

1.5 Linux 方向

Linux 是一类操作系统,大数据平台和程序基本都是部署在 Linux 上。

方向所含技能:Linux 命令行基本使用、Linux 配置与管理、Shell 编程

1.6 计算机基础方向

计算机基础是大数据学习的基石,同时也有助于进一步学习大数据相关技能。

方向所含技能:数据结构与算法、计算机网络基础、计算机操作系统、计算机编译原理

2 大数据组件

大数据技术架构层出不穷,在实际生产当中所需要的的组件也各不相同。这里罗列一些常用的组件。

2.1 Hadoop

Hadoop 是大数据组件的核心架构,主要解决海量数据的存储与计算问题,包括 HDFS、MapReduce、Yarn 三大组件。

2.2 数据采集(传输)

用于数据采集(传输)的技术主要有:Sqoop、Flume、kafka。

2.3 数据存储

用于数据存储的技术主要有:HDFS、HBase、Redis、ClickHouse。

2.4 数据计算

用于数据计算的技术主要有:MapReduce、Hive、Spark、Flink。

2.5 资源管理

用于资源管理的技术主要有:Yarn、Zookeeper。

2.6 学习顺序

Hadoop(HDFS、MapReduce、Yarn)、Zookeeper、HBase、Hive、(HBase、)Sqoop、Kafka、Flume、Spark、Flink。

3 总结

大数据涉及的技术有很多,不可能个个都熟练掌握。可以根据实际需求和个人偏向,侧重于一个或者是若干个技术,在该技术领域学深、学广。其他的技术,可以只掌握基本的了解和使用。另外,还要有着不断学习的心态,去学习新技术、新思路。