大数据培训课程提纲
课程总览
- 课程名称: 大数据工程师实战训练营
- 培训目标:
- 掌握大数据生态圈的核心技术栈(Hadoop, Spark, Flink, Hive, HBase等)。
- 熟练使用Linux操作系统和Shell脚本进行日常运维。
- 精通Java/Scala编程语言,具备良好的编程规范。
- 理解并能设计分布式数据存储和计算架构。
- 具备从数据采集、清洗、处理、存储到分析、可视化的完整项目经验。
- 掌握大数据平台性能调优和故障排查的基本方法。
- 目标学员:
- Java/Python开发人员,希望转向大数据领域。
- 数据分析师,希望提升技术能力,成为数据工程师。
- 运维人员,希望掌握大数据平台的运维技能。
- 计算机相关专业应届毕业生。
- 课程周期: 约12-16周(可根据实际情况调整)
- 核心技能: Linux, Java/Scala, Hadoop, Spark, Flink, Hive, HBase, Kafka, Zookeeper, 数据仓库, 数据湖, 实时计算
大数据基础与Linux环境
目标: 建立对大数据的宏观认知,掌握大数据开发的基础环境——Linux。
-
第1周:大数据导论与职业规划
- 什么是大数据?4V特征(Volume, Velocity, Variety, Value)
- 大数据的应用场景与典型案例(电商、金融、交通、推荐系统等)
- 大数据技术发展历程与生态圈介绍
- 大数据工程师岗位技能要求与职业发展路径
- 课程整体介绍与学习规划
-
第2周:Linux操作系统精讲
- Linux简介、安装与基本操作
- 文件系统与常用命令(文件/目录操作、文本处理grep/sed/awk)
- 用户、权限与组管理
- 网络配置与管理(ifconfig, ping, ssh, scp)
- 软件安装(yum/apt)
- Shell脚本编程基础(变量、流程控制、函数)
Java编程与Hadoop生态基础
目标: 掌握大数据开发的核心语言Java,并学习Hadoop生态系统的基础组件。
-
第3-4周:Java核心编程强化
- Java基础语法回顾与重点(集合、IO、多线程)
- Java 8新特性(Lambda表达式、Stream API、Optional)
- Maven项目管理工具
- 常用设计模式(单例、工厂、代理等)
- 单元测试与代码规范
-
第5-6周:Hadoop分布式文件系统
- Hadoop架构与核心组件介绍
- HDFS概念、架构(NameNode, DataNode)、工作机制
- HDFS Shell常用命令操作
- HDFS Java API编程
- HDFS的高可用性配置
-
第7周:Hadoop分布式计算框架MapReduce
- MapReduce核心思想与编程模型
- MapReduce工作流程与执行原理
- 自定义Mapper与Reducer开发
- Combiner与Partitioner
- MapReduce实战案例(WordCount, 数据去重, 表连接)
数据仓库与离线数仓实战
目标: 掌握数据仓库的核心理论与工具,能够搭建离线数据仓库并完成ETL任务。
-
第8周:数据仓库理论
- 数据仓库概念与OLAP/OLTP区别
- 分层架构理论(ODS -> DWD -> DWS -> ADS)
- 维度建模(星型模型、雪花模型)
- 事实表与维度表设计
-
第9周:Hive数据仓库
- Hive架构与原理(Metastore, Driver, Execution Engine)
- Hive数据类型、表管理(内部表/外部表、分区表、分桶表)
- HiveQL(DDL, DML, 查询优化)
- Hive自定义函数开发(UDF, UDAF)
- Hive与HBase集成
-
第10周:数据采集工具Sqoop & Flume
- Sqoop: 关系型数据库与Hadoop数据迁移
全量导入/导出、增量导入
- Flume: 日志数据采集
- Flume架构(Source, Channel, Sink)
- 常用Source/Channel/Sink配置与组合
- Flume Agent的串联与负载均衡
- Sqoop: 关系型数据库与Hadoop数据迁移
实时计算与消息队列
目标: 掌握实时数据处理的核心理念与主流技术栈。
-
第11周:消息队列Kafka
- Kafka核心概念(Topic, Partition, Producer, Consumer, Broker)
- Kafka架构与高可用机制
- Kafka生产者与消费者API编程
- Kafka集群管理与监控
-
第12周:实时计算框架Spark Core & Spark SQL
- Spark生态系统介绍(Spark Core, Spark SQL, Spark Streaming, MLlib, GraphX)
- Spark RDD编程基础(Transformation, Action)
- Spark运行架构(Driver, Executor, DAG, Stage)
- Spark SQL与DataFrame/Dataset API
- Spark与Hive集成查询
-
第13周:实时计算框架Spark Structured Streaming
- Structured Streaming核心概念(流式DataFrame)
- 基于事件时间的处理与水印
- 输出模式(Append, Complete, Update)
- Kafka + Spark Structured Streaming实时ETL实战
NoSQL数据库与高级主题
目标: 掌握NoSQL数据库的原理与应用,并了解大数据领域的其他高级技术。
-
第14周:NoSQL数据库HBase
- HBase数据模型(RowKey, Column Family, Column, Timestamp)
- HBase架构与存储原理(HDFS上的文件)
- HBase Shell操作与Java API
- HBase与MapReduce/Spark集成
-
第15周:实时计算框架Flink入门
- Flink核心特性(流批一体、事件时间、状态管理)
- Flink DataStream API编程
- Flink Table API & SQL
- Flink + Kafka实时应用场景对比
-
第16周:大数据平台运维与调优
- YARN资源调度与管理
- JVM内存调优基础
- Spark/Flink作业性能调优参数
- 常见故障排查思路与工具
- 数据湖技术栈介绍
项目实战与面试指导
目标: 综合运用所学知识,完成一个完整的大数据项目,并进行面试准备。
-
第17-18周:综合项目实战
- 电商离线数据分析平台
- 技术栈: Sqoop, Flume, Kafka, HDFS, Hive, Spark SQL, Superset/QuickBI
- 搭建用户行为日志分析系统,完成ODS->DWD->DWS->ADS数据分层,制作核心业务报表(GMV、用户留存、漏斗分析等)。
- 实时推荐系统
- 技术栈: Kafka, Spark Streaming/Flink, Redis, HBase
- 构建基于用户实时行为的个性化推荐引擎,实现实时特征计算和推荐结果更新。
- 要求: 分组进行,完成需求分析、技术选型、架构设计、编码实现、部署上线、文档撰写。
- 电商离线数据分析平台
-
第19周:大数据面试指南与复盘
- 简历优化与项目亮点提炼
- 核心知识点面试题精讲(Hadoop, Spark, Kafka等)
- 算法题与SQL题实战演练
- 项目面试技巧与常见问题
- 行业趋势与前沿技术探讨
教学方式与考核
-
教学方式:
- 理论讲解: PPT + 代码演示,清晰阐述核心概念。
- 代码实战: 每个知识点都配有大量动手编码环节,讲师带领学生一起完成。
- 课后作业: 巩固所学知识,培养独立解决问题的能力。
- 项目驱动: 以真实企业项目为背景,贯穿整个学习过程。
- 答疑解惑: 定期答疑,建立学习社群,促进学生交流。
-
考核方式:
- 平时成绩(30%): 课堂出勤、作业完成情况、课堂互动。
- 阶段测验(20%): 每个模块结束后进行闭卷或开卷测试。
- 项目实战(50%): 最终项目完成度、代码质量、报告撰写、团队协作和答辩表现。
这份提纲提供了一个完整的大数据学习路径,可以根据学员的具体背景和培训机构的侧重点进行灵活调整。
