getfromcode

Python3实战-PySpark+Azkaban 完成气象数据分析项目

测试运维
课程简介

课程定位与核心痛点 本资料聚焦于 Python 开发者在大数据生态中的横向拓展能力构建,核心解决的是“会用 Python 写脚本,但不会用 Spark 处理海量数据”以及“单机/小规模任务调度靠 Cron 或 Airflow 过重,难以驾驭轻量级工作流依赖管理”的断档问题。气象数据分析作为实战载体,并非为了研究气象学,而是利用其时间序列连续、字段结构相对标…

已有 20 人浏览 发布 2025-12-20 更新 2026-10-03

课程定位与核心痛点

本资料聚焦于 Python 开发者在大数据生态中的横向拓展能力构建,核心解决的是“会用 Python 写脚本,但不会用 Spark 处理海量数据”以及“单机/小规模任务调度靠 Cron 或 Airflow 过重,难以驾驭轻量级工作流依赖管理”的断档问题。气象数据分析作为实战载体,并非为了研究气象学,而是利用其时间序列连续、字段结构相对标准、数据量级足以触发 Spark 分布式计算优势且对结果准确性要求严苛的特点,提供一个高复用的分析模板。对于已经掌握 Python3 基础语法,熟悉 Pandas 处理百万级数据遇到性能瓶颈,或者从事数据清洗、ETL 开发工作,希望向大数据架构或数据工程方向转型的读者,本资料提供了从源码编译到工程落地的完整闭环参考。它规避了仅停留在 API 调用层面的浅层教学,强制要求理解 Spark 在 JVM 上的运行机制及 Python 与 Scala 之间的通信开销,这是独立调优的前提。

技术栈拆解与项目结构分析

从工程结构来看,整套资源涵盖了一个典型的大数据离线批处理系统的全链路组件:底层依赖 JDK 和 Scala 环境、中间件 Hadoop HDFS 提供存储、计算引擎 PySpark 负责逻辑执行、以及 Azkaban 作为作业调度中心串联各个环节。这种组合在金融、电信等行业的数据仓库建设中极为常见。建议学习时不要按视频顺序线性播放,而应将其视为一个可复用的脚手架项目对照实践。首先应重点研读环境搭建部分,尤其是 Spark 源码编译与部署章节,这能帮助读者理解不同版本间 API 的兼容性陷阱,避免在生产环境中因版本错配导致运行时异常。其次,深入分析气象数据的清洗逻辑,观察 PySpark DataFrame API 如何替代传统的 Pandas 链式操作,特别是宽表展开、多源数据关联以及分区策略的设计,这些是后续迁移到其他业务场景的核心资产。

学习效果与资料使用建议

完成本资料后,读者应具备独立搭建基于 Hadoop+Spark 的离线数据处理平台,并能编写 PySpark 程序实现复杂的多表关联、聚合统计及数据质量校验。更重要的是,能够利用 Azkaban 定义具有依赖关系的任务流,实现从数据接入、清洗、建模到报表生成的全流程自动化调度,解决人工跑数带来的可追溯性问题差、错误定位困难等工程痛点。在配合练习时,建议先将环境配置在本地虚拟机或容器中进行隔离测试,确保网络连通性和权限配置无误后再进行代码开发。对于源码部分,不要只复制粘贴,需逐一排查编译日志中的警告,理解每个参数配置对内存管理和任务执行效率的影响。通过对比手动执行脚本与 Azkaban 调度执行的结果,建立对分布式系统幂等性、重试机制及失败处理的直观认知,从而将这份资料转化为真正可复用于生产环境的工程能力。

〖课程介绍〗:

本课程使用python3实战讲解了Spark核心功能组件,并结合调度爆款框架Azkaban,来对作业进行调度,最后以天气数据分析做为实战项目,让你学会对大数据进行处理与分析,让Python开发人员也能对Spark应用程序进行开发及调优。

