Skip to content

Commit 38a30f3

Browse files
committed
docs:新增spark streaming专栏
1 parent ddd64e8 commit 38a30f3

File tree

4 files changed

+204
-11
lines changed

4 files changed

+204
-11
lines changed

docs/.vuepress/config.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -961,7 +961,7 @@ module.exports = {
961961
}],
962962

963963
"/md/spark/": [{
964-
title: "Spark",
964+
title: "Spark SQL",
965965
collapsable: false,
966966
sidebarDepth: 0,
967967
children: [
@@ -976,6 +976,14 @@ module.exports = {
976976
"08-Spark SQL整合Hive",
977977
]
978978
},
979+
{
980+
title: "Spark Streaming",
981+
collapsable: false,
982+
sidebarDepth: 0,
983+
children: [
984+
"00-为啥要学习Spark Streaming.md",
985+
]
986+
},
979987
],
980988
}
981989
}

docs/md/other/guide-to-reading.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,9 @@ title: 目录
1616
> - 中央/分销预订系统性能优化
1717
> - 活动&优惠券等营销中台建设
1818
> - 交易平台及数据中台等架构和开发设计
19-
>
20-
> 目前主攻降低软件复杂性设计、构建高可用系统方向。
19+
> - 车联网核心平台-物联网连接平台、大数据平台架构设计及优化
20+
>
21+
> 目前主攻降低软件复杂性设计、构建高可用系统方向。
2122
2223
### 11来了
2324

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
# 00-为啥要学习Spark Streaming
2+
3+
本专栏从实时数据产生和流向的各个环节出发,通过集成主流的:
4+
5+
- 分布式日志收集框架Flume
6+
- 分布式消息队列Kafka
7+
- 分布式列式数据库HBase
8+
- 当前非常火爆的Spark Streaming
9+
10+
打造实时流处理项目实战,让你掌握实时处理的整套处理流程,达到大数据中级研发工程师的水平!
11+
12+
## 前提
13+
14+
适合有编程基础,想转行投身大数据行业的工程师,对你的学习能力及基础要求如下:
15+
16+
1、熟悉常用Linux命令的使用
17+
18+
2、掌握Hadoop、Spark的基本使用
19+
20+
3、至少熟悉一门编程语言Java/Scala/Python
21+
22+
#### 基于Flume+Kafka+Spark Streaming打造企业大数据流处理平台
23+
24+
流行框架打造通用平台,直接应用于企业项目:
25+
26+
- 处理流程剖析
27+
- 日志产生器
28+
- 使用Flume采集日志
29+
- 将Flume收集到的数据输出到Kafka
30+
- Spark Streaming消费Kafka的数据进行统计
31+
- Spark Streaming如何高效的读写数据到Hbase
32+
- 本地测试和生产环境使用的拓展
33+
- Java开发Spark要点拓展
34+
35+
## 原理+场景,彻底搞懂Spark Streaming
36+
37+
全面了解Spark Streaming的特性及场景应用,完成各个不同维度的统计分析。
38+
39+
#### 日志收集框架Flume
40+
41+
Flume架构及核心组件
42+
43+
Flume&JDK环境部署
44+
45+
Flume实战案例
46+
47+
#### 分布式消息队列Kafka
48+
49+
Kafka架构及核心概念 / Zookeeper安装
50+
51+
Kafka单、多broker部署及使用
52+
53+
Kafka Producer Java API编程
54+
55+
Kafka Consumer Java API编程
56+
57+
#### 1.入门
58+
59+
Spark Streaming概述及应用场景
60+
61+
Spark Streaming集成Spark生态系统使用
62+
63+
从词频统计功能着手入门Spark Streaming
64+
65+
Spark Streaming工作原理(粗/细粒度)
66+
67+
#### 2.核心
68+
69+
StreamingContext/Dstream
70+
71+
Input DStreams和Receivers
72+
73+
Transformation和Output Operations
74+
75+
Spark Streaming处理socket/文件系统数据
76+
77+
#### 3.进阶
78+
79+
updateStateByKey算子的使用
80+
81+
统计结果写入到MySQL数据库
82+
83+
窗口函数的使用、黑名单过滤
84+
85+
Spark Streaming整合Spark SQL操作
86+
87+
#### Streaming整合Flume
88+
89+
Push和Pull两种方式介绍
90+
91+
与Flume Agent配置
92+
93+
本地、服务器环境联调
94+
95+
整合Spark Streaming应用开发
96+
97+
#### Streaming整合Kafka
98+
99+
版本选择详解
100+
101+
Receiver和Direct两种方式
102+
103+
本地、服务器环境联调
104+
105+
整合Spark Streaming应用开发及测试
106+
107+
## 总结
108+
109+
渐进式学习让你彻底学会整套流程的开发
110+
111+
需求分析 → 数据清洗 → 数据统计分析 → 统计结果入库 → 数据可视化

docs/md/spark/为啥要学习Spark?.md

Lines changed: 81 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 为啥要学习Spark?
1+
# 00-为啥要学习Spark?
22

33
## 1 你将获得
44

@@ -30,20 +30,93 @@ Spark 还有那么火吗?会不会已经过时?若对此感到困惑,大
3030

3131
助你零基础上手 Spark 。这“三步走”方法论再配合 4 个不同场景的小项目,吴磊老师会从基本原理到项目落地,深入浅出玩转 Spark。
3232

