架构师
其他
大数据
SQL
Spark
分布式
推荐课程
average > 0 ? $model->average . '分' : '10.0分' ?>

大数据之 Spark实战与Spark内核剖析

哈瑞

一线互联网行业 高级架构师

现任BAT公司某技术中心高级架构师;曾在美团点评、唯品会工作,从事广告平台、电商平台相关的架构设计与团队管理工作。
中科院软件研究所计算机专业硕士毕业,出版过2本著作:
在高并发高可用架构,业务建模,DDD领域,积累了10年工作经验,经历过游戏,社交,广告,电商等各种类型的项目先后出版两本书籍。曾任上海交大继续教育学院兼职讲师,教授Java与数据结构基础,网络与Web,曾任美团点评的校招面试官,搜索与推荐平台,电商运营平台,电商商品,库存体系 ,广告平台,数据中台。

服务过的企业:
广州赛意
深圳创维-RGB电子
招联消费金融
中移
酷开
银联

现任BAT公司某技术中心高级架构师;曾在美团点评、唯品会工作,从事广告平台、电商平台相关的架构设计与团队管理工作。 中科院软件研究所计算机专业硕士毕业,出版过2本著作: 在高并发高可用架构,业务建模,DDD领域,积累了10年工作经验,经历过游戏,社交,广告,电商等各种类型的项目先后出版两本书籍。曾任上海交大继续教育学院兼职讲师,教授Java与数据结构基础,网络与Web,曾任美团点评的校招面试官,搜索与推荐平台,电商运营平台,电商商品,库存体系 ,广告平台,数据中台。 服务过的企业: 广州赛意 深圳创维-RGB电子 招联消费金融 中移 酷开 银联

课程费用

6800.00 /人

课程时长

4

成为教练

课程简介

深入剖析Spark大数据实战技术与内核原理。课程涵盖Spark技术脉络、基础编程、分布式计算原理、进阶使用及Spark Streaming、Spark SQL等核心应用,帮助学员掌握Spark分布式处理海量数据的能力,打造高效的大数据处理流程。

目标收益

掌握核心技术:通过系统学习Spark,学员将能够熟练运用Spark处理大数据,提升工作效率。
深入理解原理:深入剖析Spark内核原理,理解其分布式计算机制,为复杂数据处理提供坚实理论基础。
实战应用导向:通过实战案例,学员将学会如何将Spark技术应用于实际场景,提升数据处理能力,为企业创造价值。

培训对象

课程大纲

第1天大数据技术脉络与Spark入门
序言:
大数据技术发展脉络
1.大数据技术图谱:
采集、传输、存储、调度、计算
2. 分布式的3个领域:
(1) 分布式存储:TFS/GFS/HDFS/Ceph/…
(2) 分布式调度:Yarn/K8S
(3) 分布式计算:
批处理、流处理、OLAP、 ML
3. 各种分布式计算框架:
Spark/Flink/各种OLAP框架/ML框架
第1单元 hadoop核心原理与Spark环境部署 1.Spark单机模式
2.Spark集群模式
3.Spark on Yarn模式
(1)HDFS集群部署、HDFS核心概念解析、HDFS高可用
(2) Yarn集群部署、Yarn核心概念解析、Yarn高可用
(3)存算分离架构 vs. 存算不分架构
(4)Spark on Yarn部署
4.Spark任务提交
5.Spark on K8S模式
第2单元:
Spark基础:Scala语言
1.Scala与Java的联系与区别
2.函数式编程 vs. 面向对象编程
3.函数的各种特别写法
4.Scala面向对象与Java的差异点
5.类型、泛型、反射
6.Scala特有的一些设计模式:self-type/cake-pattern, Product等
第3单元
基于RDD的spark编程
1.RDD的用法、设计理念剖析
2.Transformation与Action算子
3.Transromation算子:1元、2元、多元算子
4.常用算子剖析:map/flatmap/filter/reduceByKey/groupByKey/reduce/repartition/coalesce/..
5.读/写hdfs文件
第4单元
RDD背后的分布式计算原理剖析

1.Spark App源代码如何拆分成多个Job?Job之间串行、并行?
2.Job如何拆分成多个Stage? Stage之间串行、并行?
3.Stage如何拆分成多个Task?Task之间串行、并行?
4.物理并行度 vs. 逻辑并行度
5.Spark任务的资源分配:精通分配 vs. 动态分配
第5单元
Spark 进阶使用
1.RDD容错机制: cache与persist
2.RDD checkpoint
3.spark broadcast机制
4.spark accumulator机制
第2天 Spark Streaming、Spark SQL与DataFrame编程

