圖解Spark:核心技術與案例實戰

書名:圖解Spark:核心技術與案例實戰,語言:簡體中文,ISBN:9787121302367,頁數:466,出版社:電子工業出版社,作者:郭景瞻,出版日期:2017/01/01,類別:自然科普與應用科學
$ 469
 

內容簡介

本書以Spark2.0版本為基礎進行編寫,全面介紹了Spark核心及其生態圈組件技術。

主要包括Spark生態圈、實戰環境搭建、編程模型和內部重要模塊的分析,重點介紹了消息通信框架、作業調度、容錯執行、監控管理、存儲管理以及運行框架,同時還介紹了Spark生態圈相關組件,包括了SparkSQL的即席查詢、Spark Streaming的實時流處理應用、MLbase / MLlib的機器學習、GraphX的圖處理、SparkR的數學計算和Alluxio的分布式內存文件系統等。

本書從Spark核心技術進行深入分析,重要章節會結合源代碼解讀其實現原理,圍繞着技術原理介紹了相關典型實例,讀者通過這些實例可以更加深入地理解Spark的運行機制。另外本書還應用了大量的圖表進行說明,通過這種方式讓讀者能夠更加直觀地理解Spark相關原理。

郭景瞻,現就職京東商城,開源技術愛好者,對Spark等大數據系統有較為深入的研究,對Spark應用開發、運維和測試有較多的經驗,喜歡深入閱讀Spark源代碼,分析其核心原理和運行機制。個人博客地址為http://www.cnblogs.com/shishanyuan,在該博客中提供了本書的附錄和勘誤。
 

目錄

