深入理解Spark

深入理解Spark

核心思想与源码分析

暂无评价综合评分的显示会考虑用户真实性等多项因素,每部作品出现综合评分的时间不定。
6.929 评价豆瓣读书
春暖花开季 恰是读书时满500减300、满200减120、满100减60活动详情

作品简介

本书结合大量图和示例,对Spark的架构、部署模式和工作模块的设计理念、实现源码与使用技巧进行了深入的剖析与解读。《深入理解SPARK:核心思想与源码分析》一书对Spark1.2.0版本的源代码进行了全面而深入的分析,旨在为Spark的优化、定制和扩展提供原理性的指导。阿里巴巴集团专家鼎力推荐、阿里巴巴资深Java开发和大数据专家撰写。

耿嘉安,10年IT行业相关经验。就职于阿里巴巴商家业务事业部,任资深Java工程师,专注于开源和大数据领域,目前与小伙伴们基于ODPS构建阿里的大数据商业解决方案——御膳房。在大量的工作实践中,对J2EE、JVM、Tomcat、Spring、Hadoop、Spark、MySQL、Redis都有深入研究,尤其喜欢剖析开源项目的源码实现。早期从事J2EE企业级应用开发,对Java相关技术有独到见解。业余时间喜欢研究中国古代历史,古诗词,旅游,足球等。

作品目录

  1. 前言
  2. 准备篇
  3. 第1章 环境准备
  4. 1.1 运行环境准备
  5. 1.2 Spark初体验
  6. 1.3 阅读环境准备
  7. 1.4 Spark源码编译与调试
  8. 1.5 小结
  9. 第2章 Spark设计理念与基本架构
  10. 2.1 初识Spark
  11. 2.2 Spark基础知识
  12. 2.3 Spark基本设计思想
  13. 2.4 Spark基本架构
  14. 2.5 小结
  15. 核心设计篇
  16. 第3章 SparkContext的初始化
  17. 3.1 SparkContext概述
  18. 3.2 创建执行环境SparkEnv
  19. 3.3 创建metadataCleaner
  20. 3.4 SparkUI详解
  21. 3.5 Hadoop相关配置及Executor环境变量
  22. 3.6 创建任务调度器TaskScheduler
  23. 3.7 创建和启动DAGScheduler
  24. 3.8 TaskScheduler的启动
  25. 3.9 启动测量系统MetricsSystem
  26. 3.10 创建和启动ExecutorAllocationManager
  27. 3.11 ContextCleaner的创建与启动
  28. 3.12 Spark环境更新
  29. 3.13 创建DAGSchedulerSource和BlockManagerSource
  30. 3.14 将SparkContext标记为激活
  31. 3.15 小结
  32. 第4章 存储体系
  33. 4.1 存储体系概述
  34. 4.2 shuffle服务与客户端
  35. 4.3 BlockManagerMaster对BlockManager的管理
  36. 4.4 磁盘块管理器DiskBlockManager
  37. 4.5 磁盘存储DiskStore
  38. 4.6 内存存储MemoryStore
  39. 4.7 Tachyon存储TachyonStore
  40. 4.8 块管理器BlockManager
  41. 4.9 metadataCleaner和broadcastCleaner
  42. 4.10 缓存管理器CacheManager
  43. 4.11 压缩算法
  44. 4.12 磁盘写入实现DiskBlockObjectWriter
  45. 4.13 块索引shuffle管理器IndexShuffleBlockManager
  46. 4.14 shuffle内存管理器ShuffleMemoryManager
  47. 4.15 小结
  48. 第5章 任务提交与执行
  49. 5.1 任务概述
  50. 5.2 广播Hadoop的配置信息
  51. 5.3 RDD转换及DAG构建
  52. 5.4 任务提交
  53. 5.5 执行任务
  54. 5.6 任务执行后续处理
  55. 5.7 小结
  56. 第6章 计算引擎
  57. 6.1 迭代计算
  58. 6.2 什么是shuffle
  59. 6.3 map端计算结果缓存处理
  60. 6.4 map端计算结果持久化
  61. 6.5 reduce端读取中间计算结果
  62. 6.6 reduce端计算
  63. 6.7 map端与reduce端组合分析
  64. 6.8 小结
  65. 第7章 部署模式
  66. 7.1 local部署模式
  67. 7.2 local-cluster部署模式
  68. 7.3 Standalone部署模式
  69. 7.4 容错机制
  70. 7.5 其他部署方案
  71. 7.6 小结
  72. 扩展篇
  73. 第8章 Spark SQL
  74. 8.1 Spark SQL总体设计
  75. 8.2 字典表Catalog
  76. 8.3 Tree和TreeNode
  77. 8.4 词法解析器Parser的设计与实现
  78. 8.5 Rule和RuleExecutor
  79. 8.6 Analyzer与Optimizer的设计与实现
  80. 8.7 生成物理执行计划
  81. 8.8 执行物理执行计划
  82. 8.9 Hive
  83. 8.10 应用举例:JavaSparkSQL
  84. 8.11 小结
  85. 第9章 流式计算
  86. 9.1 Spark Streaming总体设计
  87. 9.2 StreamingContext初始化
  88. 9.3 输入流接收器规范Receiver
  89. 9.4 数据流抽象DStream
  90. 9.5 流式计算执行过程分析
  91. 9.6 窗口操作
  92. 9.7 应用举例
  93. 9.8 小结
  94. 第10章 图计算
  95. 10.1 Spark GraphX总体设计
  96. 10.2 图操作
  97. 10.3 Pregel API
  98. 10.4 Graph的构建
  99. 10.5 顶点集合抽象VertexRDD
  100. 10.6 边集合抽象EdgeRDD
  101. 10.7 图分割
  102. 10.8 常用算法
  103. 10.9 应用举例
  104. 10.10 小结
  105. 第11章 机器学习
  106. 11.1 机器学习概论
  107. 11.2 Spark MLlib总体设计
  108. 11.3 数据类型
  109. 11.4 基础统计
  110. 11.5 分类和回归
  111. 11.6 决策树
  112. 11.7 随机森林
  113. 11.8 梯度提升决策树
  114. 11.9 朴素贝叶斯
  115. 11.10 保序回归
  116. 11.11 协同过滤
  117. 11.12 聚类
  118. 11.13 维数减缩
  119. 11.14 特征提取与转型
  120. 11.15 频繁模式挖掘
  121. 11.16 预言模型标记语言
  122. 11.17 管道
  123. 11.18 小结
  124. 附录A Utils
  125. 附录B Akka
  126. 附录C Jetty
  127. 附录D Metrics
  128. 附录E Hadoop word count
  129. 附录F CommandUtils
  130. 附录G Netty
  131. 附录H 源码编译错误
载入中

大家都喜欢