注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)數(shù)據(jù)庫Spark大數(shù)據(jù)處理技術(shù)

Spark大數(shù)據(jù)處理技術(shù)

Spark大數(shù)據(jù)處理技術(shù)

定 價:¥65.00

作 者: 夏俊鸞 程浩 邵賽賽,
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787121250811 出版時間: 2015-01-01 包裝: 平裝
開本: 16開 頁數(shù): 356 字數(shù):  

內(nèi)容簡介

  本書以Spark 0.9版本為基礎(chǔ)進行編寫,是一本全面介紹Spark及Spark生態(tài)圈相關(guān)技術(shù)的書籍,是國內(nèi)首本深入介紹 Spark 原理和架構(gòu)的技術(shù)書籍。主要內(nèi)容有 Spark 基礎(chǔ)功能介紹及內(nèi)部重要模塊分析,包括部署模式、調(diào)度框架、存儲管理以及應(yīng)用監(jiān)控;同時也詳細介紹了 Spark 生態(tài)圈中其他的軟件和模塊,包括 SQL 處理引擎 Shark 和 Spark SQL、流式處理引擎 Spark Streaming、圖計算框架 Graphx 以及分布式內(nèi)存文件系統(tǒng) Tachyon。本書從概念和原理上對 Spark 核心框架和生態(tài)圈做了詳細的解讀,并對 Spark 的應(yīng)用現(xiàn)狀和未來發(fā)展做了一定的介紹,旨在為大數(shù)據(jù)從業(yè)人員和 Spark愛好者提供一個更深入學(xué)習(xí)的平臺。本書適合任何大數(shù)據(jù)、Spark 領(lǐng)域的從業(yè)人員閱讀,同時也為架構(gòu)師、軟件開發(fā)工程師和大數(shù)據(jù)愛好者展現(xiàn)了一個現(xiàn)代大數(shù)據(jù)框架的架構(gòu)原理和實現(xiàn)細節(jié)。相信通過學(xué)習(xí)本書,讀者能夠熟悉和掌握 Spark 這一當(dāng)前流行的大數(shù)據(jù)框架,并將其投入到生產(chǎn)實踐中去。

作者簡介

  夏俊鸞 現(xiàn)任阿里巴巴數(shù)據(jù)平臺部高級技術(shù)專家,Apache Spark項目Committer,曾就職于英特爾亞太研發(fā)中心,微博賬號@Andrew-Xia。劉旭暉 現(xiàn)任蘑菇街數(shù)據(jù)平臺資深架構(gòu)師(花名天火),曾就職于英特爾亞太研發(fā)中心大數(shù)據(jù)軟件部,Spark/Hadoop/Hbase/Phoenix 等眾多大數(shù)據(jù)相關(guān)開源項目的積極貢獻者。樂于分享,著有CSDN博客 blog.csdn.net/colorant。邵賽賽 英特爾亞太研發(fā)有限公司開發(fā)工程師,專注于大數(shù)據(jù)領(lǐng)域,開源愛好者,現(xiàn)從事Spark相關(guān)工作,Spark代碼貢獻者。程浩 英特爾大數(shù)據(jù)技術(shù)團隊軟件工程師,Shark和Spark SQL活躍開發(fā)者,致力于SQL on Big Data的性能調(diào)優(yōu)與優(yōu)化。史鳴飛 英特爾亞太研發(fā)有限公司大數(shù)據(jù)軟件部工程師,專注于大數(shù)據(jù)領(lǐng)域,主要從事Spark及相關(guān)項目的開發(fā)及應(yīng)用,Spark及Shark代碼貢獻者,現(xiàn)在主要投身于Tachyon項目的開發(fā)。黃潔 目前就職于英特爾亞太研發(fā)中心大數(shù)據(jù)技術(shù)中心,擔(dān)任高級軟件工程師,致力于大數(shù)據(jù)技術(shù)的性能優(yōu)化及開發(fā)工作,涉及Hadoop、Spark、HBase等開源項目。在多年的工作過程中,積累了一定的分布式大數(shù)據(jù)框架性能調(diào)優(yōu)經(jīng)驗,并且是Apache Chukwa項目的PMC成員和Committer。在此之前,畢業(yè)于上海交通大學(xué)并獲碩士及學(xué)士學(xué)位。

圖書目錄