第1单元
Spark Streaming入门
1.Spark Streaming典型应用场景:
Spark消费Kafka举例
2.Spark Streaming:
无状态应用 vs. 有状态应用
3.Spark Streaming vs. Flink
Spark Streaming和Flink的优缺点对比
4.Spark Streaming原理
5.综合案例实战:
案例1: kafka数据落入hdfs,各种实现方法分析
第2单元:
Spark SQL编程
1. Spark SQL vs. RDD
2. 基于DataFrame编程
(1)DataFrame背后的设计理念
(2)基于DataFrame的各种算子
3. 低阶算子 vs. 高阶算子
4. 从Spark到Flink:
Streaming SQL引入
5.Spark structure programming:
spark streaming SQL

第3单元
Spark SQL背后的原理
1.SQL语句如何转化为AST语法树?- Antlr框架介绍
2.AST如何转化为逻辑计划?
谓词下推、列裁剪
3.逻辑计划如何转化为物理计划?
4.物理计划转化为RDD?
第4单元
SQL UDF编程与背后原理
1.为什么要用UDF?
2.常规UDF写法
3.基于Expression的UDF实现
第3天 Spark常用优化技巧与内核剖析

第1单元
常用优化技巧
1.Spark调优的基本框架
2.看懂Spark Web UI与history UI的各种参数
3.常用优化技巧介绍:
(1)rdd复用
(2)谨慎使用shuffle算子
(3)合理配置spark任务参数
第2单元
优化专题1 - Spark SQL Join的几种不同实现方式与选择
1.Join的几种不同实现算法:
(1)单机3种Join算法:
Nested Loop Join
Sorted Merge Join
Hash Join
(2)分布式Join的2个策略
Shuffle
BroadCast
2.join hints – 选择不同的Join算法
第3单元
优化专题2 – 数据倾斜
1.为什么会有数据倾斜?
2.数据倾斜的几种不同优化方法:
(1)预计算
(2)提高并行度
(3)随机前缀打散
(4)小表广播
第4单元
Spark RDD内核剖析
1.源代码如何构建DAG图?
2.DAGScheduler内核剖析 –
DAGScheduler如何调度执行DAG?
3.TaskScheduler内核剖析 – TaskScheduler如何调度Task?
4.Executor内核剖析 – Executor如何执行Task?
第5单元
Spark sql内核剖析
1.sql如何变成AST语法树?
2.语法树变成逻辑计划?
3.逻辑计划变成物理计划?
4.物理计划变成RDD DAG图?
5.AQE 与 DPP
6.Tungsten – WSCG与向量化
第4天 机器学习与Spark ML
序言:从机器学习到深度学习
1.机器学习 vs. 深度学习
2.常用ML/深度学习库:sklearn/SparkML/tensorflow/pytorch
第1单元 常用机器学习算法1 – LR深入剖析 1.线性回归、最小2乘
2.从线性回归到逻辑回归:
交叉熵损失函数、梯度下降法
3.凸优化:梯度下降的直观解读
4.机器学习算法框架总结:
(1)定义模型
(2)定义损失函数
(3)损失函数最小化
第2单元 常用机器学习算法2 - 决策树深入剖析 1.决策树算法的基本思维
2.数据纯度的表达 – 方差、信息熵、Gini系数
3.ID3、C4.5、Cart
4.专题讨论:离散值划分问题
5.决策树的损失函数解读
第3单元 常用机器学习算法3 –
集成树 - 深入剖析
1.Bagging 与 Boosting
2.高数基础:复合函数求导
3.GBDT算法介绍
4.XGB算法介绍
5.lightGBM算法介绍
第4单元 Spark ML 1.Spark ML - LR例子
2.Spark ML - XGB例子
3.Spark ML – lightGBM例子
第1天大数据技术脉络与Spark入门
序言:
大数据技术发展脉络
1.大数据技术图谱:
采集、传输、存储、调度、计算
2. 分布式的3个领域:
(1) 分布式存储:TFS/GFS/HDFS/Ceph/…
(2) 分布式调度:Yarn/K8S
(3) 分布式计算:
批处理、流处理、OLAP、 ML
3. 各种分布式计算框架:
Spark/Flink/各种OLAP框架/ML框架
第1单元 hadoop核心原理与Spark环境部署
1.Spark单机模式
2.Spark集群模式
3.Spark on Yarn模式
(1)HDFS集群部署、HDFS核心概念解析、HDFS高可用
(2) Yarn集群部署、Yarn核心概念解析、Yarn高可用
(3)存算分离架构 vs. 存算不分架构
(4)Spark on Yarn部署
4.Spark任务提交
5.Spark on K8S模式
第2单元:
Spark基础:Scala语言
1.Scala与Java的联系与区别
2.函数式编程 vs. 面向对象编程
3.函数的各种特别写法
4.Scala面向对象与Java的差异点
5.类型、泛型、反射
6.Scala特有的一些设计模式:self-type/cake-pattern, Product等
第3单元
基于RDD的spark编程
1.RDD的用法、设计理念剖析
2.Transformation与Action算子
3.Transromation算子:1元、2元、多元算子
4.常用算子剖析:map/flatmap/filter/reduceByKey/groupByKey/reduce/repartition/coalesce/..
5.读/写hdfs文件
第4单元
RDD背后的分布式计算原理剖析

