《Spark大数据平台应用实战》掌握Spark大数据时代任你兴风作浪

2018 年 11 月 6 日 炼数成金订阅号

对于一个具有相当技术门槛与复杂度的平台,Spark从诞生到正式版本的成熟,经历的时间如此之短,让人惊诧。2009年,Spark诞生于伯克利大学AMPLab,于2010年正式开源,2013年成为了Apache基金项目,2014年成为Apache基金的较高级项目,整个过程不到五年时间。


2015年是Spark飞速发展的一年,Spark成为了现在大数据领域最火的开源软件,截止2015年,Spark的Contributor比2014年涨了3倍,达到730人;总代码行数也比2014年涨了2倍多,达到40万行,不但大量的互联网企业已经在使用或者正准备使用Spark,而且大量的电信、金融、证券和传统企业已经开始引入了Spark。


学习它并掌握它,是大数据风口下IT人的必备技能。本课程全程将通过以下内容的实战演练,带你玩转Spark!


本课程将会结合精典案例讲解Spark Job的整个生命周期,以及如何划分Stage,如何生成逻辑执行计划和物理执行计划。从Hash Shuffle到Sort Shuffle再到Tungsten Sort Shuffle详细分析Spark Shuffle机制的原理与演进,同时结合Yarn分析Spark的内存模型以及如何进行相关调优,其中两节课主要介绍Spark Streaming使用方式,分析通用流式处理系统的关键问题以及Spark Streaming对相应问题的解决方案,如窗口,乱序,Checkpoint等,并分析Spark Streaming与Storm和Kafka Stream各自的优缺点和适用场景。


最后将结合源码分析Spark SQL的原理,以及实现SQL引擎的一般方法,介绍如何进行Spark SQL性能优化。并结合大量真实案例,分析如何解决数据倾斜问题从而提高应用性能。


课程大纲:

第一课. Spark背景介绍与安装部署

             1.1 Spark在大数据生态中的定位

             1.2 Spark主要模块介绍

             1.3 Spark部署模型介绍

             1.4 Spark基于Ambari的安装

             1.5 Spark Standalone下的HA


第二课. 基于Java的Spark编程入门

             2.1 Spark应用中的术语介绍

             2.2 交互式工具spark-shell

             2.3 从Word Count看Spark编程

             2.4 spark-submit的几种用法


第三课 Spark常用算子介绍

             3.1 transform与action

             3.2 广播变量与累加器

             3.3 persist与checkpoint

             3.4 数据本地性(Data locality)


第四课. 一个Spark应用的一生

             4.1 Spark应用的Stage划分

             4.2 窄依赖 vs. Shuffle依赖

             4.3 Job逻辑执行计划

             4.4 Job物理执行计划


第五课. Shuffle机制变迁

             5.1 Hadoop Shuffle方案

             5.2 Spark Hash Shuffle

             5.3 Spark Sort Shuffle

             5.4 Spark Tungsten Sort Shuffle


第六课. Spark SQL实战

             6.1 Spark SQL前世今生

             6.2 RDD vs. Dataframe vs. Dataset

             6.3 使用外部数据源

             6.4 连接metastore

             6.5 自定义函数

             6.6 spark-sql与Spark thrift server


第七课. Spark SQL原理

             7.1 Spark SQL执行过程解析

             7.2 Catalyst原理

             7.3 SQL引擎原理

             7.4 Spark SQL优化


第八课. 例讲数据倾斜解决方案

             8.1 为何需要处理数据倾斜

             8.2 调整并行度,分散同一Task的不同Key

             8.3 自定义Partitioner,分散同一Task的不同Key

             8.4 Map Join代替Reduce Join消除数据倾斜

             8.5 为倾斜key增加随机前缀

             8.6 大表增加随机前缀,小表扩容


第九课. Spark Streaming上

             9.1 Spark Streaming示例

             9.2 流式系统关键问题分析

             9.3 Window操作

             9.4 如何在流数据上做Join

             9.5 Checkpoint机制


