以Spark 1.02版本源碼為切入點,着力於探尋Spark所要解決的主要問題及其解決辦法,通過一系列精心設計的小實驗來分析每一步背后的處理邏輯。
《Apache Spark源碼剖析》第3~5章詳細介紹了Spark Core中作業的提交與執行,對容錯處理也進行了詳細分析,有助讀者深刻把握Spark實現機理。第6~9章對Spark Lib庫進行了初步的探索。在對源碼有了一定的分析之后,讀者可盡快掌握Spark技術。
《Apache Spark源碼剖析》對於Spark應用開發人員及Spark集群管理人員都有極好的學習價值;對於那些想從源碼學習而又不知如何入手的讀者,也不失為一種借鑒。
目錄
第一部分 Spark概述
第1章 初識Spark
1.1 大數據和Spark
1.1.1 大數據的由來
1.1.2 大數據的分析
1.1.3 Hadoop
1.1.4 Spark簡介
1.2 與Spark的第一次親密接觸
1.2.1 環境准備
1.2.2 下載安裝Spark
1.2.3 Spark下的WordCount
第二部分 Spark核心概念
第2章 Spark整體框架
2.1 編程模型
2.1.1 RDD
2.1.2 Operation
2.2 運行框架
2.2.1 作業提交
2.2.2 集群的節點構成
2.2.3 容錯處理
2.2.4 為什麼是Scala
2.3 源碼閱讀環境准備
2.3.1 源碼下載及編譯
2.3.2 源碼目錄結構
2.3.3 源碼閱讀工具
2.3.4 本章小結
第3章 SparkContext初始化
3.1 spark-shell
3.2 SparkContext的初始化綜述
3.3 Spark Repl綜述
3.3.1 Scala Repl執行過程
3.3.2 Spark Repl
第4章 Spark作業提交
4.1 作業提交
4.2 作業執行
4.2.1 依賴性分析及stage划分
4.2.2 Actor Model和Akka
4.2.3 任務的創建和分發
4.2.4 任務執行
4.2.5 Checkpoint和Cache
4.2.6 WebUIS和HMetrics
4.3 存儲機制
4.3.1 Shuffle結果的寫入和讀取
4.3.2 Memory Store
4.3.3 存儲子模塊啟動過程分析
4.3.4 數據寫入過程分析
4.3.5 數據讀取過程分析
4.3.6 TachyonStore
第5章 部署方式分析
5.1 部署模型
5.2 單機模式local
5.3 偽集群部署local-cluster
5.4 原生集群Standalone Cluster
5.4.1 啟動Master
5.4.2 啟動Worker
5.4.3 運行spark-shell
5.4.4 容錯性分析
5.5 Spark On YARN
5.5.1 YARN的編程模型
5.5.2 YARN中的作業提交
5.5.3 Spark On YARN實現詳解
5.5.4 SparkPi on YARN
第三部分 Spark Lib
第6章 Spark Streaming
6.1 Spark Streaming整體架構
6.1.1 DStream
6.1.2 編程接口
6.1.3 Streaming WordCount
6.2 Spark Streaming執行過程
6.2.1 StreamingContext初始化過程
6.2.2 數據接收
6.2.3 數據處理
6.2.4 BlockRDD
6.3 窗口操作
6.4 容錯性分析
6.5 Spark Streaming vs.Storm
6.5.1 Storm簡介
6.5.2 Storm和Spark Streaming對比
6.6 應用舉例
6.6.1 搭建Kafka Cluster
6.6.2 KafkaWbrdCount
第7章 SQL
7.1 SQL語句的通用執行過程分析
7.2 SQL On Spark的實現分析
7.2.1 SqlParser
7.2.2 Analyzer
7.2.3 Optimizer
7.2.4 SparkPlan
7.3 Parquet文件和JSON數據集
7.4 Hive簡介
7.4.1 Hive架構
7.4.2 HiveQL On MapReduce執行過程分析
7.5 HiveQL On Spark詳解
7.5.1 Hive On Spark環境搭建
7.5.2 編譯支持Hadoop 2.x的Spark
7.5.3 運行Hive On Spark測試用例
第8章 GraphX
8.1 GraphX簡介
8.1.1 主要特點
8.1.2 版本演化
8.1.3 應用場景
8.2 分布式圖計算處理技術介紹
8.2.1 屬性圖
8.2.2 圖數據的存儲與分割
8.3 Pregel計算模型
8.3.1 BSP
8.3.2 像頂點一樣思考
8.4 GraphX圖計算框架實現分析
8.4.1 基本概念
8.4.2 圖的加載與構建
8.4.3 圖數據存儲與分割
8.4.4 操作接口
8.4.5 Pregel在GraphX中的源碼實現
8.5 PageRank
8.5.1 什麼是PageRank
8.5.2 PageRank核心思想
第9章 MLLib
9.1 線性回歸
9.1.1 數據和估計
9.1.2 線性回歸參數求解方法
9.1.3 正則化
9.2 線性回歸的代碼實現
9.2.1 簡單示例
9.2.2 入口函數train
9.2.3 最優化算法optimizer
9.2.4 權重更新update
9.2.5 結果預測predict
9.3 分類算法
9.3.1 邏輯回歸
9.3.2 支持向量機
9.4 擬牛頓法
9.4.1 數學原理
9.4.2 代碼實現
9.5 MLLib與其他應用模塊間的整合
第四部分 附錄
附錄A Spark源碼調試
附錄B 源碼閱讀技巧
第1章 初識Spark
1.1 大數據和Spark
1.1.1 大數據的由來
1.1.2 大數據的分析
1.1.3 Hadoop
1.1.4 Spark簡介
1.2 與Spark的第一次親密接觸
1.2.1 環境准備
1.2.2 下載安裝Spark
1.2.3 Spark下的WordCount
第二部分 Spark核心概念
第2章 Spark整體框架
2.1 編程模型
2.1.1 RDD
2.1.2 Operation
2.2 運行框架
2.2.1 作業提交
2.2.2 集群的節點構成
2.2.3 容錯處理
2.2.4 為什麼是Scala
2.3 源碼閱讀環境准備
2.3.1 源碼下載及編譯
2.3.2 源碼目錄結構
2.3.3 源碼閱讀工具
2.3.4 本章小結
第3章 SparkContext初始化
3.1 spark-shell
3.2 SparkContext的初始化綜述
3.3 Spark Repl綜述
3.3.1 Scala Repl執行過程
3.3.2 Spark Repl
第4章 Spark作業提交
4.1 作業提交
4.2 作業執行
4.2.1 依賴性分析及stage划分
4.2.2 Actor Model和Akka
4.2.3 任務的創建和分發
4.2.4 任務執行
4.2.5 Checkpoint和Cache
4.2.6 WebUIS和HMetrics
4.3 存儲機制
4.3.1 Shuffle結果的寫入和讀取
4.3.2 Memory Store
4.3.3 存儲子模塊啟動過程分析
4.3.4 數據寫入過程分析
4.3.5 數據讀取過程分析
4.3.6 TachyonStore
第5章 部署方式分析
5.1 部署模型
5.2 單機模式local
5.3 偽集群部署local-cluster
5.4 原生集群Standalone Cluster
5.4.1 啟動Master
5.4.2 啟動Worker
5.4.3 運行spark-shell
5.4.4 容錯性分析
5.5 Spark On YARN
5.5.1 YARN的編程模型
5.5.2 YARN中的作業提交
5.5.3 Spark On YARN實現詳解
5.5.4 SparkPi on YARN
第三部分 Spark Lib
第6章 Spark Streaming
6.1 Spark Streaming整體架構
6.1.1 DStream
6.1.2 編程接口
6.1.3 Streaming WordCount
6.2 Spark Streaming執行過程
6.2.1 StreamingContext初始化過程
6.2.2 數據接收
6.2.3 數據處理
6.2.4 BlockRDD
6.3 窗口操作
6.4 容錯性分析
6.5 Spark Streaming vs.Storm
6.5.1 Storm簡介
6.5.2 Storm和Spark Streaming對比
6.6 應用舉例
6.6.1 搭建Kafka Cluster
6.6.2 KafkaWbrdCount
第7章 SQL
7.1 SQL語句的通用執行過程分析
7.2 SQL On Spark的實現分析
7.2.1 SqlParser
7.2.2 Analyzer
7.2.3 Optimizer
7.2.4 SparkPlan
7.3 Parquet文件和JSON數據集
7.4 Hive簡介
7.4.1 Hive架構
7.4.2 HiveQL On MapReduce執行過程分析
7.5 HiveQL On Spark詳解
7.5.1 Hive On Spark環境搭建
7.5.2 編譯支持Hadoop 2.x的Spark
7.5.3 運行Hive On Spark測試用例
第8章 GraphX
8.1 GraphX簡介
8.1.1 主要特點
8.1.2 版本演化
8.1.3 應用場景
8.2 分布式圖計算處理技術介紹
8.2.1 屬性圖
8.2.2 圖數據的存儲與分割
8.3 Pregel計算模型
8.3.1 BSP
8.3.2 像頂點一樣思考
8.4 GraphX圖計算框架實現分析
8.4.1 基本概念
8.4.2 圖的加載與構建
8.4.3 圖數據存儲與分割
8.4.4 操作接口
8.4.5 Pregel在GraphX中的源碼實現
8.5 PageRank
8.5.1 什麼是PageRank
8.5.2 PageRank核心思想
第9章 MLLib
9.1 線性回歸
9.1.1 數據和估計
9.1.2 線性回歸參數求解方法
9.1.3 正則化
9.2 線性回歸的代碼實現
9.2.1 簡單示例
9.2.2 入口函數train
9.2.3 最優化算法optimizer
9.2.4 權重更新update
9.2.5 結果預測predict
9.3 分類算法
9.3.1 邏輯回歸
9.3.2 支持向量機
9.4 擬牛頓法
9.4.1 數學原理
9.4.2 代碼實現
9.5 MLLib與其他應用模塊間的整合
第四部分 附錄
附錄A Spark源碼調試
附錄B 源碼閱讀技巧
網路書店
類別
折扣
價格
-
新書$408