第1章 Spark系統(tǒng)概述 15 1.1 大數(shù)據(jù)處理框架 15 1.2 Spark大數(shù)據(jù)處理框架 17 1.2.1 RDD表達能力 17 1.2.2 Spark子系統(tǒng) 18 1.3 小結(jié) 21 第2章 Spark RDD及編程接口 23 2.1 Spark程序“Hello World” 23 2.2 Spark RDD 26 2.2.1 RDD分區(qū)(Partition)27 2.2.2 RDD優(yōu)先位置(preferredLocations)28 2.2.3 RDD依賴關(guān)系(Dependencies)29 2.2.4 RDD分區(qū)計算(Compute) 34 2.2.5 RDD分區(qū)函數(shù)(partitioner)35 2.3 創(chuàng)建操作 39 2.3.1 集合創(chuàng)建操作 39 2.3.2 存儲創(chuàng)建操作 40 2.4 轉(zhuǎn)換操作 42 2.4.1 RDD 基本轉(zhuǎn)換操作 42 2.4.2 鍵值RDD 轉(zhuǎn)換操作 52 2.4.3 再論RDD 依賴關(guān)系 59 2.5 控制操作(control operation) 61 2.6 行動操作(action operation) 63 2.6.1 集合標量行動操作 63 2.6.2 存儲行動操作 68 2.7 小結(jié) 72 第3 章 Spark 運行模式及原理 74 3.1 Spark 運行模式概述 74 3.1.1 Spark 運行模式列表74 3.1.2 Spark 基本工作流程 75 3.1.3 相關(guān)基本類 77 3.2 Local 模式 80 3.2.1 部署及程序運行80 3.2.2 內(nèi)部實現(xiàn)原理 80 3.3 Standalone 模式 81 3.3.1 部署及程序運行 81 3.3.2 內(nèi)部實現(xiàn)原理 85 3.4 Local-cluster 模式 86 3.4.1 部署及程序運行 86 3.4.2 內(nèi)部實現(xiàn)原理 86 3.5 Mesos 模式 87 3.5.1 部署及程序運行 87 3.5.2 內(nèi)部實現(xiàn)原理 88 3.6 Yarn standalone / Yarn cluster 模式 91 3.6.1 部署及程序運行 91 3.6.2 內(nèi)部實現(xiàn)原理 93 3.7 Yarn Client 模式 94 3.7.1 部署及程序運行 94 3.7.2 內(nèi)部實現(xiàn)原理 95 3.8 各種模式的實現(xiàn)細節(jié)比較 96 3.8.1 環(huán)境變量的傳遞 97 3.8.2 Jar 包和各種依賴文件的分發(fā) 99 3.8.3 任務(wù)管理和序列化 101 3.8.4 用戶參數(shù)配置 102 3.8.5 用戶及權(quán)限控制 103 3.9 Spark 1.0 版本之后的變化 104 3.10 小結(jié) 105 第4 章 Spark 調(diào)度管理原理 106 4.1 Spark 作業(yè)調(diào)度管理概述 106 4.2 Spark 調(diào)度相關(guān)基本概念 107 4.3 作業(yè)調(diào)度模塊頂層邏輯概述 108 4.4 作業(yè)調(diào)度具體工作流程 112 4.4.1 調(diào)度階段的拆分113 4.4.2 調(diào)度階段的提交 117 4.4.3 任務(wù)集的提交 119 4.4.4 完成狀態(tài)的監(jiān)控 119 4.4.5 任務(wù)結(jié)果的獲取 121 4.5 任務(wù)集管理模塊詳解 122 4.6 調(diào)度池和調(diào)度模式分析 124 4.7 其他調(diào)度相關(guān)內(nèi)容 126 4.7.1 Spark 應(yīng)用之間的調(diào)度關(guān)系 126 4.7.2 調(diào)度過程中的數(shù)據(jù)本地性問題 127 4.8 小結(jié) 127 第5章 Spark 的存儲管理 128 5.1 存儲管理模塊整體架構(gòu) 128 5.1.1 通信層架構(gòu) 129 5.1.2 通信層消息傳遞 132 5.1.3 注冊存儲管理模塊 133 5.1.4 存儲層架構(gòu) 134 5.1.5 數(shù)據(jù)塊 (Block) 136 5.2 RDD 持久化 137 5.2.1 RDD 分區(qū)和數(shù)據(jù)塊的關(guān)系 137 5.2.2 內(nèi)存緩存 138 5.2.3 磁盤緩存 139 5.2.4 持久化選項 141 5.2.5 如何選擇不同的持久化選項 142 5.3 Shuffle 數(shù)據(jù)持久化 143 5.4 廣播(Broadcast)變量持久化 146 5.5 小結(jié) 146 第6 章 Spark 監(jiān)控管理 148 6.1 UI 管理 148 6.1.1 實時UI 管理 149 6.1.2 歷史UI 管理 154 6.2 Metrics 管理 155 6.2.1 Metrics 系統(tǒng)架構(gòu) 156 6.2.2 Metrics 系統(tǒng)配置 157 6.2.3 輸入源(Metrics Source)介紹 159 6.2.4 輸出方式(Metrics Sink)介紹 160 6.3 小結(jié) 162 第7 章 Shark 架構(gòu)與安裝配置 163 7.1 Shark 架構(gòu)淺析 164 7.2 Hive/Shark 各功能組件對比分析 165 7.2.1 MetaStore 165 7.2.2 CLI/ Beeline 165 7.2.3 JDBC/ODBC 166 7.2.4 HiveServer/2 與 SharkServer/2 166 7.2.5 Driver 167 7.2.6 SQL Parser 168 7.2.7 查詢優(yōu)化器(Query Optimizer)169 7.2.8 物理計劃與執(zhí)行 169 7.3 Shark 安裝配置與使用 171 7.3.1 安裝前準備工作 171 7.3.2 不同運行模式下的安裝Shark 172 7.3.2.1 單機運行模式 172 7.3.2.2 集群運行模式 172 7.3.2.3 運行在亞馬遜AWS 174 7.4 Shark SQL 命令行工具(CLI)174 7.5 使用Shark Shell 178 7.6 啟動SharkServer 178 7.7 SharkServer2 配置與啟動 179 7.8 緩存數(shù)據(jù)表 180 7.8.1 數(shù)據(jù)緩存級別 180 7.8.2 創(chuàng)建不同緩存級別的Shark 數(shù)據(jù)表 180 7.8.3 指定數(shù)據(jù)表緩存策略 181 7.8.4 使用Tachyon 182 7.9 常見問題分析 182 7.9.1 OutOfMemory 異常 183 7.9.2 數(shù)據(jù)處理吞吐量低 183 7.9.3 Shark 查詢比Hive 慢 184 7.10 小結(jié) 184 第8 章 Shark 程序開發(fā)與擴展 186 8.1 SQL API 186 8.1.1 JDBC 接口訪問Shark 187 8.1.2 ODBC 接口訪問Shark 188 8.1.3 sql2rdd API 188 8.2 擴展Shark 191 8.2.1 ObjectInspector 介紹 191 8.2.2 自定義函數(shù) 195 8.3 SerDe 自定義數(shù)據(jù)存取格式 218 8.4 StorageHandler 自定義數(shù)據(jù)存取 219 8.5 小結(jié) 221 第9 章 Spark SQL 222 9.1 邏輯架構(gòu) 222 9.1.1 Catalyst 功能邊界 223 9.1.2 SQL 解析階段 224 9.1.3 邏輯計劃元數(shù)據(jù)綁定和語義分析階段 224 9.1.4 邏輯計劃優(yōu)化優(yōu)化階段 224 9.1.5 物理計劃生成階段 225 9.1.6 Shark 和Spark SQL 對比 225 9.2 Catalyst 上下文(Context) 226 9.2.1 SQLContext 227 9.2.2 HiveContext 228 9.3 SQL API 228 9.3.1 構(gòu)建/使用SQLContext 和HiveContext 229 9.3.2 SchemaRDD 229 9.3.3 Row 對象 232 9.3.4 數(shù)據(jù)類型 233 9.3.5 DSL API 舉例 233 9.3.6 表達式計算 235 9.3.7 Parquet 列式存儲文件 237 9.3.8 代碼演示 238 Spark 與大數(shù)據(jù)開源技術(shù) 11 9.4 Java API 241 9.5 小結(jié) 241 第10 章 Spark Streaming 242 流數(shù)據(jù)處理框架 242 10.1 快速入門 243 10.2 SparkStreaming 基本概念 245 10.2.1 鏈接和初始化 245 10.2.2 時間和窗口概念 246 10.2.3 DStream 原理 248 10.2.4 DStream 輸入源 249 10.2.5 DStream 操作 250 10.2.6 DStream 持久化 253 10.3 性能調(diào)優(yōu) 253 10.3.1 運行時間優(yōu)化 253 10.3.2 內(nèi)存使用優(yōu)化 254 10.4 容錯處理 255 10.4.1 工作節(jié)點失效 255 10.4.2 驅(qū)動節(jié)點失效 256 10.5 DStream 作業(yè)的產(chǎn)生和調(diào)度 258 10.5.1 作業(yè)產(chǎn)生 258 10.5.2 作業(yè)調(diào)度 259 10.5.3 Streaming 作業(yè)與Spark 作業(yè)之間的關(guān)系 260 10.6 DStream 與RDD 之間關(guān)系 262 10.7 數(shù)據(jù)接收原理 264 10.8 自定義數(shù)據(jù)輸入源 268 10.9 自定義監(jiān)控接口(StreamingListener) 270 10.10 Spark Streaming 案例分析 271 10.11 小結(jié) 273 第11 章 275 GraphX 計算框架 275 11.1 圖并行計算 275 11.1.1 數(shù)據(jù)并行與圖并行計算 275 11.1.2 圖并行計算框架簡介 276 11.1.3 GraphX 簡介 280 11.2 Graphx 模型設(shè)計280 11.2.1 數(shù)據(jù)模型 280 11.1.2 圖計算接口 281 11.3 GraphX 模型實現(xiàn) 285 11.3.1 圖的分布式存儲 285 11.3.2 圖操

本目錄推薦

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