第十课. Spark Streaming下

             10.1 如何处理数据乱序问题

             10.2 Spark Streaming容错机制

             10.3 Spark与Kafka实现Exactly once

             10.4 Spark Streaming vs. Storm vs. Kafka Stream

             10.5 Spark Streaming性能优化

             10.6 Structured Streaming


第十一课. Spark MLlib

             11.1 Pipeline

             11.2 特征工程

             11.3 模型选择

             11.4 调优


第十二课. Spark优化

             12.1 应用代码优化

             12.2 Spark统一内存模型

             12.3 基于YARN的参数优化

             12.4 其它优化项


授课时间:

课程预计2018年11月6日开课,预计课程持续时间为14周


授课对象:

Java开发转大数据开发

具有一定Hadoop或其它分布式应用基础,转Spark开发

希望在Spark开发和原理上有所提升的大数据开发人员 


课程环境:

Spark 2.1、Hadoop 2.7.3+


收获预期:

1. 掌握Spark核心原理,包括但不限于Spark Job的执行过程,Shuffle机制

2. 了解如何对Spark Job进行性能优化,包括但不限于参数调优,数据倾斜优化,应用代码调优

3. 掌握Spark Streaming的原理及使用方式,并掌握如何结合Spark Streaming和Kafka实现正好一次处理语义

4. 了解流式处理系统的常见问题和解决方案 


授课讲师:

郭俊(Jason),就职某大型互联网公司,多年Kafka和Hadoop及Spark研究、应用及调优经验。现从事大数据平台(集群规模两万加)优化工作。

个人博客: http://www.jasongj.com

微信公众号: 大数据架构


点击下方二维码或阅读原文报名课程:

登录查看更多
1

相关内容

Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【阿里技术干货】知识结构化在阿里小蜜中的应用
专知会员服务
97+阅读 · 2019年12月14日
【大数据白皮书 2019】中国信息通信研究院
专知会员服务
137+阅读 · 2019年12月12日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
87+阅读 · 2019年11月25日
40张PPT,帮你轻松入门Spark大数据!BAT架构师制作!
七月在线实验室
19+阅读 · 2019年5月27日
干货 | 机器学习怎么从入门到不放弃!
THU数据派
6+阅读 · 2018年6月8日
深度学习时代的目标检测算法
炼数成金订阅号
39+阅读 · 2018年3月19日
大数据流处理平台的技术选型参考
架构文摘
4+阅读 · 2018年3月14日
Spark机器学习:矩阵及推荐算法
LibRec智能推荐
16+阅读 · 2017年8月3日
Spark App自动化分析和故障诊断
CSDN大数据
7+阅读 · 2017年6月22日
Arxiv
102+阅读 · 2020年3月4日
Arxiv
30+阅读 · 2019年3月13日
Arxiv
5+阅读 · 2017年7月23日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关资讯
40张PPT,帮你轻松入门Spark大数据!BAT架构师制作!
七月在线实验室
19+阅读 · 2019年5月27日
干货 | 机器学习怎么从入门到不放弃!
THU数据派
6+阅读 · 2018年6月8日
深度学习时代的目标检测算法
炼数成金订阅号
39+阅读 · 2018年3月19日
大数据流处理平台的技术选型参考
架构文摘
4+阅读 · 2018年3月14日
Spark机器学习:矩阵及推荐算法
LibRec智能推荐
16+阅读 · 2017年8月3日
Spark App自动化分析和故障诊断
CSDN大数据
7+阅读 · 2017年6月22日
相关论文
Arxiv
102+阅读 · 2020年3月4日
Arxiv
30+阅读 · 2019年3月13日
Arxiv
5+阅读 · 2017年7月23日
Arxiv
5+阅读 · 2015年9月14日
Top
微信扫码咨询专知VIP会员