〖课程目录〗:

  • 第1章 课程介绍试看2 节 | 19分钟
  • 课程介绍
  • 收起列表
    • 视频:1-1 PySpark导学 (12:51)试看
    • 视频:1-2 OOTB环境演示 (05:29)
  • 第2章 实战环境搭建7 节 | 32分钟
  • 工欲善其事必先利其器,本章讲述JDK、Scala、Hadoop、Maven、Python3以及Spark源码编译及部署
  • 收起列表
    • 视频:2-1 -课程目录 (00:54)
    • 视频:2-2 -Java环境搭建 (02:14)
    • 视频:2-3 -Scala环境搭建 (01:50)
    • 视频:2-4 -Hadoop环境搭建 (09:29)
    • 视频:2-5 -Maven环境搭建 (02:24)
    • 视频:2-6 -Python3环境部署 (05:53)
    • 视频:2-7 -Spark源码编译及部署 (08:53)
  • 第3章 Spark Core核心RDD试看12 节 | 108分钟
  • 本章详细讲解RDD是什么以及特性(面试常考)、Spark中两个核心类SparkContext和SparkConf、pyspark启动脚本分析、RDD的创建方式以及如何使用IDE开发Python Spark应用程序并提交到服务器上运行
  • 收起列表
    • 视频:3-1 -课程目录 (03:58)
    • 视频:3-2 -RDD是什么 (11:25)
    • 视频:3-3 -通过电影描述集群的强大之处 (04:47)
    • 视频:3-4 -RDD的五大特性 (12:00)
    • 视频:3-5 -RDD特性在源码中的体现 (12:38)试看
    • 视频:3-6 -图解RDD (04:31)
    • 视频:3-7 -SparkContext&SparkConf详解 (10:35)
    • 视频:3-8 -pyspark (11:49)
    • 视频:3-9 -RDD创建方式一 (08:23)
    • 视频:3-10 -RDD创建方式二 (12:18)
    • 视频:3-11 -使用IDE开发pyspark应用程序 (10:04)
    • 视频:3-12 -提交pyspark作业到服务器上运行 (05:20)
  • 第4章 Spark Core RDD编程16 节 | 92分钟
  • 本章将针对RDD中常用的算子进行详细案例讲解,并进行综合案例实战
  • 收起列表
    • 视频:4-1 -课程目录 (01:23)
    • 视频:4-2 -RDD常用操作 (09:23)
    • 视频:4-3 -map算子使用详解 (10:05)
    • 视频:4-4 -filter算子详解 (04:44)
    • 视频:4-5 -flatMap算子详解 (03:36)
    • 视频:4-6 -groupByKey算子详解 (05:54)
    • 视频:4-7 -reduceByKey算子详解 (04:37)
    • 视频:4-8 -sortByKey算子详解 (06:29)
    • 视频:4-9 -union算子使用详解 (02:26)
    • 视频:4-10 -distinct算子使用详解 (02:00)
    • 视频:4-11 -join算子详解 (05:34)
    • 视频:4-12 -action常用算子详解 (03:03)
    • 视频:4-13 -算子综合案例实战一词频统计 (13:57)
    • 视频:4-14 -算子综合案例实战之词频统计重构 (03:52)
    • 视频:4-15 -算子综合案例实战之TopN统计 (08:46)
    • 视频:4-16 -算子综合案例实战之平均数统计 (05:55)
  • 第5章 Spark运行模式5 节 | 50分钟
  • 本章将介绍Spark的几种运行模式,需要重点掌握on YARN模式
  • 收起列表
    • 视频:5-1 -课程目录 (01:50)
    • 视频:5-2 -local模式运行 (09:47)
    • 视频:5-3 -standalone模式环境搭建及pyspark运行 (11:52)
    • 视频:5-4 -standalone模式spark-submit运行 (05:28)
    • 视频:5-5 -yarn运行模式详解 (20:47)
  • 第6章 Spark Core进阶试看13 节 | 98分钟
  • 本章将介绍Spark中的核心术语、运行架构、并对比Spark和MapReduce的概念区分、存储策略及选择方式、宽窄依赖及Shuffle
  • 收起列表
    • 视频:6-1 -课程目录 (04:02)
    • 视频:6-2 -Spark核心概念详解 (14:26)
    • 视频:6-3 -结合Spark UI详解Spark核心概念 (04:23)试看
    • 视频:6-4 -Spark运行架构及注意事项 (09:21)
    • 视频:6-5 -Spark和Hadoop重要概念区分 (05:32)
    • 视频:6-6 -Spark缓存的作用 (12:47)
    • 视频:6-7 -Spark缓存概述 (06:21)
    • 视频:6-8 -Spark缓存策略详解 (08:12)
    • 视频:6-9 -Spark缓存策略选择依据 (04:41)
    • 视频:6-10 -Spark Lineage机制 (05:00)
    • 视频:6-11 -Spark窄依赖和宽依赖 (08:10)
    • 视频:6-12 -Spark Shuffle概述 (01:54)
    • 视频:6-13 -图解RDD的shuffle以及依赖关系 (12:13)
  • 第7章 Spark Core调优6 节 | 40分钟
  • 本章将从Spark作业性能指标、序列化、内存管理、广播变量及数据本地化这几个方面来介绍Spark作业的调优
  • 收起列表
    • 视频:7-1 -课程目录 (02:05)
    • 视频:7-2 -优化之HistoryServer配置及使用 (15:32)
    • 视频:7-3 -优化之序列化 (05:48)
    • 视频:7-4 -优化之内存管理 (07:55)
    • 视频:7-5 -优化之广播变量 (02:51)
    • 视频:7-6 -优化之数据本地性 (05:32)
  • 第8章 Spark SQL9 节 | 73分钟
  • 本章将讲解Spark SQL的架构、DataFrame&Dataset、以及如何使用Python API来对DataFrame进行编程
  • 收起列表
    • 视频:8-1 -课程目录 (01:52)
    • 视频:8-2 -Spark SQL前世今生 (10:28)
    • 视频:8-3 -Spark SQL概述&错误认识纠正 (13:43)
    • 视频:8-4 -Spark SQL架构 (03:17)
    • 视频:8-5 -DataFrame&Dataset详解 (07:15)
    • 视频:8-6 -DataFrame API编程 (14:55)
    • 视频:8-7 -RDD与DataFrame互操作方法一 (09:37)
    • 视频:8-8 -RDD与DataFrame互操作方法二 (06:02)
    • 视频:8-9 -Spark SQL其他 (05:24)
  • 第9章 Spark Streaming8 节 | 62分钟
  • 本章将讲解Spark Streaming的核心概念、执行原理、以及如何Python API来对Spark Streaming进行编程
  • 收起列表
    • 视频:9-1 -课程目录 (01:35)
    • 视频:9-2 -Spark Streaming概述 (07:37)
    • 视频:9-3 -实时流处理框架对比 (04:24)
    • 视频:9-4 -Spark Streaming执行原理 (07:18)
    • 视频:9-5 -从词频统计案例来了解SparkStreaming (10:20)
    • 视频:9-6 -核心概念之StreamingContext (17:25)
    • 视频:9-7 -核心概念之DStream及常用操作 (06:20)
    • 视频:9-8 -SparkStreaming操作文件系统数据实战 (06:03)
  • 第10章 Azkaban基础篇10 节 | 81分钟
  • 本章将讲解Azkaban的特性、架构、运行模式、源码编译及部署、快速入门
  • 收起列表
    • 视频:10-1 Azkaban基础篇课程目录 (04:01)
    • 视频:10-2 -工作流概述 (08:51)
    • 视频:10-3 -工作流在大数据处理中的重要性 (11:29)
    • 视频:10-4 -常用调度框架介绍 (07:37)
    • 视频:10-5 -Azkaban概述及特性 (09:55)
    • 视频:10-6 -Azkaban架构 (07:34)
    • 视频:10-7 -Azkaban运行模式详解 (06:50)
    • 视频:10-8 -Azkaban源码编译 (08:56)
    • 视频:10-9 -Azkaban solo server环境部署 (09:29)
    • 视频:10-10 -Azkaban快速入门案例 (06:06)
  • 第11章 Azkaban实战篇7 节 | 49分钟
  • 本章将讲解如何使用Azkaban来完成HDFS、MapReduce、Hive作业的调度、定时作业调度以及邮件告警
  • 收起列表
    • 视频:11-1 -Azkaban实战篇课程目录 (02:59)
    • 视频:11-2 -依赖作业在Azkaban中的使用 (06:50)
    • 视频:11-3 -HDFS作业在Azkaban中的使用 (03:21)
    • 视频:11-4 -MapReduce作业在Azkaban中的使用 (12:28)
    • 视频:11-5 -Hive作业在Azkaban中的使用 (08:26)
    • 视频:11-6 -定时调度作业在Azkaban中的使用 (05:14)
    • 视频:11-7 -邮件告警及SLA在Azkaban中的使用 (08:43)
  • 第12章 Azkaban进阶篇10 节 | 73分钟
  • 本章将讲解Azkaban在生产上的部署、权限管理、Ajax API、Plugin、以及短信和调度框架的二次开发
  • 收起列表
    • 视频:12-1 -Azkaban进阶篇课程目录 (05:27)
    • 视频:12-2 -Two Server Mode之数据库准备工作 (07:06)
    • 视频:12-3 -Two Server Mode之AzkabanWebServer搭建 (14:41)
    • 视频:12-4 -Two Server Mode之AzkabanExecServer搭建 (04:52)
    • 视频:12-5 -Two Server Mode之使用实战 (07:25)
    • 视频:12-6 -Azkaban权限管理 (03:52)
    • 视频:12-7 -Azkaban中AJAX API使用 (14:46)
    • 视频:12-8 -Azkaban Plugin的使用 (04:45)
    • 视频:12-9 -Azkaban中短信告警改造思路 (03:25)
    • 视频:12-10 Azbakan在生产上使用的改造思路 (05:46)
  • 第13章 项目实战19 节 | 120分钟
  • 本章将讲解在构建大数据平台的技术选型、集群升级资源评估,并使用Spark对气象数据进行分析,讲分析结果写入ES,并通过Kibana进行统计结果的可视化展示
  • 收起列表
    • 视频:13-1 -课程目录 (01:24)
    • 视频:13-2 -大数据项目开发流程 (14:05)
    • 视频:13-3 -大数据企业级应用 (07:57)
    • 视频:13-4 -企业级大数据分析平台 (05:55)
    • 视频:13-5 -集群数据量预估 (05:01)
    • 视频:13-6 -集群机器规模&资源&作业规划 (04:58)
    • 视频:13-7 -项目需求 (06:22)
    • 视频:13-8 -数据加载成DataFrame并选出需要的列 (09:00)
    • 视频:13-9 -SparkSQL UDF函数开发 (07:57)
    • 视频:13-10 -每年Grade出现的次数统计 (02:51)
    • 视频:13-11 -Grade在每年中的占比统计 (04:59)
    • 视频:13-12 -ES部署及使用 (07:49)
    • 视频:13-13 -Kibana部署及使用 (04:55)
    • 视频:13-14 -将作业运行到YARN上 (05:31)
    • 视频:13-15 -统计分析结果写入ES测试 (11:27)
    • 视频:13-16 -统计分析结果入ES并通过Kibana图形化展示 (09:09)
    • 视频:13-17 -作业 (02:03)
    • 视频:13-18 -通过Azkaban调度整个流程 (04:29)
    • 视频:13-19 -课程总结及展望(重点关注) (03:53)
课程购买
课程价格
金币29
290金币限时优惠会员免费
销量:0
💎 开通会员每日免费下载,比单买更划算 →
支付成功后会自动显示下载资源云盘的链接!点击链接即可下载到本地。