更新时间:2023-07-17 19:33:04
封面
版权信息
内容简介
作者简介
前言
第1章 Spark开发准备——Scala基础
1.1 什么是Scala
1.2 安装Scala
1.2.1 在Windows中安装Scala
1.2.2 在CentOS 7中安装Scala
1.3 Scala基础
1.3.1 变量声明
1.3.2 数据类型
1.3.3 表达式
1.3.4 循环
1.3.5 方法与函数
1.4 集合
1.4.1 数组
1.4.2 List
1.4.3 Map映射
1.4.4 元组
1.4.5 Set
1.5 类和对象
1.5.1 类的定义
1.5.2 单例对象
1.5.3 伴生对象
1.5.4 get和set方法
1.5.5 构造器
1.6 抽象类和特质
1.6.1 抽象类
1.6.2 特质
1.7 使用Eclipse创建Scala项目
1.7.1 安装Scala for Eclipse IDE
1.7.2 创建Scala项目
1.8 使用IntelliJ IDEA创建Scala项目
1.8.1 在IDEA中安装Scala插件
1.8.2 创建Scala项目
1.9 动手练习
第2章 初识Spark
2.1 大数据开发的总体架构
2.2 什么是Spark
2.3 Spark的主要组件
2.4 Spark运行架构
2.4.1 YARN集群架构
2.4.2 Spark Standalone架构
2.4.3 Spark On YARN架构
2.5 Spark集群搭建与测试
2.5.1 Spark Standalone模式的集群搭建
2.5.2 Spark On YARN模式的集群搭建
2.5.3 Spark HA的搭建
2.6 Spark应用程序的提交
2.7 Spark Shell的使用
2.8 动手练习
第3章 Spark RDD弹性分布式数据集
3.1 什么是RDD
3.2 创建RDD
3.2.1 从对象集合创建RDD
3.2.2 从外部存储创建RDD
3.3 RDD的算子
3.3.1 转化算子
3.3.2 行动算子
3.4 RDD的分区
3.4.1 分区数量
3.4.2 自定义分区器
3.5 RDD的依赖
3.5.1 窄依赖
3.5.2 宽依赖
3.5.3 Stage划分
3.6 RDD的持久化
3.6.1 存储级别
3.6.2 查看缓存
3.7 RDD的检查点
3.8 共享变量
3.8.1 广播变量
3.8.2 累加器
3.9 案例分析:Spark RDD实现单词计数
3.9.1 新建Maven管理的Spark项目
3.9.2 编写WordCount程序
3.9.3 提交程序到集群
3.10 案例分析:Spark RDD实现分组求TopN
3.11 案例分析:Spark RDD实现二次排序
3.12 案例分析:Spark RDD计算成绩平均分
3.13 案例分析:Spark RDD倒排索引统计每日新增用户
3.14 案例分析:Spark RDD读写HBase
3.14.1 读取HBase表数据
3.14.2 写入HBase表数据
3.15 案例分析:Spark RDD数据倾斜问题的解决
3.15.1 数据倾斜的常用解决方法
3.15.2 使用随机key进行双重聚合
3.15.3 WebUI查看Spark历史作业
3.16 动手练习
第4章 Spark内核源码分析
4.1 Spark集群启动原理分析
4.2 Spark应用程序提交原理分析
4.3 Spark作业工作原理分析
4.3.1 MapReduce的工作原理
4.3.2 Spark作业的工作原理
4.4 Spark检查点原理分析
第5章 Spark SQL结构化数据处理引擎
5.1 什么是Spark SQL