第1章 Spark和Spark Streaming的安装与配置 1
安装Spark 2
硬件需求 2
软件需求 4
安装Spark扩展——Spark Streaming 7
配置和运行Spark集群 8
你的第一个Spark程序 11
用Scala编码Spark作业 12
用Java开发Spark作业 15
管理员/开发者工具 18
集群管理 18
提交Spark作业 19
故障定位 20
配置端口号 20
类路径问题——类没有发现 20
其他常见异常 20
总结 21
第2章 Spark和Spark Streaming的体系结构与组件 23
批处理和实时数据处理的比较 24
批处理 24
实时数据处理 26
Spark的体系结构 28
Spark对比Hadoop 28
Spark的层次化结构 29
Spark Streaming的体系结构 31
Spark Streaming是什么 32
Spark Streaming的上层体系结构 32
你的第一个Spark Streaming程序 34
用Scala编码Spark Streaming作业 34
用Java编码Spark Streaming作业 37
客户端程序 39
打包和部署一个Spark Streaming作业 41
总结 43
第3章 实时处理分布式日志文件 45
Spark的封装结构和客户端API 46
Spark内核 48
Spark库及扩展 54
弹性分布式数据集及离散流 58
弹性分布式数据集 59
离散流 63
从分布的、多样的数据源中加载数据 65
Flume框架 67
Flume的安装和配置 69
配置Spark以接收Flume事件 73
封装和部署Spark Streaming作业 77
分布式日志文件处理的总体架构 77
总结 78
第4章 在流数据中应用Transformation 79
理解并应用Transformation功能 80
模拟日志流 80
功能操作 82
转换操作 89
窗口操作 91
性能调优 94
分块和并行化 94
序列化 94
Spark内存调优 95
总结 97
第5章 日志分析数据的持久化 99
Spark Streaming的输出操作 100
集成Cassandra 110
安装和配置Apache Cassandra 110
配置Spark 112
通过编写Spark作业将流式网页日志存入Cassandra 113
总结 120
第6章 与Spark高级库集成 121
实时查询流数据 122
了解Spark SQL 122
集成Spark SQL与流数据 129
图的分析——Spark GraphX 135
GraphX API介绍 137
集成Spark Streaming 140
总结 147
第7章 产品部署 149
Spark部署模式 150
部署在Apache Mesos上 151
部署在Hadoop或者YARN上 156
高可用性和容错性 160
单机模式下的高可用性 160
Mesos或者YARN下的高可用性 162
容错性 162
Streaming作业的监听 166
应用程序UI界面/作业UI界面 166
与其他监控工具的集成 169
总结 170