打开主菜单

求真百科

SparkStreaming实时流式大数据处理实战

来自 孔夫子网 的图片

SparkStreaming实时流式大数据处理实战》,肖力涛 著,出版社: 机械工业出版社。

机械工业出版社成立于1950年,是建国后国家设立的第一家科技出版社,前身为科学技术出版社,1952年更名为机械工业出版社[1]。机械工业出版社(以下简称机工社)由机械工业信息研究院作为主办单位,目前隶属于国务院国资委[2]

目录

内容简介

本书以透彻的原理分析和充实的实例代码详解,全面阐述了Spark Streaming流式处理平台的相关知识,能够让读者快速掌握如何搭建Spark平台,然后在此基础上学习流式处理框架,并动手实践进行Spark Streaming流式应用的开发,包括与主流平台框架的对接应用,以及项目实战中的一些开发和调优策略等。

本书共10章,分为3篇。*1篇为Spark基础,主要阐述了Spark的基本原理、平台搭建及实例应用;*2篇为Spark Streaming详解,阐述了Spark Streaming的基本原理,并重点介绍了Spark Streaming与Kafka、ZooKeeper、MySQL、HBase和Redis的配合使用、相关调优策略及实际应用;第3篇为Spark Streaming案例实战,主要介绍了实时词频统计处理、用户行为统计和监控报警系统3个实战案例,帮助读者进行实战演练,提升读者的实际项目开发水平。另外,本书附录还对Scala语言基础做了简要讲解。 本书内容理论结合实战,特别适合大数据技术爱好者及相关从业人员阅读,也可作为他们的常备工具书使用。另外,本书也适合作为大数据培训机构及高校相关专业的教材使用。

目录

前言 *1篇 Spark基础 *1章 初识Spark2 1.1 Spark由来3 1.2 流式处理与Spark Streaming5 1.2.1 流式处理框架5 1.2.2 Spark Streaming初识7 1.2.3 Structed Streaming简述8 1.3 本章小结8 *2章 Spark运行与开发环境9 2.1 Spark的下载与安装9 2.2 Spark运行模式10 2.2.1 本地模式13 2.2.2 本地集群模式13前言

  • 1篇 Spark基础
  • 1章 初识Spark2

1.1 Spark由来3

1.2 流式处理与Spark Streaming5

1.2.1 流式处理框架5

1.2.2 Spark Streaming初识7

1.2.3 Structed Streaming简述8

1.3 本章小结8

  • 2章 Spark运行与开发环境9

2.1 Spark的下载与安装9

2.2 Spark运行模式10

2.2.1 本地模式13

2.2.2 本地集群模式13

2.2.3 Standalone模式14

2.2.4 Spark On Yarn模式15

2.2.5 Spark On Mesos模式15

2.3 搭建开发环境15

2.3.1 修改配置16

2.3.2 启动集群18

2.3.3 IDE配置20

2.3.4 UI监控界面24

2.4 实例——Spark文件词频统计28

2.5 本章小结35

第3章 Spark编程模型36

3.1 RDD概述36

3.2 RDD存储结构37

3.3 RDD操作38

3.3.1 Transformation操作38

3.3.2 Action操作41

3.4 RDD间的依赖方式42

3.4.1 窄依赖(Narrow Dependency)42

3.4.2 Shuffle依赖(宽依赖Wide Dependency)43

3.5 从RDD看集群调度45

3.6 RDD持久化(Cachinng/Persistence)46

3.7 共享变量47

3.7.1 累加器(Accumulator)48

3.7.2 广播变量(Broadcast Variables)50

3.8 实例——Spark RDD操作51

3.9 本章小结56

  • 2篇 Spark Streaming详解

第4章 Spark Streaming编程模型及原理58

4.1 DStream数据结构58

4.2 DStream操作59

4.2.1 DStream Transformation操作59

4.2.2 DStream输出操作63

4.3 Spark Streaming初始化及输入源63

4.3.1 初始化流式上下文(StreamingContext)63

4.3.2 输入源及接收器(Receivers)64

