本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书名: | (正版特价)Spark Streaming实时流式大数据处理实战|232457 |
图书定价: | 69元 |
图书作者: | 肖力涛 |
出版社: | 机械工业出版社 |
出版日期: | 2019/4/16 0:00:00 |
ISBN号: | 9787111624325 |
开本: | 16开 |
页数: | 248 |
版次: | 1-1 |
内容简介 |
本书以翔实的原理讲解和充实的实战代码剖析,全面阐述了Spark Streaming流式处理平台,便于读者能够从入门开始了解搭建Spark平台,在此基础上学习流式处理框架,并动手实践,进行Spark Streaming流式大数据处理,包括与主流平台框架,如Kafka、Redis和ZooKeeper的对接应用等,并介绍了项目实战中的一些开发和调优策略。读者能够通过本书快速搭建Spark平台,并根据自己面临的使用场景快速搭建处理平台,同时能够了解背后的原理,对调优、开发都能起到一定的指导作用。本书适合大数据处理人员,尤其是基于流式大数据处理的人员阅读,本书也可以作为大数据处理人员的常备工具书随时翻阅。 |
目录 |
前言 第1篇 Spark基础 第1章 初识Spark 2 1.1 Spark由来 3 1.2 流式处理与Spark Streaming 5 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与Kafka 75 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 安装Scala 204 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 迭代器(Iterators) 230 A.4 其他常用特性 231 A.4.1 模式匹配 231 A.4.2 异常处理 232 A.4.3 文件I/O 233 |
编辑推荐 |
前腾讯优图实验室及WeTest研究员/现***资深算法工程师力作 腾讯WeTest总监等5位技术大咖力荐 快速搭建Spark平台,从0到1动手实践Spark Streaming流式大数据处理 对Spark及Spark Streaming所涉及的大数据平台做了重点阐述 对涉及的知识点详细阐述了基本原理,并给出了大量的应用实践 每个章节之后基本上都安排了典型实例,手把手带领读者动手演练 详细介绍了3个项目实战案例,帮助读者提高实际的项目开发水平 给出了大量的真实工作经验总结,对相关从业者有较高的参考价值 业内5位大咖力荐: 方亮 腾讯WeTest总监 张景龙 上海场鲸科技有限公司CTO/19年老程序员 辛愿 腾讯深海实验室创始人 余祖坤博士 腾讯云人工智能产品负责人 刘绩刚 腾讯WeTest舆情算法负责人 |