Spark大数据分析与实战(Python+PySpark)(微课版)
定 价:59.8 元
- 作者:李新辉
- 出版时间:2024/2/1
- ISBN:9787121472770
- 出 版 社:电子工业出版社
- 中图法分类:TP274
- 页码:308
- 纸张:
- 版次:01
- 开本:16开
Spark是业界主流的大数据计算框架。本书通过一系列大数据应用案例和实践项目贯穿始终,使用Python详细阐述了 Spark 大数据环境的搭建、Spark RDD 离线数据计算、Spark SQL 离线数据处理、Spark Streaming实时数据计算等一系列常见的大数据处理问题,并在此基础上对Spark的核心概念及技术原理进行了详细分析,最后以两个综合案例分别展示了Spark离线数据处理和实时数据处理的具体应用与部署。本书践行“做中学”的设计理念,内容编排符合学习与认知规律,从简单细小案例入手,辅以大量配图对学习过程中涉及的枯燥数据、抽象概念和复杂原理进行图示化说明,语言浅显易懂,技术体系清晰,逻辑衔接合理。在本书最后两个综合案例中,分别从需求分析、技术准备、数据清洗、需求实现、数据可视化等几个关键环节展开叙述,便于读者对Spark大数据项目的整体开发流程有一个比较清晰的认识。
李新辉,男,硕士,毕业于南昌大学计算机应用技术专业,2006年开始从事计算机相关课程的教育教学,从事大数学技术专业的课程教学工作。
第1章 Spark大数据平台与环境搭建 1
1.1 引言 2
1.2 Spark大数据平台介绍 2
1.2.1 Spark是什么 2
1.2.2 Spark与大数据的应用场景 4
1.2.3 Spark编程环境(PySpark) 5
1.2.4 Spark应用程序原理 7
1.3 Spark大数据环境搭建 8
1.3.1 Linux操作系统安装和配置 8
1.3.2 Hadoop伪分布集群环境搭建 23
1.3.3 Spark单机运行环境搭建 35
1.4 Python核心语法概览 47
1.5 单元训练 49
第2章 Spark RDD离线数据计算 50
2.1 引言 51
2.2 RDD基本原理 51
2.3 RDD编程模型 53
2.4 Spark RDD常用操作 55
2.4.1 RDD的创建 55
2.4.2 RDD的转换操作 60
2.4.3 RDD的行动操作 87
2.5 Spark RDD数据计算实例 90
2.5.1 词频统计案例 90
2.5.2 基本TopN问题案例 92
2.5.3 用户消费数据处理案例 95
2.6 Spark文件的读/写 96
2.6.1 文本文件的读/写 96
2.6.2 SequenceFile文件的读/写 99
2.7 单元训练 99
第3章 Spark SQL离线数据处理 101
3.1 引言 101
3.2 DataFrame基本原理 102
3.3 Spark SQL常用操作 103
3.3.1 DataFrame的基本创建 103
3.3.2 DataFrame的查看 108
3.3.3 DataFrame的数据操作(DSL) 111
3.3.4 DataFrame的数据操作(SQL) 123
3.4 Spark SQL数据处理实例 136
3.4.1 词频统计案例 136
3.4.2 人口信息统计案例 137
3.4.3 电影评分数据分析案例 139
3.5 Spark SQL访问数据库 143
3.5.1 在Linux操作系统上安装MySQL 143
3.5.2 DataFrame写入MySQL 145
3.5.3 从MySQL中创建DataFrame 147
3.6 DataFrame创建和保存 147
3.6.1 创建DataFrame 148
3.6.2 保存DataFrame 149
3.7 Spark的数据类型转换 150
3.8 单元训练 152
第4章 Spark Streaming实时数据计算 155
4.1 引言 156
4.2 Spark Streaming基本原理 156
4.3 Spark Streaming词频统计 157
4.3.1 Netcat网络工具测试 157
4.3.2 DStream词频统计 158
4.4 DStream数据转换操作 161
4.4.1 DStream无状态转换操作 161
4.4.2 DStream基于状态更新的转换 162
4.4.3 DStream基于滑动窗口的转换 164
4.5 DStream输出操作 166
4.6 DStream数据源读取 168
4.6.1 读取文件数据流 168
4.6.2 读取Kafka数据流 169
4.7 单元训练 176
第5章 Spark编程进阶 177
5.1 引言 177
5.2 搭建PySpark开发环境 178
5.2.1 PySpark交互式编程环境 178
5.2.2 Jupyter Notebook编程环境 180
5.2.3 PyCharm集成开发环境 183
5.3 理解RDD 188
5.3.1 RDD基本概念 188
5.3.2 RDD的分区 190
5.3.3 RDD的依赖关系 191
5.3.4 RDD的计算调度 193
5.4 RDD缓存机制 199
5.5 广播变量和累加器 201
5.5.1 广播变量 201
5.5.2 累加器 203
5.6 Spark生态和应用架构 206
5.6.1 Spark生态架构 206
5.6.2 Spark应用架构 208
5.7 Spark集群和应用部署 211
5.7.1 Spark伪分布集群的搭建 211
5.7.2 Spark应用部署模式 216
5.7.3 Spark应用部署实例 219
5.8 单元训练 227
第6章 Spark大数据分析项目实例 228
6.1 引言 228
6.2 CentOS7+JDK8虚拟机安装 229
6.3 Hadoop+Spark分布式集群环境 235
6.3.1 Hadoop+Spark Standalone分布式集群环境搭建 235
6.3.2 Hadoop+Spark on YARN分布式集群环境搭建 239
6.4 Spark离线数据处理实例 244
6.4.1 需求分析 244
6.4.2 准备工作 246
6.4.3 美妆商品订单数据分析 263
6.4.4 美妆商品订单数据可视化 280
6.5 Spark实时数据处理实例 286
6.5.1 需求分析 286
6.5.2 准备工作 287
6.5.3 通话记录生产者模拟 289
6.5.4 消息接收者测试 291
6.5.5 Spark Streaming通话记录消息处理 294
6.6 Spark数据分析案例部署 298