4.4 持久化、Checkpointing和共享变量65

4.4.1 DStream持久化(Caching/Persistence)65

4.4.2 Checkpointing操作66

4.5 实例——Spark Streaming流式词频统计69

4.6 本章小结73

第5章 Spark Streaming与Kafka75

5.1 ZooKeeper简介75

5.1.1 相关概念75

5.1.2 ZooKeeper部署77

5.2 Kafka简介79

5.2.1 相关术语80

5.2.2 Kafka运行机制81

5.2.3 Kafka部署83

5.2.4 简单样例85

5.3 Spark Streaming接收Kafka数据86

5.3.1 基于Receiver的方式87

5.3.2 直接读取的方式88

5.4 Spark Streaming向Kafka中写入数据90

5.5 实例——Spark Streaming分析Kafka数据92

5.6 本章小结101

第6章 Spark Streaming与外部存储介质102

6.1 将DStream输出到文件中102

6.2 使用foreachRDD设计模式105

6.3 将DStream输出到MySQL中106

6.3.1 MySQL概述107

6.3.2 MySQL通用连接类107

6.3.3 MySQL输出操作108

6.4 将DStream输出到HBase中109

6.4.1 HBase概述109

6.4.2 HBase通用连接类110

6.4.3 HBase输出操作111

6.4.4 “填坑”记录112

6.5 将DStream数据输出到Redis中112

6.5.1 Redis安装112

6.5.2 Redis概述113

6.5.3 Redis通用连接类113

6.5.4 输出Redis操作115

6.6 实例——日志分析115

6.7 本章小结122

第7章 Spark Streaming调优实践124

7.1 数据序列化124

7.2 广播大变量126

7.3 数据处理和接收时的并行度127

7.4 设置合理的批处理间隔128

7.5 内存优化128

7.5.1 内存管理129

7.5.2 优化策略130

7.5.3 垃圾回收(GC)优化131

7.5.4 Spark Streaming内存优化132

7.6 实例——项目实战中的调优示例133

7.6.1 合理的批处理时间(batchDuration)133

7.6.2 合理的Kafka拉取量(maxRatePerPartition参数设置)134

7.6.3 缓存反复使用的Dstream(RDD)135

7.6.4 其他一些优化策略135

7.6.5 结果136

7.7 本章小结138

第3篇 Spark Streaming案例实战

第8章 实时词频统计处理系统实战140

8.1 背景与设计140

8.2 代码实现142

8.2.1 数据生成器142

8.2.2 分词服务146

8.2.3 流式词频统计147

8.3 环境配置与运行158

8.3.1 相关服务启动158

8.3.2 查看结果160

8.4 本章小结163

第9章 用户行为统计实战164

9.1 背景与设计164

9.1.1 不同状态的保存方式164

9.1.2 State设计166

9.1.3 Redis存储167

9.2 代码实现167

9.2.1 数据生成器167

9.2.2 用户行为统计168

9.3 环境配置与运行172

9.3.1 相关服务启动172

9.3.2 查看结果173

9.4 本章小结175

  • 10章 监控报警系统实战177

10.1 背景与设计177

10.2 代码实现179

10.2.1 简易爬虫子项目179

10.2.2 流式处理子项目184

10.2.3 归纳统计子项目191

10.2.4 数据表情况199

10.3 环境配置与查看200

10.3.1 启动各个模块200

10.3.2 查看结果200

10.4 本章小结203

附录A Scala语言基础204

A.1 安装及环境配置204

A.1.1 安装Scala204

A.1.2 开发环境配置205

A.2 Scala语法独特性206

A.2.1 换行符207

A.2.2 统一类型207

A.2.3 Scala变量208

A.2.4 条件和循环语句209

A.2.5 函数和方法210

A.2.6 特质、单例和样例类213

A.3 Scala集合215

A.3.1 集合框架216

A.3.2 核心特质(Trait)219

A.3.3 常用的不可变集合类222

A.3.4 常用的可变集合类225

A.3.5 字符串227

A.3.6 数组228

A.3.7 迭代器(Ite

参考文献