Skip to content

大数据学习路线图

总体路径

基础准备(1个月)


存储与计算基础(2个月)


核心技术栈(3个月)


进阶与实战(3个月)


工程化与架构(持续)

阶段一:基础准备(1个月)

Linux & Shell

  • [ ] Linux 基础命令(文件、进程、网络)
  • [ ] Shell 脚本编写
  • [ ] Vim 基本使用
  • [ ] SSH、SCP、rsync

编程语言

  • [ ] Java:集合、多线程、JVM 基础(Hadoop/Spark 核心语言)
  • [ ] Python:数据处理、PySpark(数据分析首选)
  • [ ] SQL:窗口函数、子查询、JOIN 优化

网络与存储基础

  • [ ] TCP/IP 基础
  • [ ] 磁盘 I/O 原理(顺序读写 vs 随机读写)
  • [ ] 分布式系统基础概念(CAP、一致性、分区容错)

阶段二:存储与计算基础(2个月)

第1个月:Hadoop 生态基础

技术学习重点预计时间
HDFS架构、读写流程、HA 配置、常用命令1周
YARN架构、调度器、资源配置3天
MapReduce原理、编程模型、Shuffle 机制1周
HiveHiveQL、分区、存储格式、调优1.5周
Zookeeper数据模型、Watch 机制、选主3天

实战项目:搭建伪分布式 Hadoop 集群,用 Hive 做一个简单的用户行为分析。

第2个月:Spark 入门

技术学习重点预计时间
Spark CoreRDD、算子、DAG、Stage 划分1周
Spark SQLDataFrame、Dataset、SQL 接口1周
Spark StreamingStructured Streaming、Watermark1周
Kafka架构、生产消费、命令行操作1周

实战项目:Kafka + Spark Streaming 实时统计网站 PV/UV。


阶段三:核心技术栈(3个月)

技术学习重点预计时间
Flink CoreDataStream API、时间语义、窗口1.5周
Flink 状态State Backend、Checkpoint、精确一次1周
Flink SQLDDL、流式查询、维表 Join1.5周

实战项目:Flink 实时数仓,Kafka → Flink → ClickHouse 实时报表。

第2个月:存储进阶

技术学习重点预计时间
HBase数据模型、RowKey 设计、Java API1周
ClickHouseMergeTree 引擎、SQL 优化、物化视图1周
Delta LakeACID 事务、Merge、时间旅行1周
Iceberg隐藏分区、Schema 演进、多引擎1周

第3个月:平台与工程化

技术学习重点预计时间
AirflowDAG 编写、Operator、调度策略1周
Doris数据模型、导入方式、查询优化1周
Trino连接器配置、联邦查询3天
监控Prometheus + Grafana 搭建1周

阶段四:进阶与实战(3个月)

完整数仓项目

项目目标:搭建一个完整的电商数仓

数据源(MySQL 业务库)

    ▼ Sqoop / DataX(离线)/ Kafka(实时)


ODS 层(HDFS + Hive 外部表)

    ▼ Spark SQL / Flink SQL


DWD 层(数据清洗、标准化)

    ▼ Spark SQL


DWS 层(轻度聚合)

    ▼ Spark SQL


ADS 层(应用数据)

    ▼ ClickHouse / Doris


BI 报表 / API

涉及技术:Hadoop + Hive + Spark + Kafka + Flink + ClickHouse + Airflow

实时数仓项目

MySQL CDC(Debezium)


Kafka(原始数据)

    ▼ Flink SQL


Kafka(清洗后数据)

    ▼ Flink SQL


Doris(实时 OLAP)


实时大屏

技术深度路线

深入 Spark

  • [ ] Spark 内存管理(Tungsten)
  • [ ] Catalyst 优化器原理
  • [ ] Spark Shuffle 机制
  • [ ] AQE 自适应查询执行
  • [ ] Spark 源码阅读
  • [ ] Flink 内存模型
  • [ ] Checkpoint 原理(Chandy-Lamport)
  • [ ] RocksDB State Backend 调优
  • [ ] Flink 网络栈(Credit-based 流控)
  • [ ] Flink 源码阅读

深入 Kafka

  • [ ] Kafka 存储原理(Log Segment)
  • [ ] Kafka 副本同步机制(ISR)
  • [ ] Kafka 事务与精确一次
  • [ ] Kafka 性能调优
  • [ ] Kafka 源码阅读

推荐学习资源

书籍

书名适合阶段
《Hadoop 权威指南》入门
《Spark 快速大数据分析》入门
《Flink 内核原理与实现》进阶
《数据密集型应用系统设计》架构
《流式系统》进阶

官方文档

实践平台

  • 本地:Docker Compose 搭建完整环境
  • 云端:阿里云 EMR、AWS EMR(免费试用)
  • 数据集TPC-HNYC Taxi

面试高频考点

Spark

  • RDD、DataFrame、Dataset 区别
  • Spark 宽依赖与窄依赖
  • Spark Shuffle 原理
  • Spark 内存管理(堆内/堆外)
  • 数据倾斜解决方案
  • AQE 原理
  • Flink 与 Spark Streaming 区别
  • Flink 时间语义(事件时间 vs 处理时间)
  • Watermark 原理
  • Checkpoint 原理(Chandy-Lamport)
  • 精确一次语义实现
  • 状态后端选择

Kafka

  • Kafka 高吞吐原理(顺序写、零拷贝、批量)
  • Kafka 副本机制(ISR、HW、LEO)
  • Kafka 消费者组 Rebalance
  • Kafka 精确一次语义
  • Kafka 消息丢失场景

HDFS

  • HDFS 读写流程
  • NameNode 内存结构
  • HDFS HA 原理
  • 小文件问题解决方案

学习建议

理论与实践并重。每学一个技术,都要动手搭建环境、跑通示例代码。大数据技术的坑很多,只有实际操作才能真正掌握。

最后更新:

本站内容由 褚成志 整理编写,仅供学习参考