注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)家庭與辦公軟件Spark內(nèi)核機(jī)制解析及性能調(diào)優(yōu)

Spark內(nèi)核機(jī)制解析及性能調(diào)優(yōu)

Spark內(nèi)核機(jī)制解析及性能調(diào)優(yōu)

定 價(jià):¥59.00

作 者: 王家林 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 大數(shù)據(jù)科學(xué)叢書(shū)
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787111554424 出版時(shí)間: 2017-01-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 344 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)致力于Spark內(nèi)核的深入解析,帶領(lǐng)讀者掌握Spark內(nèi)核的各個(gè)關(guān)鍵知識(shí)點(diǎn)。具體內(nèi)容由詳細(xì)講述RDD提供的功能以及內(nèi)部實(shí)現(xiàn)的機(jī)制開(kāi)始,通過(guò)源碼引導(dǎo)讀者深入理解Spark的集群部署的內(nèi)部機(jī)制、Spark內(nèi)部調(diào)度的機(jī)制、Executor的內(nèi)部機(jī)制、Shuffle的內(nèi)部機(jī)制,進(jìn)而講述Tungsten的內(nèi)部機(jī)制,接著又進(jìn)一步深入分析了SparkStreaming的內(nèi)部機(jī)制。本書(shū)的后部分,是任何Spark應(yīng)用者都非常關(guān)注的Spark性能調(diào)優(yōu)的內(nèi)容。本書(shū)可以使讀者對(duì)Spark內(nèi)核有更深入徹底的理解,從而實(shí)現(xiàn)對(duì)Spark系統(tǒng)深度調(diào)優(yōu)、Spark生產(chǎn)環(huán)境下故障的定位和排除、Spark的二次開(kāi)發(fā)和系統(tǒng)高級(jí)運(yùn)維。本書(shū)的每章開(kāi)篇均有重點(diǎn)介紹以引導(dǎo)讀者有目的有重點(diǎn)的閱讀或查閱。本書(shū)適合于對(duì)大數(shù)據(jù)開(kāi)發(fā)有興趣的在校學(xué)生。同時(shí),對(duì)有分布式計(jì)算框架應(yīng)用經(jīng)驗(yàn)的人員,本書(shū)也可以作為Spark源碼解析的參考書(shū)籍。

作者簡(jiǎn)介

暫缺《Spark內(nèi)核機(jī)制解析及性能調(diào)優(yōu)》作者簡(jiǎn)介

圖書(shū)目錄

