PySpark系统课程简介

本课程以PySpark技术栈为核心,结合理论讲解实战演练,全面覆盖Spark核心模块(SparkCore、SparkSQL)、分布式计算原理、集群部署及优化技巧,并融入企业级案例与最新特性(如Spark 3.0 AQE),助力学员从零进阶为大数据处理与分析的实战型人才。


课程模块与核心内容

1. 导学视频(入门指引)

  • PySpark导学:课程全景概览,明确学习路径与目标。
  • 学习资源:提供扩展课程与工具链接(.url文件),辅助学员拓展知识边界。

2. 第一部分:Spark基础入门

  • 第一章(理论基石)
    • Spark核心概念:发展历程、与Hadoop对比、四大特性(速度、易用、通用、兼容性)。
    • 架构解析:Driver/Executor角色、运行模式(Local/Standalone/YARN)及模块划分(Core/SQL/Streaming)。
  • 第二章至第五章(环境实战)
    • 多模式部署
      • Local模式:Anaconda环境配置、单机任务测试。
      • Standalone集群:主从架构搭建、任务提交与Web UI监控。
      • HA高可用:基于Zookeeper的容错机制。
      • Spark on YARN:Client/Cluster模式详解与资源调度对比。
    • 原理剖析:任务提交流程(ResourceManager、NodeManager协作)、Spark与YARN角色映射。
  • 第六至第八章(PySpark生态)
    • PySpark环境配置:本地与远程解释器设置(PyCharm集成)。
    • 编程入门:SparkContext入口、WordCount代码逐行解析、分布式执行原理(Py4J桥接机制)。

3. 第二部分:SparkCore(核心编程)

  • 第一章(RDD核心)
    • RDD五大特性(分区、计算链、依赖、分区器、本地性),通过WordCase实战理解数据流转。
  • 第二章(算子大全)
    • 转换算子map/flatMap/reduceByKey数据变形,groupBy/join聚合关联。
    • 行动算子collect/saveAsTextFile结果输出,take/count数据探查。
    • 性能调优repartition分区调整、cache/persist持久化策略、广播变量与累加器应用。
  • 第三至第六章(高级特性)
    • 持久化与容错:CheckPoint机制保障数据安全。
    • 调度原理:DAG划分、宽窄依赖、内存迭代计算优化。
    • 实战案例:中文分词(jieba库)、词频统计、TopN分析,集群任务提交与调优。

4. 第三部分:SparkSQL(结构化数据处理)

  • 基础篇
    • DataFrame创建:从RDD/文件(JSON/CSV/Parquet)/数据库(JDBC)加载数据。
    • DSL & SQL:select/filter/groupBy操作,SQL语句直接执行。
    • 数据清洗:缺失值处理、类型转换、复杂逻辑UDF/UDAF开发。
  • 进阶篇
    • 集成Hive:元数据管理、HQL查询、外部表读写。
    • 性能优化:Catalyst逻辑优化、Tungsten物理执行计划、Shuffle分区控制。
    • 窗口函数row_number/rank实现分组排序与TopK计算。

5. 第四部分:企业级综合案例

  • 实战场景
    • 日志分析:用户行为统计、异常检测。
    • 电商数据:销售趋势分析、用户画像构建。
    • 多数据源协同:Hive表与实时流数据关联计算。

6. 第五部分:Spark新特性与核心回顾

  • 3.0新特性
    • AQE(自适应查询优化):动态调整执行计划。
    • 动态分区裁剪:减少Shuffle数据量。
    • Koalas库:Pandas API无缝迁移至分布式环境。
  • 核心回顾
    • Shuffle机制演进(Hash vs Sort)、任务调度层级(Job/Stage/Task)。
    • 内存管理、并行度设置与资源参数调优。

课程特色

  • 系统化路径:从集群部署到源码级原理,构建完整知识体系。
  • 实战驱动:20+编码案例、4大综合项目,覆盖数据分析全流程。
  • 前沿技术:Spark 3.0新特性详解,保持技术领先性。
  • 生态整合:PySpark与Hive/YARN/JDBC等工具链深度结合。

适合人群

  • 大数据初学者:零基础掌握分布式计算框架。
  • 数据分析师:提升海量数据处理能力。
  • 开发工程师:深入Spark内核原理,优化企业级应用。