1.Spark App源代码如何拆分成多个Job?Job之间串行、并行?
2.Job如何拆分成多个Stage? Stage之间串行、并行?
3.Stage如何拆分成多个Task?Task之间串行、并行?
4.物理并行度 vs. 逻辑并行度
5.Spark任务的资源分配:精通分配 vs. 动态分配
第5单元
Spark 进阶使用
1.RDD容错机制: cache与persist
2.RDD checkpoint
3.spark broadcast机制
4.spark accumulator机制
第2天 Spark Streaming、Spark SQL与DataFrame编程

第1单元
Spark Streaming入门
1.Spark Streaming典型应用场景:
Spark消费Kafka举例
2.Spark Streaming:
无状态应用 vs. 有状态应用
3.Spark Streaming vs. Flink
Spark Streaming和Flink的优缺点对比
4.Spark Streaming原理
5.综合案例实战:
案例1: kafka数据落入hdfs,各种实现方法分析
第2单元:
Spark SQL编程
1. Spark SQL vs. RDD
2. 基于DataFrame编程
(1)DataFrame背后的设计理念
(2)基于DataFrame的各种算子
3. 低阶算子 vs. 高阶算子
4. 从Spark到Flink:
Streaming SQL引入
5.Spark structure programming:
spark streaming SQL

第3单元
Spark SQL背后的原理
1.SQL语句如何转化为AST语法树?- Antlr框架介绍
2.AST如何转化为逻辑计划?
谓词下推、列裁剪
3.逻辑计划如何转化为物理计划?
4.物理计划转化为RDD?
第4单元
SQL UDF编程与背后原理
1.为什么要用UDF?
2.常规UDF写法
3.基于Expression的UDF实现
第3天 Spark常用优化技巧与内核剖析

第1单元
常用优化技巧
1.Spark调优的基本框架
2.看懂Spark Web UI与history UI的各种参数
3.常用优化技巧介绍:
(1)rdd复用
(2)谨慎使用shuffle算子
(3)合理配置spark任务参数
第2单元
优化专题1 - Spark SQL Join的几种不同实现方式与选择

1.Join的几种不同实现算法:
(1)单机3种Join算法:
Nested Loop Join
Sorted Merge Join
Hash Join
(2)分布式Join的2个策略
Shuffle
BroadCast
2.join hints – 选择不同的Join算法
第3单元
优化专题2 – 数据倾斜
1.为什么会有数据倾斜?
2.数据倾斜的几种不同优化方法:
(1)预计算
(2)提高并行度
(3)随机前缀打散
(4)小表广播
第4单元
Spark RDD内核剖析
1.源代码如何构建DAG图?
2.DAGScheduler内核剖析 –
DAGScheduler如何调度执行DAG?
3.TaskScheduler内核剖析 – TaskScheduler如何调度Task?
4.Executor内核剖析 – Executor如何执行Task?
第5单元
Spark sql内核剖析
1.sql如何变成AST语法树?
2.语法树变成逻辑计划?
3.逻辑计划变成物理计划?
4.物理计划变成RDD DAG图?
5.AQE 与 DPP
6.Tungsten – WSCG与向量化
第4天 机器学习与Spark ML
序言:从机器学习到深度学习
1.机器学习 vs. 深度学习
2.常用ML/深度学习库:sklearn/SparkML/tensorflow/pytorch
第1单元 常用机器学习算法1 – LR深入剖析
1.线性回归、最小2乘
2.从线性回归到逻辑回归:
交叉熵损失函数、梯度下降法
3.凸优化:梯度下降的直观解读
4.机器学习算法框架总结:
(1)定义模型
(2)定义损失函数
(3)损失函数最小化
第2单元 常用机器学习算法2 - 决策树深入剖析
1.决策树算法的基本思维
2.数据纯度的表达 – 方差、信息熵、Gini系数
3.ID3、C4.5、Cart
4.专题讨论:离散值划分问题
5.决策树的损失函数解读
第3单元 常用机器学习算法3 –
集成树 - 深入剖析
1.Bagging 与 Boosting
2.高数基础:复合函数求导
3.GBDT算法介绍
4.XGB算法介绍
5.lightGBM算法介绍
第4单元 Spark ML
1.Spark ML - LR例子
2.Spark ML - XGB例子
3.Spark ML – lightGBM例子

课程费用

6800.00 /人

课程时长

4

预约体验票 我要分享

近期公开课推荐

近期公开课推荐

提交需求