图解Spark 核心技术与案例实战出版时间:2017内容简介 本书以Spark 2.0 版本为基础进行编写,全面介绍了Spark 核心及其生态圈组件技术。主要内容包括Spark 生态圈、实战环境搭建、编程模型和内部重要模块的分析,重点介绍了消息通信框架、作业调度、容错执行、监控管理、存储管理以及运行框架,同时还介绍了Spark 生态圈相关组件,包括了Spark SQL 的即席查询、Spark Streaming 的实时流处理应用、MLbase/MLlib 的机器学习、GraphX 的图处理、SparkR 的数学计算和Alluxio 的分布式内存文件系统等。本书从Spark 核心技术进行深入分析,重要章节会结合源代码解读其实现原理,围绕着技术原理介绍了相关典型实例,读者通过这些实例可以更加深入地理解Spark 的运行机制。另外本书还应用了大量的图表进行说明,通过这种方式让读者能够更加直观地理解Spark 相关原理。目录第1章 Spark及其生态圈概述/t1.1 Spark简介/t1.1.1 什么是Spark/t1.1.2 Spark与MapReduce比较/t1.1.3 Spark的演进路线图/t1.2 Spark生态系统/t1.2.1 Spark Core/t1.2.2 Spark Streaming/t1.2.3 Spark SQL/t1.2.4 BlinkDB/t1.2.5 MLBase/MLlib/t1.2.6 GraphX/t1.2.7 SparkR/t1.2.8 Alluxio/t1.3 小结/t第2章 搭建Spark实战环境/t2.1 基础环境搭建/t2.1.1 搭建集群样板机/t2.1.2 配置集群环境/t2.2 编译Spark源代码/t2.2.1 配置Spark编译环境/t2.2.2 使用Maven编译Spark/t2.2.3 使用SBT编译Spark/t2.2.4 生成Spark部署包/t2.3 搭建Spark运行集群/t2.3.1 修改配置文件/t2.3.2 启动Spark/t2.3.3 验证启动/t2.3.4 第一个实例/t2.4 搭建Spark实战开发环境/t2.4.1 CentOS中部署IDEA/t2.4.2 使用IDEA开发程序/t2.4.3 使用IDEA阅读源代码/t2.5 小结/t第二篇 核心篇第3章 Spark编程模型/t3.1 RDD概述/t3.1.1 背景/t3.1.2 RDD简介/t3.1.3 RDD的类型/t3.2 RDD的实现/t3.2.1 作业调度/t3.2.2 解析器集成/t3.2.3 内存管理/t3.2.4 检查点支持/t3.2.5 多用户管理/t3.3 编程接口/t3.3.1 RDD分区(Partitions)/t3.3.2 RDD首选位置(PreferredLocations)/t3.3.3 RDD依赖关系(Dependencies)/t3.3.4 RDD分区计算(Iterator)/t3.3.5 RDD分区函数(Partitioner)/t3.4 创建操作/t3.4.1 并行化集合创建操作/t3.4.2 外部存储创建操作/t3.5 转换操作/t3.5.1 基础转换操作/t3.5.2 键值转换操作/t3.6 控制操作/t3.7 行动操作/t3.7.1 集合标量行动操作/t3.7.2 存储行动操作/t3.8 小结/t第4章 Spark核心原理/t4.1 消息通信原理/t4.1.1 Spark消息通信架构/t4.1.2 Spark启动消息通信/t4.1.3 Spark运行时消息通信/t4.2 作业执行原理/t4.2.1 概述/t4.2.2 提交作业/t4.2.3 划分调度阶段/t4.2.4 提交调度阶段/t4.2.5 提交任务/t4.2.6 执行任务/t4.2.7 获取执行结果/t4.3 调度算法/t4.3.1 应用程序之间/t4.3.2 作业及调度阶段之间/t4.3.3 任务之间/t4.4 容错及HA/t4.4.1 Executor异常/t4.4.2 Worker异常/t4.4.3 Master异常/t4.5 监控管理/t4.5.1 UI监控/t4.5.2 Metrics/t4.5.3 REST/t4.6 实例演示/t4.6.1 计算年降水实例/t4.6.2 HA配置实例/t4.7 小结/t第5章 Spark存储原理/t5.1 存储分析/t5.1.1 整体架构/t5.1.2 存储级别/t5.1.3 RDD存储调用/t5.1.4 读数据过程/t5.1.5 写数据过程/t5.2 Shuffle分析/t5.2.1 Shuffle简介/t5.2.2 Shuffle的写操作/t5.2.3 Shuffle的读操作/t5.3 序列化和压缩/t5.3.1 序列化/t5.3.2/t 压缩/t5.4 共享变量/t5.4.1 广播变量/t5.4.2 累加器/t5.5 实例演示/t5.6 小结/t第6章 Spark运行架构/t6.1 运行架构总体介绍/t6.1.1 总体介绍/t6.1.2 重要类介绍/t6.2 本地(Local)运行模式/t6.2.1 运行模式介绍/t6.2.2 实现原理/t6.3 伪分布(Local-Cluster)运行模式/t6.3.1 运行模式介绍/t6.3.2 实现原理/t6.4 独立(Standalone)运行模式/t6.4.1 运行模式介绍/t6.4.2 实现原理/t6.5 YARN运行模式/t6.5.1 YARN运行框架/t6.5.2 YARN-Client运行模式介绍/t6.5.3 YARN-Client 运行模式实现原理/t6.5.4 YARN-Cluster运行模式介绍/t6.5.5 YARN-Cluster 运行模式实现原理/t6.5.6 YARN-Client与YARN-Cluster对比/t6.6 Mesos运行模式/t6.6.1 Mesos介绍/t6.6.2 粗粒度运行模式介绍/t6.6.3 粗粒度实现原理/t6.6.4 细粒度运行模式介绍/t6.6.5 细粒度实现原理/t6.6.6 Mesos粗粒度和Mesos细粒度对比/t6.7 实例演示/t6.7.1 独立运行模式实例/t6.7.2 YARN-Client实例/t6.7.3 YARN-Cluster实例/t6.8 小结/t第三篇 组件篇第7章 Spark SQL/t7.1 Spark SQL简介/t7.1.1 Spark SQL发展历史/t7.1.2 DataFrame/Dataset介绍/t7.2 Spark SQL运行原理/t7.2.1 通用SQL执行原理/t7.2.2 SparkSQL运行架构/t7.2.3 SQLContext运行原理分析/t7.2.4 HiveContext介绍/t7.3 使用Hive-Console/t7.3.1 编译Hive-Console/t7.3.2 查看执行计划/t7.3.3 应用Hive-Console/t7.4 使用SQLConsole/t7.4.1 启动HDFS和Spark Shell/t7.4.2 与RDD交互操作/t7.4.3 读取JSON格式数据/t7.4.4 读取Parquet格式数据/t7.4.5 缓存演示/t7.4.6 DSL演示/t7.5 使用Spark SQL CLI/t7.5.1 配置并启动Spark SQL CLI/t7.5.2 实战Spark SQL CLI/t7.6 使用Thrift Server/t7.6.1 配置并启动Thrift Server/t7.6.2 基本操作/t7.6.3 交易数据实例/t7.6.4 使用IDEA开发实例/t7.7 实例演示/t7.7.1 销售数据分类实例/t7.7.2 网店销售数据统计/t7.8 小结/t第8章 Spark Streaming/t8.1 Spark Streaming简介/t8.1.1 术语定义/t8.1.2 Spark Streaming特点/t8.2 Spark Streaming编程模型/t8.2.1 DStream的输入源/t8.2.2 DStream的操作/t8.3 Spark Streaming运行架构/t8.3.1 运行架构/t8.3.2 消息通信/t8.3.3 Receiver分发/t8.3.4 容错性/t8.4 Spark Streaming运行原理/t8.4.1 启动流处理引擎/t8.4.2 接收及存储流数据/t8.4.3 数据处理/t8.5 实例演示/t8.5.1 流数据模拟器/t8.5.2 销售数据统计实例/t8.5.3 Spark Streaming+Kafka实例/t8.6 小结/t第9章 Spark MLlib/t9.1 Spark MLlib简介/t9.1.1 Spark MLlib介绍/t9.1.2 Spark MLlib数据类型/t9.1.3 Spark MLlib基本统计方法/t9.1.4 预言模型标记语言/t9.2 线性模型/t9.2.1 数学公式/t9.2.2 线性回归/t9.2.3 线性支持向量机/t9.2.4 逻辑回归/t9.2.5 线性最小二乘法、Lasso和岭回归/t9.2.6 流式线性回归/t9.3 决策树/t9.4 决策模型组合/t9.4.1 随机森林/t9.4.2 梯度提升决策树/t9.5 朴素贝叶斯/t9.6 协同过滤/t9.7 聚类/t9.7.1 K-means/t9.7.2 高斯混合/t9.7.3 快速迭代聚类/t9.7.4 LDA/t9.7.5 二分K-means/t9.7.6 流式K-means/t9.8 降维/t9.8.1 奇异值分解降维/t9.8.2 主成分分析降维/t9.9 特征提取和变换/t9.9.1 词频―逆文档频率/t9.9.2 词向量化工具/t9.9.3 标准化/t9.9.4 范数化/t9.10 频繁模式挖掘/t9.10.1 频繁模式增长/t9.10.2 关联规则挖掘/t9.10.3 PrefixSpan/t9.11 实例演示/t9.11.1 K-means聚类算法实例/t9.11.2 手机短信分类实例/t9.12 小结/t第10章 Spark GraphX/t10.1 GraphX介绍/t10.1.1 图计算/t10.1.2 GraphX介绍/t10.1.3 发展历程/t10.2 GraphX实现分析/t10.2.1 GraphX图数据模型/t10.2.2 GraphX图数据存储/t10.2.3 GraphX图切分策略/t10.2.4 GraphX图操作/t10.3 实例演示/t10.3.1 图例演示/t10.3.2 社区发现演示/t10.4 小结/t第11章 SparkR/t11.1 概述/t11.1.1 R语言介绍/t11.1.2 SparkR介绍/t11.2 SparkR与DataFrame/t11.2.1 DataFrames介绍/t11.2.2 与DataFrame的相关操作/t11.3 编译安装SparkR/t11.3.1 编译安装R语言/t11.3.2 安装SparkR运行环境/t11.3.3 安装SparkR/t11.3.4 启动并验证安装/t11.4 实例演示/t11.5 小结/t第12章 Alluxio/t12.1 Alluxio简介/t12.1.1 Alluxio介绍/t12.1.2 Alluxio系统架构/t12.1.3 HDFS与Alluxio/t12.2 Alluxio编译部署/t12.2.1 编译Alluxio/t12.2.2 单机部署Alluxio/t12.2.3 集群模式部署Alluxio/t12.3 Alluxio命令行使用/t12.3.1 接口说明/t12.3.2 接口操作示例/t12.4 实例演示/t12.4.1 启动环境/t12.4.2 Alluxio上运行Spark/t12.4.3 Alluxio上运行MapReduce/t12.5 小结/t本书附录部分请到博文视点网站下载www.broadview.com.cn/30236。 上一篇: Node.js进阶之路 下一篇: Adobe After Effects CC高手之路