第一篇基礎篇
第1章Spark及其生態圈概述
1.1Spark簡介
1.1.1什麼是Spark
1.1.2Spark與MapReduce比較
1.1.3Spark的演進路線圖
1.2Spark生態系統
1.2.1Spark Core
1.2.2Spark Streaming
1.2.3Spark SQL
1.2.4BlinkDB
1.2.5MLBase/MLlib
1.2.6GraphX
1.2.7SparkR
1.2.8Alluxio
1.3小結
第2章搭建Spark實戰環境
2.1基礎環境搭建
2.1.1搭建集群樣板機
2.1.2配置集群環境
2.2編譯Spark源代碼
2.2.1配置Spark編譯環境
2.2.2使用Maven編譯Spark
2.2.3使用SBT編譯Spark
2.2.4生成Spark部署包
2.3搭建Spark運行集群
2.3.1修改配置文件
2.3.2啟動Spark
2.3.3驗證啟動
2.3.4第一個實例
2.4搭建Spark實戰開發環境
2.4.1CentOS中部署IDEA
2.4.2使用IDEA開發程序
2.4.3使用IDEA閱讀源代碼
2.5小結
第二篇核心篇
第3章Spark編程模型
3.1RDD概述
3.1.1背景
3.1.2RDD簡介
3.1.3RDD的類型
3.2RDD的實現
3.2.1作業調度
3.2.2解析器集成
3.2.3內存管理
3.2.4檢查點支持
3.2.5多用戶管理
3.3編程接口
3.3.1RDD分區(Partitions)
3.3.2RDD首選位置(PreferredLocations)
3.3.3RDD依賴關系(Dependencies)
3.3.4RDD分區計算(Iterator)
3.3.5RDD分區函數(Partitioner)
3.4創建操作
3.4.1並行化集合創建操作
3.4.2外部存儲創建操作
3.5轉換操作
3.5.1基礎轉換操作
3.5.2鍵值轉換操作
3.6控制操作
3.7行動操作
3.7.1集合標量行動操作
3.7.2存儲行動操作
3.8小結
第4章Spark核心原理
4.1消息通信原理
4.1.1Spark消息通信架構
4.1.2Spark啟動消息通信
4.1.3Spark運行時消息通信
4.2作業執行原理
4.2.1概述
4.2.2提交作業
4.2.3划分調度階段
4.2.4提交調度階段
4.2.5提交任務
4.2.6執行任務
4.2.7獲取執行結果
4.3調度算法
4.3.1應用程序之間
4.3.2作業及調度階段之間
4.3.3任務之間
4.4容錯及HA
4.4.1Executor異常
4.4.2Worker異常
4.4.3Master異常
4.5監控管理
4.5.1UI監控
4.5.2Metrics
4.5.3REST
4.6實例演示
4.6.1計算年降水實例
4.6.2HA配置實例
4.7小結
第5章Spark存儲原理
5.1存儲分析
5.1.1整體架構
5.1.2存儲級別
5.1.3RDD存儲調用
5.1.4讀數據過程
5.1.5寫數據過程
5.2Shuffle分析
5.2.1Shuffle簡介
5.2.2Shuffle的寫操作
5.2.3Shuffle的讀操作
5.3串行化和壓縮
5.3.1串行化
5.3.2壓縮
5.4共享變量
5.4.1廣播變量
5.4.2累加器
5.5實例演示
5.6小結
第6章Spark運行架構
6.1運行架構總體介紹
6.1.1總體介紹
6.1.2重要類介紹
6.2本地(Local)運行模式
6.2.1運行模式介紹
6.2.2實現原理
6.3偽分布(Local—Cluster)運行模式
6.3.1運行模式介紹
6.3.2實現原理
6.4獨立(Standalone)運行模式
6.4.1運行模式介紹
6.4.2實現原理
6.5YARN運行模式
6.5.1YARN運行框架
6.5.2YARN—Client運行模式介紹
6.5.3YARN—Client運行模式實現原理
6.5.4YARN—Cluster運行模式介紹
6.5.5YARN—Cluster運行模式實現原理
6.5.6YARN—Client與YARN—Cluster對比
6.6Mesos運行模式
6.6.1Mesos介紹
6.6.2粗粒度運行模式介紹
6.6.3粗粒度實現原理
6.6.4細粒度運行模式介紹
6.6.5細粒度實現原理
6.6.6Mesos粗粒度和Mesos細粒度對比
6.7實例演示
6.7.1獨立運行模式實例
6.7.2YARN—Client實例
6.7.3YARN—Cluster實例
6.8小結
第三篇組件篇
第7章Spark SQL
7.1Spark SQL簡介
7.1.1Spark SQL發展歷史
7.1.2DataFrame/Dataset介紹
7.2SparkSQL運行原理
7.2.1通用SQL執行原理
7.2.2SparkSQL運行架構
7.2.3SQLContext運行原理分析
7.2.4HiveContext介紹
7.3使用Hive—Console
7.3.1編譯Hive—Console
7.3.2查看執行計划
7.3.3應用Hive—Console
7.4使用SQLConsole
7.4.1啟動HDFS和Spark Shell
7.4.2與RDD互操作
7.4.3讀取JSON格式數據
7.4.4讀取Parquet格式數據
7.4.5緩存演示
7.4.6DSL演示
7.5使用Spark SQL CLI
7.5.1配置並啟動Spark SQL CLI
7.5.2實戰Spark SQL CLI
7.6使用Thrift Server
7.6.1配置並啟動Thrift Server
7.6.2基本操作
7.6.3交易數據實例
7.6.4使用IDEA開發實例
7.7實例演示
7.7.1銷售數據分類實例
7.7.2網店銷售數據統計
7.8小結
第8章Spark Streaming
8.1Spark Streaming簡介
8.1.1術語定義
8.1.2Spark Streaming特點
8.2Spark Streaming編程模型
8.2.1DStream的輸入源
8.2.2DStream的操作
8.3Spark Streaming運行架構
8.3.1運行架構
8.3.2消息通信
8.3.3Receiver分發
8.3.4容錯性
8.4Spark Streaming運行原理
8.4.1啟動流處理引擎
8.4.2接收及存儲流數據
8.4.3數據處理
8.5實例演示
8.5.1流數據模擬器
8.5.2銷售數據統計實例
8.5.3Spark Streaming Kafka實例
8.6小結
第9章Spark MLlib
9.1Spark MLlib簡介
9.1.1Spark MLlib介紹
9.1.2Spark MLlib數據類型
9.1.3Spark MLlib基本統計方法
9.1.4預言模型標記語言
9.2線性模型
9.2.1數學公式
9.2.2線性回歸
9.2.3線性支持向量機
9.2.4邏輯回歸
9.2.5線性最小二乘法、Lasso和嶺回歸
9.2.6流式線性回歸
9.3決策樹
9.4決策模型組合
9.4.1隨機森林
9.4.2梯度提升決策樹
9.5朴素貝葉斯
9.6協同過濾
9.7聚類
9.7.1K—means
9.7.2高斯混合
9.7.3快速迭代聚類
9.7.4LDA
9.7.5二分K—means
9.7.6流式K—means
9.8降維
9.8.1奇異值分解降維
9.8.2主成分分析降維
9.9特征提取和變換
9.9.1詞頻—逆文檔頻率
9.9.2詞向量化工具
9.9.3標准化
9.9.4范數化
9.10頻繁模式挖掘
9.10.1頻繁模式增長
9.10.2關聯規則挖掘
9.10.3PrefixSpan
9.11實例演示
9.11.1K—means聚類算法實例
9.11.2手機短信分類實例
9.12小結
第10章SparkGraphX
10.1GraphX介紹
10.1.1圖計算
10.1.2GraphX介紹
10.1.3發展歷程
10.2GraphX實現分析
10.2.1GraphX圖數據模型
10.2.2GraphX圖數據存儲
10.2.3GraphX圖切分策略
10.2.4GraphX圖操作
10.3實例演示
10.3.1圖例演示
10.3.2社區發現演示
10.4小結
第11章SparkR
11.1概述
11.1.1R語言介紹
11.1.2SparkR介紹
11.2SparkR與DataFrame
11.2.1DataFrames介紹
11.2.2與DataFrame的相關操作
11.3編譯安裝SparkR
11.3.1編譯安裝R語言
11.3.2安裝SparkR運行環境
11.3.3安裝SparkR
11.3.4啟動並驗證安裝
11.4實例演示
11.5小結
第12章Alluxio
12.1Alluxio簡介
12.1.1Alluxio介紹
12.1.2Alluxio系統架構
12.1.3HDFS與Alluxio
12.2Alluxio編譯部署
12.2.1編譯Alluxio
12.2.2單機部署Alluxio
12.2.3集群模式部署Alluxio
12.3Alluxio命令行使用
12.3.1接口說明
12.3.2接口操作示例
12.4實例演示
12.4.1啟動環境
12.4.2Alluxio上運行Spark
12.4.3Alluxio上運行MapReduce
12.5小結
 

詳細資料

  • ISBN:9787121302367
  • 規格:466頁 / 普通級 / 1-1
  • 出版地:大陸

資料來源:http://www.books.com.tw/products/CN11401475