Spark大数据技术与应用(Scala版)——基于Hadoop 3.3+Spark 3.5
定 价:59.8 元
- 作者:李新辉
- 出版时间:2026/1/1
- ISBN:9787121515477
- 出 版 社:电子工业出版社
- 中图法分类:TP274
- 页码:308
- 纸张:
- 版次:01
- 开本:16开
Spark 是业界主流的大数据计算框架,拥有强大的分布式计算能力,能够充分利用大量的廉价机器进行大数据的处理工作,同时又具备较高的性能,这使得它在各大互联网企业中有着广泛的应用。本书通过一系列通俗易懂的数据处理实例展开,详细阐述Spark大数据平台与环境搭建、Spark RDD 离线数据计算、Spark SQL离线数据处理、Spark Streaming流数据计算等一系列常见的大数据处理技术,在此基础上对Spark框架的核心概念及技术原理进行详细分析,最后通过一个综合实例展示Spark离线数据处理的具体应用与部署。本书将Scala基础知识的介绍融入实例中,并未像传统做法那样设置单独的章节,方便读者按需学习,以减轻学习一种新编程语言的压力。全书各环节遵循“做中学”的设计理念,内容编排贴近初学者的认知规律,从细小简单的实例入手,辅以大量配图,对学习过程中涉及的枯燥数据、抽象概念和复杂原理予以图示化的解释说明,还安排了大量单元训练,以达到教学过程中的“学以致用”目的,内容编写以语言浅显易懂、技术体系清晰、逻辑衔接合理、知识内容够用为原则。在最后安排的数据处理综合实例中,分别从需求分析、技术准备、数据清洗、需求实现、数据可视化等几个关键环节展开叙述,便于读者对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编程环境(Scala) 5
1.2.4 Spark应用程序基本原理 7
1.3 Spark大数据环境搭建 8
1.3.1 Linux操作系统安装和配置 8
1.Ubuntu虚拟机的安装 8
2.Ubuntu基本配置 19
3.vi编辑器 22
4.MobaXterm远程连接工具 24
1.3.2 Hadoop伪分布式集群环境搭建 28
1.JDK的安装与配置 28
2.Linux免密登录 31
3.Hadoop的安装 33
4.HDFS的配置 35
5.YARN的配置 38
6.HDFS和YARN的测试 39
1.3.3 Spark单机运行环境搭建 42
1.Spark的安装与配置 42
2.SparkShell交互式编程环境 44
3.Spark框架的目录结构 46
1.4 Scala核心语法概览 47
1.5 单元训练 50
第2章 Spark RDD离线数据计算 51
2.1 引言 52
2.2 RDD基本原理 52
2.3 RDD编程模型 54
2.4 Spark RDD常用操作 57
2.4.1 RDD的创建 57
1.通过集合元素创建RDD 57
2.通过文本文件创建RDD 60
2.4.2 RDD的转换操作 64
1.map数据转换 64
2.flatMap数据转换 70
3.filter数据筛选 72
4.sortBy数据排序 73
5.distinct数据去重 75
6.union数据合并 76
7.intersection数据交集 77
8.subtract数据差集 78
9.groupBy数据分组 79
10.groupByKey数据分组 80
11.reduceByKey数据归并 81
12.sortByKey数据排序 84
13.keys和values操作 85
14.mapValues和flatMapValues操作 86
2.4.3 RDD的行动操作 88
1.collect操作 88
2.take操作 89
3.first操作 90
4.count/countByValue操作 90
5.max/min/sum/mean操作 91
2.5 Spark RDD数据计算实例 91
2.5.1 词频统计实例 91
2.5.2 基本TopN问题实例 94
2.5.3 用户消费数据处理实例 98
2.6 Spark的文件读/写 101
2.6.1 文本文件的读/写 101
1.textFile读取文本数据 101
2.saveAsTextFile保存到文本文件中 102
2.6.2 SequenceFile文件的读/写 104
2.7 单元训练 105
第3章 Spark SQL离线数据处理 107
3.1 引言 108
3.2 DataFrame基本原理 108
3.3 Spark SQL常用操作 109
3.3.1 DataFrame的基本创建 109
1.使用集合创建DataFrame 109
2.使用CSV文件创建DataFrame 115
3.3.2 DataFrame的查看 117
3.3.3 DataFrame的数据操作(DSL) 121
1.DataFrame的数据查询 122
2.DataFrame的数据处理 128
3.3.4 DataFrame的数据操作(SQL) 135
1.DataFrame视图表的创建 136
2.DataFrame视图表的SQL查询 138
3.4 Spark SQL数据处理实例 147
3.4.1 人口信息统计实例 147
3.4.2 电影评分数据分析实例 150
3.5 DataFrame创建和保存 153
3.5.1 创建DataFrame 154
1.通过JSON文件创建DataFrame 154
2.通过Parquet文件创建DataFrame 155
3.5.2 保存DataFrame 155
3.6 RDD/DataFrame/Dataset类型转换 156
3.7 单元训练 164
第4章 Spark Streaming流数据计算 167
4.1 引言 167
4.2 Spark Streaming基本原理 168
4.3 Spark Streaming词频统计 169
4.3.1 Netcat网络工具测试 169
4.3.2 DStream词频统计 170
4.4 单元训练 172
第5章 Spark编程进阶 173
5.1 引言 174
5.2 搭建Spark应用开发环境 174
5.2.1 Scala编程环境 174
5.2.2 IntelliJ IDEA集成开发环境 176
5.3 理解RDD 190
5.3.1 RDD的基本概念 190
5.3.2 RDD的分区机制 192
5.3.3 RDD的依赖关系 193
1.窄依赖 194
2.宽依赖 194
5.3.4 RDD的计算调度 195
1.Job 195
2.Stage 197
3.Task 198
5.4 RDD缓存机制 201
5.5 广播变量和累加器 203
5.5.1 广播变量 203
5.5.2 累加器 205
5.6 Spark生态和应用架构 208
5.6.1 Spark生态架构 208
1.Spark Core组件 208
2.Spark SQL组件 209
3.Spark Streaming组件 209
4.MLlib组件 209
5.GraphX组件 209
5.6.2 Spark应用架构 210
1.Spark应用的基本原理 210
2.Spark应用程序 210
3.Spark应用程序的运行方式 212
5.7 Spark集群和应用部署 213
5.7.1 Spark伪分布式集群的搭建 213
5.7.2 Spark应用部署模式 219
1.Local模式 219
2.Spark Standalone模式 219
3.Spark on YARN模式 219
5.7.3 Spark应用部署实例 220
1.Local模式 221
2.Spark Standalone模式 222
3.Spark on YARN模式 226
4.Spark应用的部署参数 230
5.8 单元训练 232
第6章 Spark大数据分析项目实例 233
6.1 引言 233
6.2 CentOS7+JDK8虚拟机安装 234
6.3 Hadoop+Spark分布式集群环境 239
6.3.1 Hadoop+Spark Standalone分布式集群环境搭建 239
6.3.2 Hadoop+Spark on YARN分布式集群环境搭建 243
6.4 Spark离线数据处理实例 248
6.4.1 需求分析 248
6.4.2 准备工作 250
1.数据清洗(Pandas) 250
2.窗口操作(Spark SQL) 258
3.数据可视化(pyecharts) 264
6.4.3 美妆商品订单数据分析 268
1.创建Spark项目 268
2.订单数据处理分析 274
3.结果数据保存 284
6.4.4 美妆商品订单数据可视化 286
6.5 Spark数据分析实例部署 290
6.6 单元训练 296