Spark大数据分析实战
出版时间:
2020-07
ISBN:
9787302556954
-
本书基于Spark 2.4.x新版本编写,从Spark核心编程语言Scala讲起,涵盖当前整个Spark生态系统主流的大数据开发技术。全书共9章,第1章讲解Scala语言的基础知识,包括IDEA工具的使用等;第2章讲解Spark的主要组件、集群架构原理、集群环境搭建以及Spark应用程序的提交和运行;第3~9章讲解离线计算框架Spark RDD、Spark SQL和实时计算框架Kafka、Spark Streaming、Structured Streaming以及图计算框架GraphX等的基础知识、架构原理,同时包括常用Shell命令、API操作、内核源码剖析,并通过多个实际案例讲解各个框架的具体应用以及与Hadoop生态系统框架Hive、HBase、Kafka的整合操作。
本书内容丰富,以实操案例为主,理论为辅,可作为Spark新手的入门书,也可作为大数据开发人员和从业者的学习用书,还可以作为培训机构或大中专院校的教学用书。
张伟洋
大数据领域资深专家,拥有多年顶j互联网公司软件研发经验,曾在互联网旅游公司任软件研发事业部经理。目前从事大数据项目讲师工作,先后多次给各大高校举行大数据专题讲座,对Hadoop及周边大数据框架ZooKeeper、Hive、HBase、Storm、Spark、Flink等有着深入的研究。高等院校云计算与大数据专业课改教材《云计算与大数据概论》《大数据开发与应用》的主要编写者。
目 录
第1章 Spark开发准备――Scala基础 1
1.1 什么是SCALA 1
1.2 安装SCALA 2
1.2.1 在Windows中安装Scala 2
1.2.2 在CentOS 7中安装Scala 3
1.3 SCALA基础 4
1.3.1 变量声明 4
1.3.2 数据类型 5
1.3.3 表达式 7
1.3.4 循 环 8
1.3.5 方法与函数 10
1.4 集 合 14
1.4.1 数 组 14
1.4.2 List 16
1.4.3 Map映射 17
1.4.4 元 组 19
1.4.5 Set 20
1.5 类和对象 21
1.5.1 类的定义 21
1.5.2 单例对象 22
1.5.3 伴生对象 22
1.5.4 get和set方法 23
1.5.5 构造器 25
1.6 抽象类和特质 28
1.6.1 抽象类 28
1.6.2 特 质 30
1.7 使用ECLIPSE创建SCALA项目 31
1.7.1 安装Scala for Eclipse IDE 31
1.7.2 创建Scala项目 33
1.8 使用INTELLIJ IDEA创建SCALA项目 33
1.8.1 在IDEA中安装Scala插件 34
1.8.2 创建Scala项目 37
第2章 初识Spark 40
2.1 大数据开发总体架构 40
2.2 什么是SPARK 42
2.3 SPARK主要组件 43
2.4 SPARK运行时架构 45
2.4.1 YARN集群架构 45
2.4.2 Spark Standalone架构 49
2.4.3 Spark On YARN架构 50
2.5 SPARK集群搭建与测试 53
2.5.1 Spark Standalone模式的集群搭建 53
2.5.2 Spark On YARN模式的集群搭建 55
2.5.3 Spark HA的搭建 56
2.6 SPARK应用程序的提交 60
2.7 SPARK SHELL的使用 63
第3章 Spark RDD弹性分布式数据集 66
3.1 什么是RDD 66
3.2 创建RDD 67
3.2.1 从对象集合创建RDD 67
3.2.2 从外部存储创建RDD 68
3.3 RDD的算子 69
3.3.1 转化算子 69
3.3.2 行动算子 77
3.4 RDD的分区 78
3.4.1 分区数量 79
3.4.2 自定义分区器 88
3.5 RDD的依赖 93
3.5.1 窄依赖 94
3.5.2 宽依赖 94
3.5.3 Stage划分 95
3.6 RDD的持久化 97
3.6.1 存储级别 98
3.6.2 查看缓存 100
3.7 RDD的检查点 102
3.8 共享变量 104
3.8.1 广播变量 104
3.8.2 累加器 106
3.9 案例分析:SPARK RDD实现单词计数 107
3.10 案例分析:SPARK RDD实现分组求TOPN 116
3.11 案例分析:SPARK RDD实现二次排序 120
3.12 案例分析:SPARK RDD计算成绩平均分 124
3.13 案例分析:SPARK RDD倒排索引统计每日新增用户 126
3.14 案例分析:SPARK RDD读写HBASE 130
3.14.1 读取HBase表数据 131
3.14.2 写入HBase表数据 134
3.15 案例分析:SPARK RDD数据倾斜问题解决 143
3.15.1 数据倾斜的常用解决方法 144
3.15.2 使用随机key进行双重聚合 145
3.15.3 WebUI查看Spark历史作业 149
第4章 Spark内核源码分析 151
4.1 SPARK集群启动原理分析 151
4.2 SPARK应用程序提交原理分析 162
4.3 SPARK作业工作原理分析 175
4.3.1 MapReduce的工作原理 175
4.3.2 Spark作业工作的原理 177
4.4 SPARK检查点原理分析 191
第5章 Spark SQL结构化数据处理引擎 196
5.1 什么是SPARK SQL 196
5.2 DATAFRAME和DATASET 197
5.3 SPARK SQL的基本使用 198
5.4 SPARK SQL数据源 201
5.4.1 基本操作 201
5.4.2 Parquet文件 206
5.4.3 JSON数据集 209
5.4.4 Hive表 211
5.4.5 JDBC 213
5.5 SPARK SQL内置函数 214
5.5.1 自定义函数 216
5.5.2 自定义聚合函数 218
5.5.3 开窗函数 220
5.6 案例分析:使用SPARK SQL实现单词计数 223
5.7 案例分析:SPARK SQL与HIVE整合 228
5.7.1 整合Hive的步骤 228
5.7.2 操作Hive的几种方式 231
5.8 案例分析:SPARK SQL读写MYSQL 233
5.9 案例分析:SPARK SQL每日UV统计 238
5.10 案例分析:SPARK SQL热点搜索词统计 241
5.11 综合案例:SPARK SQL智慧交通数据分析 244
5.11.1 项目介绍 244
5.11.2 数据准备 246
5.11.3 统计正常卡口数量 249
5.11.4 统计车流量排名前3的卡口号 249
5.11.5 统计车辆高速通过的卡口TOP5 250
5.11.6 统计每个卡口通过速度最快的前3辆车 254
5.11.7 车辆轨迹分析 255
第6章 Kafka分布式消息系统 256
6.1 什么是KAFKA 256
6.2 KAFKA架构 257
6.3 主题与分区 259
6.4 分区副本 260
6.5 消费者组 262
6.6 数据存储机制 264
6.7 集群环境搭建 266
6.8 命令行操作 268
6.8.1 创建主题 268
6.8.2 查询主题 269
6.8.3 创建生产者 269
6.8.4 创建消费者 270
6.9 JAVA API操作 271
6.9.1 创建Java工程 271
6.9.2 创建生产者 271
6.9.3 创建消费者 273
6.9.4 运行程序 275
6.10 案例分析:KAFKA生产者拦截器 277
第7章 Spark Streaming实时流处理引擎 285
7.1 什么是SPARK STREAMING 285
7.2 SPARK STREAMING工作原理 286
7.3 输入DSTREAM和RECEIVER 287
7.4 第一个SPARK STREAMING程序 288
7.5 SPARK STREAMING数据源 290
7.5.1 基本数据源 290
7.5.2 高级数据源 292
7.5.3 自定义数据源 293
-
内容简介:
本书基于Spark 2.4.x新版本编写,从Spark核心编程语言Scala讲起,涵盖当前整个Spark生态系统主流的大数据开发技术。全书共9章,第1章讲解Scala语言的基础知识,包括IDEA工具的使用等;第2章讲解Spark的主要组件、集群架构原理、集群环境搭建以及Spark应用程序的提交和运行;第3~9章讲解离线计算框架Spark RDD、Spark SQL和实时计算框架Kafka、Spark Streaming、Structured Streaming以及图计算框架GraphX等的基础知识、架构原理,同时包括常用Shell命令、API操作、内核源码剖析,并通过多个实际案例讲解各个框架的具体应用以及与Hadoop生态系统框架Hive、HBase、Kafka的整合操作。
本书内容丰富,以实操案例为主,理论为辅,可作为Spark新手的入门书,也可作为大数据开发人员和从业者的学习用书,还可以作为培训机构或大中专院校的教学用书。
-
作者简介:
张伟洋
大数据领域资深专家,拥有多年顶j互联网公司软件研发经验,曾在互联网旅游公司任软件研发事业部经理。目前从事大数据项目讲师工作,先后多次给各大高校举行大数据专题讲座,对Hadoop及周边大数据框架ZooKeeper、Hive、HBase、Storm、Spark、Flink等有着深入的研究。高等院校云计算与大数据专业课改教材《云计算与大数据概论》《大数据开发与应用》的主要编写者。
-
目录:
目 录
第1章 Spark开发准备――Scala基础 1
1.1 什么是SCALA 1
1.2 安装SCALA 2
1.2.1 在Windows中安装Scala 2
1.2.2 在CentOS 7中安装Scala 3
1.3 SCALA基础 4
1.3.1 变量声明 4
1.3.2 数据类型 5
1.3.3 表达式 7
1.3.4 循 环 8
1.3.5 方法与函数 10
1.4 集 合 14
1.4.1 数 组 14
1.4.2 List 16
1.4.3 Map映射 17
1.4.4 元 组 19
1.4.5 Set 20
1.5 类和对象 21
1.5.1 类的定义 21
1.5.2 单例对象 22
1.5.3 伴生对象 22
1.5.4 get和set方法 23
1.5.5 构造器 25
1.6 抽象类和特质 28
1.6.1 抽象类 28
1.6.2 特 质 30
1.7 使用ECLIPSE创建SCALA项目 31
1.7.1 安装Scala for Eclipse IDE 31
1.7.2 创建Scala项目 33
1.8 使用INTELLIJ IDEA创建SCALA项目 33
1.8.1 在IDEA中安装Scala插件 34
1.8.2 创建Scala项目 37
第2章 初识Spark 40
2.1 大数据开发总体架构 40
2.2 什么是SPARK 42
2.3 SPARK主要组件 43
2.4 SPARK运行时架构 45
2.4.1 YARN集群架构 45
2.4.2 Spark Standalone架构 49
2.4.3 Spark On YARN架构 50
2.5 SPARK集群搭建与测试 53
2.5.1 Spark Standalone模式的集群搭建 53
2.5.2 Spark On YARN模式的集群搭建 55
2.5.3 Spark HA的搭建 56
2.6 SPARK应用程序的提交 60
2.7 SPARK SHELL的使用 63
第3章 Spark RDD弹性分布式数据集 66
3.1 什么是RDD 66
3.2 创建RDD 67
3.2.1 从对象集合创建RDD 67
3.2.2 从外部存储创建RDD 68
3.3 RDD的算子 69
3.3.1 转化算子 69
3.3.2 行动算子 77
3.4 RDD的分区 78
3.4.1 分区数量 79
3.4.2 自定义分区器 88
3.5 RDD的依赖 93
3.5.1 窄依赖 94
3.5.2 宽依赖 94
3.5.3 Stage划分 95
3.6 RDD的持久化 97
3.6.1 存储级别 98
3.6.2 查看缓存 100
3.7 RDD的检查点 102
3.8 共享变量 104
3.8.1 广播变量 104
3.8.2 累加器 106
3.9 案例分析:SPARK RDD实现单词计数 107
3.10 案例分析:SPARK RDD实现分组求TOPN 116
3.11 案例分析:SPARK RDD实现二次排序 120
3.12 案例分析:SPARK RDD计算成绩平均分 124
3.13 案例分析:SPARK RDD倒排索引统计每日新增用户 126
3.14 案例分析:SPARK RDD读写HBASE 130
3.14.1 读取HBase表数据 131
3.14.2 写入HBase表数据 134
3.15 案例分析:SPARK RDD数据倾斜问题解决 143
3.15.1 数据倾斜的常用解决方法 144
3.15.2 使用随机key进行双重聚合 145
3.15.3 WebUI查看Spark历史作业 149
第4章 Spark内核源码分析 151
4.1 SPARK集群启动原理分析 151
4.2 SPARK应用程序提交原理分析 162
4.3 SPARK作业工作原理分析 175
4.3.1 MapReduce的工作原理 175
4.3.2 Spark作业工作的原理 177
4.4 SPARK检查点原理分析 191
第5章 Spark SQL结构化数据处理引擎 196
5.1 什么是SPARK SQL 196
5.2 DATAFRAME和DATASET 197
5.3 SPARK SQL的基本使用 198
5.4 SPARK SQL数据源 201
5.4.1 基本操作 201
5.4.2 Parquet文件 206
5.4.3 JSON数据集 209
5.4.4 Hive表 211
5.4.5 JDBC 213
5.5 SPARK SQL内置函数 214
5.5.1 自定义函数 216
5.5.2 自定义聚合函数 218
5.5.3 开窗函数 220
5.6 案例分析:使用SPARK SQL实现单词计数 223
5.7 案例分析:SPARK SQL与HIVE整合 228
5.7.1 整合Hive的步骤 228
5.7.2 操作Hive的几种方式 231
5.8 案例分析:SPARK SQL读写MYSQL 233
5.9 案例分析:SPARK SQL每日UV统计 238
5.10 案例分析:SPARK SQL热点搜索词统计 241
5.11 综合案例:SPARK SQL智慧交通数据分析 244
5.11.1 项目介绍 244
5.11.2 数据准备 246
5.11.3 统计正常卡口数量 249
5.11.4 统计车流量排名前3的卡口号 249
5.11.5 统计车辆高速通过的卡口TOP5 250
5.11.6 统计每个卡口通过速度最快的前3辆车 254
5.11.7 车辆轨迹分析 255
第6章 Kafka分布式消息系统 256
6.1 什么是KAFKA 256
6.2 KAFKA架构 257
6.3 主题与分区 259
6.4 分区副本 260
6.5 消费者组 262
6.6 数据存储机制 264
6.7 集群环境搭建 266
6.8 命令行操作 268
6.8.1 创建主题 268
6.8.2 查询主题 269
6.8.3 创建生产者 269
6.8.4 创建消费者 270
6.9 JAVA API操作 271
6.9.1 创建Java工程 271
6.9.2 创建生产者 271
6.9.3 创建消费者 273
6.9.4 运行程序 275
6.10 案例分析:KAFKA生产者拦截器 277
第7章 Spark Streaming实时流处理引擎 285
7.1 什么是SPARK STREAMING 285
7.2 SPARK STREAMING工作原理 286
7.3 输入DSTREAM和RECEIVER 287
7.4 第一个SPARK STREAMING程序 288
7.5 SPARK STREAMING数据源 290
7.5.1 基本数据源 290
7.5.2 高级数据源 292
7.5.3 自定义数据源 293
查看详情
-
九五品
四川省成都市
平均发货11小时
成功完成率92.94%
-
全新
河北省保定市
平均发货29小时
成功完成率84.97%
-
全新
河北省保定市
平均发货20小时
成功完成率86.81%
-
全新
河北省保定市
平均发货29小时
成功完成率85.48%
-
全新
广东省广州市
平均发货20小时
成功完成率86.47%
-
全新
四川省成都市
平均发货61小时
成功完成率83.3%
-
全新
河北省保定市
平均发货37小时
成功完成率86.47%
-
全新
北京市丰台区
平均发货23小时
成功完成率88.57%
-
全新
天津市西青区
平均发货14小时
成功完成率90.42%
-
全新
北京市朝阳区
平均发货11小时
成功完成率85.3%
-
全新
江苏省宿迁市
平均发货25小时
成功完成率87.66%
-
全新
四川省成都市
平均发货15小时
成功完成率80.31%
-
全新
山东省泰安市
平均发货24小时
成功完成率92.51%
-
全新
江苏省苏州市
平均发货9小时
成功完成率95.75%
-
全新
四川省成都市
平均发货23小时
成功完成率91.01%
-
全新
北京市丰台区
平均发货27小时
成功完成率91.37%
-
全新
北京市朝阳区
平均发货20小时
成功完成率82.64%
-
全新
天津市西青区
平均发货14小时
成功完成率90.42%
-
全新
河北省保定市
平均发货23小时
成功完成率90.59%
-
全新
四川省成都市
平均发货15小时
成功完成率91.64%
-
全新
江苏省南京市
平均发货16小时
成功完成率82.85%
-
全新
北京市西城区
平均发货29小时
成功完成率90.38%
-
九五品
北京市东城区
平均发货22小时
成功完成率66.67%
-
全新
河北省保定市
平均发货28小时
成功完成率86.09%
-
九五品
北京市朝阳区
平均发货27小时
成功完成率85.69%
-
全新
北京市房山区
平均发货28小时
成功完成率83.74%
-
全新
河北省保定市
平均发货17小时
成功完成率82.71%
-
全新
北京市房山区
平均发货26小时
成功完成率71.13%
-
Spark大数据分析实战
数据库 "基于Spark 2.4.x新版本编撰,通俗易懂,无痛上手
结合丰富案例详解Spark生态系统主流的大数据处理技术" 新华书店全新正版书籍
全新
江苏省无锡市
平均发货8小时
成功完成率95.83%
-
正版现货 Spark大数据分析实战
数据库 "基于Spark 2.4.x新版本编撰,通俗易懂,无痛上手
结合丰富案例详解Spark生态系统主流的大数据处理技术" 新华书店全新正版书籍
全新
北京市东城区
平均发货30小时
成功完成率83.91%
-
全新
北京市丰台区
平均发货8小时
成功完成率90.33%
-
全新
四川省成都市
平均发货17小时
成功完成率80.06%
-
全新
河北省保定市
平均发货26小时
成功完成率89.65%
-
全新
江苏省无锡市
平均发货10小时
成功完成率92.91%
-
全新
河北省保定市
平均发货15小时
成功完成率91.13%
-
全新
江苏省南京市
平均发货16小时
成功完成率82.85%
-
全新
江苏省南京市
平均发货8小时
成功完成率96.65%
-
九五品
福建省泉州市
平均发货17小时
成功完成率95.25%
-
全新
北京市通州区
平均发货10小时
成功完成率88.5%
-
全新
江苏省无锡市
平均发货18小时
成功完成率94.47%
-
全新
北京市朝阳区
平均发货9小时
成功完成率96.79%
-
全新
北京市顺义区
平均发货15小时
成功完成率94.32%
-
全新
天津市河东区
平均发货29小时
成功完成率90.01%
-
全新
北京市通州区
平均发货11小时
成功完成率94.13%
-
全新
江苏省南京市
平均发货7小时
成功完成率97.83%
-
全新
北京市朝阳区
平均发货19小时
成功完成率84.99%
-
全新
北京市海淀区
平均发货20小时
成功完成率86.09%
-
全新
山东省泰安市
平均发货9小时
成功完成率88.01%
-
全新
北京市朝阳区
平均发货14小时
成功完成率85.35%
-
全新
北京市通州区
平均发货17小时
成功完成率96.19%