类似推荐
编辑推荐
对Spark的核心模块、部署和协作模块的实现原理与使用技巧进行了深入的剖析与解读。
内容简介
本书分为三大部分:第一部分为准备篇(第1~2章),简单介绍了Spark的环境搭建和基本原理,帮助读者了解一些背景知识。第二部分为核心设计篇(第3~7章),着重讲解SparkContext的初始化、存储体系、任务提交与执行、计算引擎及部署模式的原理和源码分析。第三部分为扩展篇(第8~11章),主要讲解基于Spark核心的各种扩展及应用,包括:SQL处理引擎、Hive处理、流式计算框架Spark Streaming、图计算框架GraphX、机器学习库MLlib等内容。
作者简介
作者耿嘉安,10余年IT行业相关经验。先后就职于阿里巴巴、艺龙、360,专注于开源和大数据领域。在大量的工作实践中,对J2EE、JVM、Tomcat、Spring、Hadoop、Spark、MySQL、Redis都有深入研究,尤其喜欢剖析开源项目的源码实现。早期从事J2EE企业级应用开发,对Java相关技术有独到见解。著有《深入理解Spark:核心思想与源码分析》一书。
章节目录
版权信息
前言
准备篇
第1章 环境准备
1.1 运行环境准备
1.2 Spark初体验
1.3 阅读环境准备
1.4 Spark源码编译与调试
1.5 小结
第2章 Spark设计理念与基本架构
2.1 初识Spark
2.2 Spark基础知识
2.3 Spark基本设计思想
2.4 Spark基本架构
2.5 小结
核心设计篇
第3章 SparkContext的初始化
3.1 SparkContext概述
3.2 创建执行环境SparkEnv
3.3 创建metadataCleaner
3.4 SparkUI详解
3.5 Hadoop相关配置及Executor环境变量
3.6 创建任务调度器TaskScheduler
3.7 创建和启动DAGScheduler
3.8 TaskScheduler的启动
3.9 启动测量系统MetricsSystem
3.10 创建和启动ExecutorAllocationManager
3.11 ContextCleaner的创建与启动
3.12 Spark环境更新
3.13 创建DAGSchedulerSource和BlockManagerSource
3.14 将SparkContext标记为激活
3.15 小结
第4章 存储体系
4.1 存储体系概述
4.2 shuffle服务与客户端
4.3 BlockManagerMaster对BlockManager的管理
4.4 磁盘块管理器DiskBlockManager
4.5 磁盘存储DiskStore
4.6 内存存储MemoryStore
4.7 Tachyon存储TachyonStore
4.8 块管理器BlockManager
4.9 metadataCleaner和broadcastCleaner
4.10 缓存管理器CacheManager
4.11 压缩算法
4.12 磁盘写入实现DiskBlockObjectWriter
4.13 块索引shuffle管理器IndexShuffleBlockManager
4.14 shuffle内存管理器ShuffleMemoryManager
4.15 小结
第5章 任务提交与执行
5.1 任务概述
5.2 广播Hadoop的配置信息
5.3 RDD转换及DAG构建
5.4 任务提交
5.5 执行任务
5.6 任务执行后续处理
5.7 小结
第6章 计算引擎
6.1 迭代计算
6.2 什么是shuffle
6.3 map端计算结果缓存处理
6.4 map端计算结果持久化
6.5 reduce端读取中间计算结果
6.6 reduce端计算
6.7 map端与reduce端组合分析
6.8 小结
第7章 部署模式
7.1 local部署模式
7.2 local-cluster部署模式
7.3 Standalone部署模式
7.4 容错机制
7.5 其他部署方案
7.6 小结
扩展篇
第8章 Spark SQL
8.1 Spark SQL总体设计
8.2 字典表Catalog
8.3 Tree和TreeNode
8.4 词法解析器Parser的设计与实现
8.5 Rule和RuleExecutor
8.6 Analyzer与Optimizer的设计与实现
8.7 生成物理执行计划
8.8 执行物理执行计划
8.9 Hive
8.10 应用举例:JavaSparkSQL
8.11 小结
第9章 流式计算
9.1 Spark Streaming总体设计
9.2 StreamingContext初始化
9.3 输入流接收器规范Receiver
9.4 数据流抽象DStream
9.5 流式计算执行过程分析
9.6 窗口操作
9.7 应用举例
9.8 小结
第10章 图计算
10.1 Spark GraphX总体设计
10.2 图操作
10.3 Pregel API
10.4 Graph的构建
10.5 顶点集合抽象VertexRDD
10.6 边集合抽象EdgeRDD
10.7 图分割
10.8 常用算法
10.9 应用举例
10.10 小结
第11章 机器学习
11.1 机器学习概论
11.2 Spark MLlib总体设计
11.3 数据类型
11.4 基础统计
11.5 分类和回归
11.6 决策树
11.7 随机森林
11.8 梯度提升决策树
11.9 朴素贝叶斯
11.10 保序回归
11.11 协同过滤
11.12 聚类
11.13 维数减缩
11.14 特征提取与转型
11.15 频繁模式挖掘
11.16 预言模型标记语言
11.17 管道
11.18 小结
附录A Utils
附录B Akka
附录C Jetty
附录D Metrics
附录E Hadoop word count
附录F CommandUtils
附录G Netty
附录H 源码编译错误
深入理解Spark:核心思想与源码分析是2016年由机械工业出版社华章分社出版,作者耿嘉安。
得书感谢您对《深入理解Spark:核心思想与源码分析》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。