通过本课程,学员将不仅能熟练使用PySpark解决复杂数据问题,还能深入理解Spark设计哲学,具备集群调优与架构设计能力,胜任大数据开发、分析岗位的高阶需求。

课程目录

+—0-导学视频
| PySpark导学.mp4
| 更多好课程.url
|
+—1-第一部分-Spark基础入门
| +—1-第一章
| | 01-课程导入.mp4
| | Spark基础入门-第一章-1.1-Spark简单介绍.mp4
| | Spark基础入门-第一章-1.2-Spark风雨十年.mp4
| | Spark基础入门-第一章-1.3-Spark和Hadoop的对比.mp4
| | Spark基础入门-第一章-1.4-Spark四大特点.mp4
| | Spark基础入门-第一章-1.5-Spark框架模块.mp4
| | Spark基础入门-第一章-1.6-Spark运行模式.mp4
| | Spark基础入门-第一章-1.7-Spark的架构角色.mp4
| | Spark基础入门-第一章-总结.mp4
| | 更多好课程.url
| |
| +—2-第二章
| | Spark基础入门-第二章-2.1-课程服务器环境.mp4
| | Spark基础入门-第二章-2.2-Local模式基本原理.mp4
| | Spark基础入门-第二章-2.3-在Linux上服务器上安装Anaconda.mp4
| | Spark基础入门-第二章-2.4-Spark Local模式部署.mp4
| |
| +—3-第三章
| | Spark基础入门-第三章-3.1-StandAlone的运行原理.mp4
| | Spark基础入门-第三章-3.2-StandAlone部署.mp4
| | Spark基础入门-第三章-3.3-StandAlone程序测试.mp4
| | Spark基础入门-第三章-3.4-Spark程序运行层次划分.mp4
| | Spark基础入门-第三章-3.5-总结.mp4
| | 更多好课程.url
| |
| +—4-第四章
| | Spark基础入门-第四章-4.1-StandAlone HA模式的运行原理.mp4
| | Spark基础入门-第四章-4.2-StandAlone 部署和测试.mp4
| | Spark基础入门-第四章-4.3-总结.mp4
| |
| +—5-第五章
| | Spark基础入门-第五章-5.1-Spark On YARN的运行原理.mp4
| | Spark基础入门-第五章-5.2-Spark On YARN 部署和测试.mp4
| | Spark基础入门-第五章-5.3-两种部署模式的区别.mp4
| | Spark基础入门-第五章-5.4-两种部署模式的演示和总结.mp4
| | Spark基础入门-第五章-5.5-两种模式任务提交流程.mp4
| | Spark基础入门-第五章-5.6-总结.mp4
| |
| +—6-第六章
| | Spark基础入门-第六章-6.1-框架和类库.mp4
| | Spark基础入门-第六章-6.2-PySpark类库介绍.mp4
| | Spark基础入门-第六章-6.3-PySpark安装.mp4
| | Spark基础入门-第六章-6.4-总结.mp4
| | 更多好课程.url
| |
| +—7-第七章
| | Spark基础入门-第七章-7.1-本机配置Python环境.mp4
| | Spark基础入门-第七章-7.2-PyCharm本地和远程解释器配置.mp4
| | Spark基础入门-第七章-7.3-编程入口SparkContext对象以及WordCount演示.mp4
| | Spark基础入门-第七章-7.4-WordCount代码流程解析.mp4
| | Spark基础入门-第七章-7.5-提交WordCount到Linux集群运行.mp4
| | Spark基础入门-第七章-7.6-总结.mp4
| |
| \—8-第八章
| Spark基础入门-第八章-8.1-Spark运行角色回顾.mp4
| Spark基础入门-第八章-8.2-分布式代码执行分析.mp4
| Spark基础入门-第八章-8.3-Python On Spark执行原理.mp4
| Spark基础入门-第八章-总结.mp4
| 更多好课程.url
|
+—2-第二部分-SparkCore
| +—1-第一章
| | SparkCore-第一章-1.1-什么是RDD.mp4
| | SparkCore-第一章-1.2-RDD五大特性-特性1.mp4
| | SparkCore-第一章-1.3-RDD五大特性-特性2.mp4
| | SparkCore-第一章-1.4-RDD的五大特性-特性3.mp4
| | SparkCore-第一章-1.5-RDD的五大特性-特性4.mp4
| | SparkCore-第一章-1.6-RDD的五大特性-特性5.mp4.mp4
| | SparkCore-第一章-1.7-WordCount结合RDD特性进行执行分析.mp4
| | SparkCore-第一章-1.8-总结.mp4
| | 更多好课程.url
| |
| +—2-第二章
| | SparkCore-第二章-1-RDD的创建-1.mp4
| | SparkCore-第二章-10-RDD算子-filter.mp4
| | SparkCore-第二章-11-RDD算子-distinct.mp4
| | SparkCore-第二章-12-RDD算子-union.mp4
| | SparkCore-第二章-13-RDD算子-join.mp4
| | SparkCore-第二章-14-RDD算子-intersection.mp4
| | SparkCore-第二章-15-RDD算子-glom.mp4
| | SparkCore-第二章-16-RDD算子-groupByKey.mp4
| | SparkCore-第二章-17-RDD算子-sortBy.mp4
| | SparkCore-第二章-18-RDD算子-sortByKey.mp4
| | SparkCore-第二章-19-RDD算子-案例.mp4
| | SparkCore-第二章-2-RDD的创建-2.mp4
| | SparkCore-第二章-20-RDD算子-案例-提交到YARN执行.mp4
| | SparkCore-第二章-21-RDD算子-countByKey.mp4
| | SparkCore-第二章-22-RDD算子-reduce.mp4
| | SparkCore-第二章-23-RDD算子-fold.mp4
| | SparkCore-第二章-24-RDD算子-take-first-count-top.mp4
| | SparkCore-第二章-25-RDD算子-takeSample.mp4
| | SparkCore-第二章-26-RDD算子-takeOrdered.mp4
| | SparkCore-第二章-27-RDD算子-foreach.mp4
| | SparkCore-第二章-28-RDD算子-saveAsTextFile.mp4
| | SparkCore-第二章-29-RDD算子-mapPartitions.mp4
| | SparkCore-第二章-3-RDD算子概念和分类.mp4
| | SparkCore-第二章-30-RDD算子-foreachPartition.mp4
| | SparkCore-第二章-31-RDD算子-partitionBy.mp4
| | SparkCore-第二章-32-RDD算子-repartition-coalesce.mp4
| | SparkCore-第二章-33-RDD算子-面试题-groupByKey和reduceByKey的区别.mp4
| | SparkCore-第二章-34-总结.mp4
| | SparkCore-第二章-4-转换算子-map.mp4
| | SparkCore-第二章-5-转换算子-flatMap.mp4
| | SparkCore-第二章-6-转换算子-reduceByKey.mp4
| | SparkCore-第二章-7-RDD算子-mapValues.mp4
| | SparkCore-第二章-8-WordCount案例回顾.mp4
| | SparkCore-第二章-9-RDD算子-groupBy.mp4
| |
| +—3-第三章
| | SparkCore-第三章-1-RDD的数据是过程数据概念.mp4
| | SparkCore-第三章-2-RDD的缓存.mp4
| | SparkCore-第三章-3-RDD的CheckPoint.mp4
| | SparkCore-第三章-4-总结.mp4
| | 更多好课程.url
| |
| +—4-第四章
| | SparkCore-第四章-1-jieba库入门使用.mp4
| | SparkCore-第四章-2-案例需求1开发.mp4
| | SparkCore-第四章-3-案例需求2开发.mp4
| | SparkCore-第四章-4-案例需求3开发.mp4
| | SparkCore-第四章-5-提交代码到YARN集群运行.mp4
| | SparkCore-第四章-6-作业和总结.mp4
| |
| +—5-第五章
| | SparkCore-第五章-1-广播变量.mp4
| | SparkCore-第五章-2-累加器.mp4
| | SparkCore-第五章-3-广播变量累加器综合案例.mp4
| | SparkCore-第五章-4-总结.mp4
| | 更多好课程.url
| |
| \—6-第六章
| SparkCore-第六章-1-DAG.mp4
| SparkCore-第六章-2-宽窄依赖和阶段划分.mp4
| SparkCore-第六章-3-内存迭代计算.mp4
| SparkCore-第六章-4-Spark并行度.mp4
| SparkCore-第六章-5-Spark任务调度.mp4
| SparkCore-第六章-6-Spark运行概念名词解释和层级梳理.mp4
| SparkCore-第六章-7-总结.mp4
| 更多好课程.url
|
+—3-第三部分-SparkSQL
| +—1-第一章
| | SparkSQL-第一章-SparkSQL基础入门.mp4
| |
| +—2-第二章
| | SparkSQL-第二章-1-SparkSQL和Hive的异同以及SparkSQL的数据抽象.mp4
| | SparkSQL-第二章-2-SparkSession执行环境入口构建和SparkSQL HelloWorld.mp4
| | SparkSQL-第二章-3-总结.mp4
| |
| +—3-第三章
| | SparkSQL-第三章-1-DataFrame对象的构成.mp4
| | SparkSQL-第三章-10-DSL风格入门API.mp4
| | SparkSQL-第三章-11-SQL风格入门API.mp4
| | SparkSQL-第三章-12-WordCount案例.mp4
| | SparkSQL-第三章-13-电影评分案例编程.mp4
| | SparkSQL-第三章-14-SparkSQL Shuffle阶段分区数参数设定.mp4
| | SparkSQL-第三章-15-异常数据处理API.mp4
| | SparkSQL-第三章-16-DataFrame数据写出.mp4
| | SparkSQL-第三章-17-DataFrame使用JDBC协议读写数据库(MySQL).mp4
| | SparkSQL-第三章-18-总结.mp4
| | SparkSQL-第三章-2-DataFrame创建-1.mp4
| | SparkSQL-第三章-3-DataFrame创建-2.mp4
| | SparkSQL-第三章-4-DataFrame创建-3.mp4
| | SparkSQL-第三章-5-DataFrame创建-4-基于Pandas的DF转换为SparkSQL的DF对象.mp4
| | SparkSQL-第三章-6-标准API读取text数据源构建DataFrame.mp4
| | SparkSQL-第三章-7-标准API读取json构建DataFrame.mp4
| | SparkSQL-第三章-8-标准API读取jcsv构建DataFrame.mp4
| | SparkSQL-第三章-9-标准API读取jparquet构建DataFrame.mp4
| | 更多好课程.url
| |
| +—4-第四章
| | SparkSQL-第四章-1-UDF创建演示.mp4
| | SparkSQL-第四章-2-注册返回值是数组类型的UDF.mp4
| | SparkSQL-第四章-3-返回字典类型的UDF定义.mp4
| | SparkSQL-第四章-4-拓展-通过RDD代码模拟UDAF效果.mp4
| | SparkSQL-第四章-5-窗口函数的演示.mp4
| | SparkSQL-第四章-6-总结.mp4
| | 更多好课程.url
| |
| +—5-第五章
| | SparkSQL-第五章-1-Catalyst优化器.mp4
| | SparkSQL-第五章-2-SparkSQL执行流程及本章总结.mp4
| |
| +—6-第六章
| | SparkSQL-第六章-SparkOnHive原理和配置及总结.mp4
| | 更多好课程.url
| |
| \—7-第七章
| SparkSQL-第七章-分布式SQL的执行引擎原理和配置.mp4
|
+—4-第四部分-案例
| 更多好课程.url
| 案例-案例背景及需求1开发.mp4
| 案例-需求2开发.mp4
| 案例-需求3开发.mp4
| 案例-需求4开发.mp4
|
\—5-第五部分-Spark新特性及核心回顾
Spark新特性及核心回顾-1-1-HashShuffleManager.mp4
Spark新特性及核心回顾-1-2-SortShuffleManager.mp4
Spark新特性及核心回顾-1-3-总结.mp4
Spark新特性及核心回顾-2-1-3.0新特性-AQE.mp4
Spark新特性及核心回顾-2-2-新特性-动态分区裁剪.mp4
Spark新特性及核心回顾-2-3-新特性-koalas库.mp4
Spark新特性及核心回顾-2-4-总结.mp4
Spark新特性及核心回顾-3-Spark概念总结.mp4
更多好课程.url

 

声明:内容搜集于网络,如有侵权,请联系删除