Spark核心技术与高级应用是Spark领域少有的专注于核心原理与深度应用的著作,由科大讯飞和百分点科技的4位大数据专家撰写。全书不仅细致介绍了Spark的程序开发、编程模型、作业执行解析等基础知识,而且还深度讲解了Spark SQL、Spark ML、Spark Streaming等大量内部模块和周边模块的原理与使用。除此之外,还从管理和性能优化的角度对Spark进行了深入探索,非常适合大数据相关从事者下载参考阅读。
基础篇(第1~10章),详细说明什么是Spark、Spark的重要扩展、Spark的部署和运行、Spark程序开发、Spark编程模型,以及Spark作业执行解析。通过阅读本篇,读者可以构建更加清晰的Spark基础知识体系,进一步加深对大数据核心技术的理解。
实战篇(第11~14章),本书重点篇章,重点讲解Spark SQL与DataFrame、Spark Streaming、Spark MLlib与Spark ML、GraphX,以及基于以上内容在大数据分析、系统资源统计、LR模型、二级邻居关系图获取方面的实例。通过体察本篇的内容,读者可以掌握如何在实践中应用Spark,优化自身的应用场景,完善相应的解决方案。
高级篇(第15~18章),深入讲解Spark调度管理、存储管理、监控管理、性能调优。本篇的内容,为合理利用资源、有效进行资源监控、保障运行环境的稳定、平台性能调优、推进企业级的大数据平台管理提供了参考依据。
扩展篇(第19~20章),介绍Jobserver和Tachyon在Spark上的使用情况。通过本篇,延续基础、实战、高级等环节,并进一步扩展,更好地管理好Job、更有效地利用内存,为读者拓展出更深入、更全面的思路。
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
收起介绍展开介绍
内容介绍
Spark核心技术与高级应用分为四大部分,共计20章:基础篇(第1~10章),详细说明什么是Spark、Spark的重要扩展、Spark的部署和运行、Spark程序开发、Spark编程模型,以及Spark作业执行解析。通过阅读本篇,读者可以构建更加清晰的Spark基础知识体系,进一步加深对大数据核心技术的理解。
实战篇(第11~14章),本书重点篇章,重点讲解Spark SQL与DataFrame、Spark Streaming、Spark MLlib与Spark ML、GraphX,以及基于以上内容在大数据分析、系统资源统计、LR模型、二级邻居关系图获取方面的实例。通过体察本篇的内容,读者可以掌握如何在实践中应用Spark,优化自身的应用场景,完善相应的解决方案。
高级篇(第15~18章),深入讲解Spark调度管理、存储管理、监控管理、性能调优。本篇的内容,为合理利用资源、有效进行资源监控、保障运行环境的稳定、平台性能调优、推进企业级的大数据平台管理提供了参考依据。
扩展篇(第19~20章),介绍Jobserver和Tachyon在Spark上的使用情况。通过本篇,延续基础、实战、高级等环节,并进一步扩展,更好地管理好Job、更有效地利用内存,为读者拓展出更深入、更全面的思路。
Spark核心技术与高级应用章节目录
前 言 基 础 篇 第1章 Spark简介 2 1.1 什么是Spark 2 1.1.1 概述 3 1.1.2 Spark大数据处理框架 3 1.1.3 Spark的特点 4 1.1.4 Spark应用场景 5 1.2 Spark的重要扩展 6 1.2.1 Spark SQL和DataFrame 6 1.2.2 Spark Streaming 7 1.2.3 Spark MLlib和ML 8 1.2.4 GraphX 8 1.2.5 SparkR 9 1.3 本章小结 10 第2章 Spark部署和运行 11 2.1 部署准备 11 2.1.1 下载Spark 11 2.1.2 编译Spark版本 12 2.1.3 集群部署概述 14 2.2 Spark部署 15 2.2.1 Local模式部署 16 2.2.2 Standalone模式部署 16 2.2.3 YARN模式部署 18 2.3 运行Spark应用程序 19 2.3.1 Local模式运行Spark应用程序 19 2.3.2 Standalone模式运行Spark应用程序 20 2.3.3 YARN模式运行Spark 22 2.3.4 应用程序提交和参数传递 23 2.4 本章小结 26 第3章 Spark程序开发 27 3.1 使用Spark Shell编写程序 27 3.1.1 启动Spark Shell 28 3.1.2 加载text文件 28 3.1.3 简单RDD操作 28 3.1.4 简单RDD操作应用 29 3.1.5 RDD缓存 30 3.2 构建Spark的开发环境 30 3.2.1 准备环境 30 3.2.2 构建Spark的Eclipse开发环境 31 3.2.3 构建Spark的IntelliJ IDEA开发环境 32 3.3 独立应用程序编程 40 3.3.1 创建SparkContext对象 40 3.3.2 编写简单应用程序 40 3.3.3 编译并提交应用程序 40 3.4 本章小结 43 第4章 编程模型 44 4.1 RDD介绍 44 4.1.1 RDD特征 45 4.1.2 RDD依赖 45 4.2 创建RDD 47 4.2.1 集合(数组)创建RDD 47 4.2.2 存储创建RDD 48 4.3 RDD操作 49 4.3.1 转换操作 50 4.3.2 执行操作 52 4.3.3 控制操作 54 4.4 共享变量 56 4.4.1 广播变量 57 4.4.2 累加器 57 4.5 本章小结 58 第5章 作业执行解析 59 5.1 基本概念 59 5.1.1 Spark组件 59 5.1.2 RDD视图 60 5.1.3 DAG图 61 5.2 作业执行流程 62 5.2.1 基于Standalone模式的Spark架构 62 5.2.2 基于YARN模式的Spark架构 64 5.2.3 作业事件流和调度分析 65 5.3 运行时环境 67 5.3.1 构建应用程序运行时环境 68 5.3.2 应用程序转换成DAG 68 5.3.3 调度执行DAG图 70 5.4 应用程序运行实例 71 5.5 本章小结 72 第6章 Spark SQL与DataFrame 73 6.1 概述 73 6.1.1 Spark SQL 发展 74 6.1.2 Spark SQL 架构 74 6.1.3 Spark SQL 特点 76 6.1.4 Spark SQL 性能 76 6.2 DataFrame 77 6.2.1 DataFrame和RDD的区别 78 6.2.2 创建DataFrame 78 6.2.3 DataFrame 操作 80 6.2.4 RDD转化为DataFrame 82 6.3 数据源 84 6.3.1 加载保存操作 84 6.3.2 Parquet 文件 85 6.3.3 JSON 数据集 88 6.3.4 Hive 表 89 6.3.5 通过JDBC 连接数据库 91 6.3.6 多数据源整合查询的小例子 92 6.4 分布式的SQL Engine 93 6.4.1 运行Thrift JDBC/ODBC 服务 93 6.4.2 运行 Spark SQL CLI 94 6.5 性能调优 94 6.5.1 缓存数据 94 6.5.2 调优参数 94 6.5.3 增加并行度 95 6.6 数据类型 95 6.7 本章小结 96 第7章 深入了解Spark Streaming 97 7.1 基础知识 97 7.1.1 Spark Streaming工作原理 98 7.1.2 DStream编程模型 99 7.2 DStream操作 100 7.2.1 Input DStream 100 7.2.2 DStream转换操作 102 7.2.3 DStream状态操作 104 7.2.4 DStream输出操作 106 7.2.5 缓存及持久化 107 7.2.6 检查点 108 7.3 性能调优 109 7.3.1 优化运行时间 109 7.3.2 设置合适的批次大小 111 7.3.3 优化内存使用 111 7.4 容错处理 112 7.4.1 文件输入源 112 7.4.2 基于Receiver的输入源 112 7.4.3 输出操作 113 7.5 一个例子 113 7.6 本章小结 115 第8章 Spark MLlib与机器学习 116 8.1 机器学习概述 116 8.1.1 机器学习分类 117 8.1.2 机器学习算法 117 8.2 Spark MLlib介绍 118 8.3 Spark MLlib库 119 8.3.1 MLlib数据类型 120 8.3.2 MLlib的算法库与实例 123 8.4 ML库 142 8.4.1 主要概念 143 8.4.2 算法库与实例 145 8.5 本章小结 147 第9章 GraphX图计算框架与应用 148 9.1 概述 148 9.2 Spark GraphX架构 149 9.3 GraphX编程 150 9.3.1 GraphX的图操作 152 9.3.2 常用图算法 161 9.4 应用场景 164 9.4.1 图谱体检平台 164 9.4.2 多图合并工具 165 9.4.3 能量传播模型 165 9.5 本章小结 166 第10章 SparkR(R on Spark) 167 10.1 概述 167 10.1.1 SparkR介绍 168 10.1.2 SparkR的工作原理 168 10.1.3 R语言介绍 169 10.1.4 R语言与其他语言的通信 170 10.2 安装SparkR 170 10.2.1 安装R语言与rJava 171 10.2.2 SparkR的安装 171 10.3 SparkR的运行与应用示例 172 10.3.1 运行SparkR 172 10.3.2 SparkR示例程序 173 10.3.3 R的DataFrame操作方法 175 10.3.4 SparkR的DataFrame 183 10.4 本章小结 186 实 战 篇 第11章 大数据分析系统 188 11.1 背景 188 11.2 数据格式 189 11.3 应用架构 189 11.4 业务实现 190 11.4.1 流量、性能的实时分析 190 11.4.2 流量、性能的统计分析 192 11.4.3 业务关联分析 193 11.4.4 离线报表分析 195 11.5 本章小结 199 第12章 系统资源分析平台 200 12.1 业务背景 200 12.1.1 业务介绍 201 12.1.2 实现目标 201 12.2 应用架构 201 12.2.1 总体架构 202 12.2.2 模块架构 202 12.3 代码实现 203 12.3.1 Kafka集群 203 12.3.2 数据采集 207 12.3.3 离线数据处理 207 12.3.4 数据表现 207 12.4 结果验证 213 12.5 本章小结 214 第13章 在Spark上训练LR模型 215 13.1 逻辑回归简介 215 13.2 数据格式 216 13.3 MLlib中LR模型源码介绍 217 13.3.1 逻辑回归分类器 217 13.3.2 优化方法 219 13.3.3 算法效果评估 221 13.4 实现案例 223 13.4.1 训练模型 223 13.4.2 计算AUC 223 13.5 本章小结 224 第14章 获取二级邻居关系图 225 14.1 理解PageRank 225 14.1.1 初步理解PageRank 225 14.1.2 深入理解PageRank 227 14.2 PageRank算法基于Spark的实现 228 14.3 基于PageRank的二级邻居获取 232 14.3.1 系统设计 232 14.3.2 系统实现 232 14.3.3 代码提交命令 235 14.4 本章小结 236 高 级 篇 第15章 调度管理 238 15.1 调度概述 238 15.1.1 应用程序间的调度 239 15.1.2 应用程序中的调度 241 15.2 调度器 242 15.2.1 调度池 243 15.2.2 Job调度流程 243 15.2.3 调度模块 245 15.2.4 Job的生与死 249 15.3 本章小结 253 第16章 存储管理 254 16.1 硬件环境 254 16.1.1 存储系统 254 16.1.2 本地磁盘 255 16.1.3 内存 255 16.1.4 网络和CPU 255 16.2 Storage模块 256 16.2.1 通信层 256 16.2.2 存储层 258 16.3 Shuff?le数据持久化 261 16.4 本章小结 263 第17章 监控管理 264 17.1 Web界面 264 17.2 Spark UI历史监控 266 17.2.1 使用spark-server的原因 266 17.2.2 配置spark-server 266 17.3 监控工具 269 17.3.1 Metrics工具 269 17.3.2 其他工具 271 17.4 本章小结 272 第18章 性能调优 273 18.1 文件的优化 273 18.1.1 输入采用大文件 273 18.1.2 lzo压缩处理 274 18.1.3 Cache压缩 275 18.2 序列化数据 277 18.3 缓存 278 18.4 共享变量 278 18.4.1 广播变量 279 18.4.2 累加器 279 18.5 流水线优化 280 18.6 本章小结 280 扩 展 篇 第19章 Spark-jobserver实践 282 19.1 Spark-jobserver是什么 282 19.2 编译、部署及体验 283 19.2.1 编译及部署 283 19.2.2 体验 286 19.3 Spark-jobserver程序实战 288 19.3.1 创建步骤 288 19.3.2 一些常见的问题 289 19.4 使用场景:用户属性分布计算 289 19.4.1 项目需求 290 19.4.2 计算架构 290 19.4.3 使用NamedRDD 291 19.5 本章小结 291 第20章 Spark Tachyon实战 292 20.1 Tachyon文件系统 292 20.1.1 文件系统概述 293 20.1.2 HDFS和Tachyon 294 20.1.3 Tachyon设计原理 294 20.1.4 Tachyon特性 295 20.2 Tachyon入门 295 20.2.1 Tachyon 部署 295 20.2.2 Tachyon API 297 20.2.3 在Spark上使用Tachyon 298 20.3 容错机制 299 20.4 本章小结 300
使用说明
1、下载并解压,得出pdf文件2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
发表评论
0条评论软件排行榜
热门推荐
- 南方Plus电脑版 v11.8.027.22M / 简体中文
- 网易新闻电脑版 v112.697.63M / 简体中文
- 潇湘书院电脑版 v2.3.11.888官方版49.65M / 简体中文
- 吉利博瑞用户手册 pdf高清版57.89M / 简体中文
- 开源阅读电脑版 v3.2517.96M / 简体中文
- 京东读书电脑版 v1.13.4官方版1.98M / 简体中文
- 未公开的Oracle数据库秘密 迪贝斯pdf扫描版34.69M / 简体中文
- 本草纲目 5.34M / 简体中文
- docker入门实战 pdf完整版1.38M / 简体中文
- Scala程序设计第二版 pdf高清完整版15.83M / 简体中文