前言
第1章RDD功能解析
1.1RDD產(chǎn)生的技術(shù)背景及功能
1.2RDD的基本概念
1.2.1RDD的定義
1.2.2RDD五大特性
1.2.3RDD彈性特性的7個(gè)方面
1.3創(chuàng)建RDD的方式
1.3.1通過(guò)已經(jīng)存在的Scala集合創(chuàng)建RDD
1.3.2通過(guò)HDFS和本地文件系統(tǒng)創(chuàng)建RDD
1.3.3其他的RDD的轉(zhuǎn)換
1.3.4其他的RDD的創(chuàng)建
1.4RDD算子
1.5RDD的Transformation算子
1.5.1Transformation的定義
1.5.2Transformation在RDD中的角色定位及功能
1.5.3Transformation操作的Lazy特性
1.5.4通過(guò)實(shí)踐說(shuō)明Transformation的Lazy特性
1.6RDD的Action算子
1.6.1Action的定義
1.6.2Action 在RDD中的角色定位及功能
1.7小結(jié)
第2章RDD的運(yùn)行機(jī)制
2.1RDD依賴關(guān)系
2.1.1窄依賴(Narrow Dependency)
2.1.2寬依賴(Shuffle Dependency)
2.2有向無(wú)環(huán)圖(Directed Acyclic Graph,DAG)
2.2.1什么是DAG
2.2.2DAG的生成機(jī)制
2.2.3DAG的邏輯視圖
2.3RDD內(nèi)部的計(jì)算機(jī)制
2.3.1RDD的計(jì)算任務(wù)(Task)
2.3.2RDD的計(jì)算過(guò)程
2.4RDD中緩存的適用場(chǎng)景和工作機(jī)制
2.4.1緩存的使用
2.4.2緩存的適用場(chǎng)景
2.4.3緩存工作機(jī)制解析
2.5RDD的檢查點(diǎn)(Checkpoint)的適用場(chǎng)景和工作機(jī)制
2.5.1Checkpoint的觸發(fā)
2.5.2Checkpoint的適用場(chǎng)景
2.5.3Checkpoint工作機(jī)制解析
2.6RDD容錯(cuò)原理及其四大核心要點(diǎn)
2.6.1RDD容錯(cuò)原理
2.6.2RDD容錯(cuò)的四大核心要點(diǎn)
2.7通過(guò)WordCount實(shí)踐RDD內(nèi)部機(jī)制
2.7.1WordCount案例實(shí)踐
2.7.2解析RDD生成的內(nèi)部機(jī)制
2.8小結(jié)
第3章部署模式(Deploy)解析
3.1部署模式概述
3.2應(yīng)用程序的部署
3.2.1應(yīng)用程序部署的腳本解析
3.2.2應(yīng)用程序部署的源代碼解析
3.3Local與Local-Cluster部署
3.3.1Local部署
3.3.2Local[*]與Local[N]部署
3.3.3Local[*,M]與Local[N,M]部署
3.3.4Local-Cluster[S,C,M]部署
3.4Spark Standalone部署
3.4.1部署框架
3.4.2應(yīng)用程序的部署
3.4.3Master的部署
3.4.4Worker的部署
3.4.5內(nèi)部交互的消息機(jī)制
3.4.6Master HA的部署
3.5Spark on YARN的部署模型
3.5.1部署框架
3.5.2應(yīng)用程序的部署
3.6小結(jié)
第4章Spark調(diào)度器(Scheduler)運(yùn)行機(jī)制
4.1Spark運(yùn)行的核心概念
4.1.1Spark運(yùn)行的基本對(duì)象
4.1.2Spark運(yùn)行框架及各組件的基本運(yùn)行原理
4.2Spark Driver Program剖析
4.2.1什么是Spark Driver Program
4.2.2SparkContext原理剖析
4.2.3SparkContext源代碼解析
4.3Spark Job的觸發(fā)
4.3.1Job的邏輯執(zhí)行(General Logical Plan)
4.3.2Job具體的物理執(zhí)行
4.3.3Job觸發(fā)流程源代碼解析
4.4高層的DAG調(diào)度器(DAGScheduler)
4.4.1DAG的定義
4.4.2DAG的實(shí)例化
4.4.3DAGScheduer劃分Stage的原理
4.4.4DAGScheduer劃分Stage的具體算法
4.4.5Stage內(nèi)部Task獲取最佳位置的算法
4.5底層的Task調(diào)度器(TaskScheduler)
4.5.1TaskScheduer原理剖析
4.5.2TaskScheduer源代碼解析
4.6調(diào)度器的通信終端(SchedulerBackend)
4.6.1SchedulerBackend原理
4.6.2SchedulerBackend源代碼解析
4.6.3Spark程序的注冊(cè)機(jī)制
4.6.4Spark程序?qū)τ?jì)算資源Executor的管理
4.7小結(jié)
第5章執(zhí)行器(Executor)
5.1Executor的創(chuàng)建、分配、啟動(dòng)及異常處理
5.1.1Executor的創(chuàng)建
5.1.2Executor的資源分配
5.1.3Executor的啟動(dòng)
5.1.4Executor的異常處理
5.2執(zhí)行器的通信接口(ExecutorBackend)
5.2.1ExecutorBackend接口與Executor的關(guān)系
5.2.2ExecutorBackend的不同實(shí)現(xiàn)
5.2.3ExecutorBackend中的通信
5.3執(zhí)行器(Executor)中任務(wù)的執(zhí)行
5.3.1Executor中任務(wù)的加載
5.3.2Executor中的任務(wù)線程池
5.3.3任務(wù)執(zhí)行失敗處理
5.3.4剖析TaskRunner
5.4小結(jié)
第6章Spark的存儲(chǔ)模塊(Storage)
6.1Storage概述
6.1.1Storage的概念
6.1.2Storage的設(shè)計(jì)模式
6.2Storage模塊整體架構(gòu)
6.2.1通信層
6.2.2存儲(chǔ)層
6.2.3Partition與Block的對(duì)應(yīng)關(guān)系
6.3不同Storage Level對(duì)比
6.4Executor內(nèi)存模型
6.5Tachyon
6.5.1Tachyon簡(jiǎn)介
6.5.2Tachyon API的使用
6.5.3Tachyon在Spark中的使用
6.6小結(jié)
第7章Shuffle機(jī)制
7.1Shuffle概述
7.2Shuffle的框架
7.2.1Shuffle的框架演進(jìn)
7.2.2Shuffle的框架內(nèi)核
7.2.3Shuffle框架的源代碼解析
7.2.4Shuffle 的注冊(cè)
7.2.5Shuffle讀寫(xiě)數(shù)據(jù)的源代碼解析
7.3基于Hash的Shuffle
7.3.1基于Hash的Shuffle內(nèi)核
7.3.2基于Hash的Shuffle寫(xiě)數(shù)據(jù)的源代碼解析
7.4基于Sort的Shuffle
7.4.1基于Sort的Shuffle內(nèi)核
7.4.2基于Sort的Shuffle寫(xiě)數(shù)據(jù)的源代碼解析
7.5基于Tungsten Sort的Shuffle
7.5.1基于Tungsten Sort的Shuffle內(nèi)核
7.5.2基于Tungsten Sort的Shuffle寫(xiě)數(shù)據(jù)的源代碼解析
7.6小結(jié)
第8章鎢絲計(jì)劃(Project Tungsten)
8.1鎢絲計(jì)劃(Project Tungsten)概述
8.2內(nèi)存管理模型
8.2.1現(xiàn)有內(nèi)存管理的機(jī)制
8.2.2Project Tungsten內(nèi)存管理的模型及其源代碼的解析
8.3基于內(nèi)存管理模型的Shuffle二進(jìn)制數(shù)據(jù)處理
8.3.1插入記錄時(shí)二進(jìn)制數(shù)據(jù)的處理
8.3.2spill時(shí)二進(jìn)制數(shù)據(jù)的處理
8.4小結(jié)
第9章性能優(yōu)化
9.1Spark的配置機(jī)制
9.1.1

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)