33-
### 2.1 专栏模块设计
33+
## 3 专栏模块设计
3434

3535
结合 Spark 最常用的计算子框架,专栏设计为 4 个模块,它与“三步走”方法论的对应关系:
3636

3737
![](https://codeselect.oss-cn-shanghai.aliyuncs.com/image-20240321175835357.png)
3838

39-
**基础知识模块**:从“Word Count”开始,详解 RDD 常用算子的含义、用法与适用场景,以及 RDD 编程模型、调度系统、Shuffle 管理、内存管理等核心原理,帮你打下坚实的理论基础。
39+
### 3.1 基础知识模块
4040

41-
**Spark SQL 模块**:从“小汽车摇号”入手,熟悉 Spark SQL 开发 API,为你讲解 Spark SQL 的核心原理与优化过程,以及 Spark SQL 与数据分析有关的部分,如数据的转换、清洗、关联、分组、聚合、排序,等等
41+
从“Word Count”开始,详解 RDD 常用算子含义、用法与适用场景及 RDD 编程模型、调度系统、Shuffle 管理、内存管理等核心原理,打下坚实理论基础
4242

43-
**Spark MLlib 模块**:从“房价预测”入手,了解 Spark 在机器学习中的应用,深入学习 Spark MLlib 丰富的特征处理函数和它支持的模型与算法,并带你了解 Spark + XGBoost 集成是如何帮助开发者应对大多数的回归与分类问题。
43+
### 3.2 Spark SQL 模块
4444

45-
**Structured Streaming 模块**:重点讲解 Structured Streaming 是怎么同时保证语义一致性与数据一致性的,以及如何应对流处理中的数据关联,并通过 Kafka + Spark 这对“Couple”的系统集成,来演示流处理中的典型计算场景。
45+
五大知识板块,掌握大数据处理技术Spark SQL,每个大数据工程师都不应错过的必备大数据开发技能!
4646

47-
## 3 大纲
47+
熟悉 Spark SQL 开发 API,讲解 Spark SQL 的核心原理与优化过程,以及 Spark SQL 与数据分析有关的部分,如数据的转换、清洗、关联、分组、聚合、排序,等等。
4848

49-
![](https://codeselect.oss-cn-shanghai.aliyuncs.com/edcfb689e9ccc1a41ee4017641345f40-20240321175900046.jpg)
49+
![](https://codeselect.oss-cn-shanghai.aliyuncs.com/image-20240325160350635.png)
50+
51+
#### ① Spark SQL快速入门
52+
53+
- SQL on Hadoop
54+
- Spark SQL概述、架构、常见误区
55+
- spark-shell/spark-sql启动流程分析
56+
57+
#### ② Spark SQL API编程
58+
59+
- SparkSession & SQLContext
60+
- DataSet & DataFrame API
61+
- DataFrame & DataSet
62+
- 与RDD的互操作
63+
64+
#### ③ Data Source API
65+
66+
- Data Source API处理text/JSON/
67+
- Parquet/JDBC数据
68+
- SaveMode的正确选择
69+
- 配置参数统一管理
70+
71+
#### ④ 整合Hive操作及函数
72+
73+
- Spark整合Hive的数据操作
74+
- ThriftServer的使用
75+
- Spark SQL内置函数&自定义函数实战
76+
77+
##### 学学大牛如何调优与思考
78+
79+
学习技术受用一时,领悟思想受用一生!
80+
81+
Spark调优策略:
82+
83+
- 合理设置资源
84+
- 广播变量带来的好处
85+
- Shuffle调优
86+
- Spark与GC相关概念理解
87+
- JVM GC引起的相关问题调优
88+
89+
Presto:
90+
91+
- Presto概述、架构
92+
- Presto部署
93+
- Presto API操作
94+
- 综合案例实战
95+
96+
关于大数据云平台建设:
97+
98+
- 大数据云平台建设涉及哪些功能
99+
- 产品化设计思路
100+
- 元数据在大数据平台中的设计思路
101+
- Spark V.S Flink
102+
103+
另一个大纲:
104+
105+
- Spark SQL:从“小汽车摇号分析”开始
106+
107+
- 台前幕后:DataFrame与 Spark SQL 的由来
108+
- 数据源与数据格式:DataFrame 从何而来?
109+
- 数据转换:如何在 DataFrame 之上做数据处理?
110+
- 数据关联:不同的关联形式与实现机制该怎么选?
111+
- 数据关联优化:都有哪些 Join 策略,开发者该如何取舍?
112+
- 配置项详解:哪些参数会影响应用程序执行性能?
113+
- Hive + Spark 强强联合:分布式数仓的不二之选
114+
- Spark Ul:如何高效地定位性能问题?
115+
116+
### 3.3 Spark MLlib 模块
117+
118+
从“房价预测”入手,了解 Spark 在机器学习中的应用,深入学习 Spark MLlib 丰富的特征处理函数和它支持的模型与算法,并带你了解 Spark + XGBoost 集成是如何帮助开发者应对大多数的回归与分类问题。
119+
120+
### 3.4 Structured Streaming 模块
121+
122+
重点讲解 Structured Streaming 是怎么同时保证语义一致性与数据一致性的,以及如何应对流处理中的数据关联,并通过 Kafka + Spark 这对“Couple”的系统集成,来演示流处理中的典型计算场景。

0 commit comments

Comments
 (0)