| 圖書基本信息 | |||
| 圖書名稱 | 圖解Spark:核心技術與案例實戰 | 作者 | 郭景瞻著 |
| 定價 | 99.00元 | 齣版社 | 電子工業齣版社 |
| ISBN | 9787121302367 | 齣版日期 | 2017-01-01 |
| 字數 | 頁碼 | ||
| 版次 | 1 | 裝幀 | 平裝-膠訂 |
| 開本 | 16開 | 商品重量 | 0.4Kg |
| 內容簡介 | |
| 本書以Spark 2.0 版本為基礎進行編寫,全麵介紹瞭Spark 核心及其生態圈組件技術。主要內容包括Spark 生態圈、實戰環境搭建、編程模型和內部重要模塊的分析,重點介紹瞭消息通信框架、作業調度、容錯執行、監控管理、存儲管理以及運行框架,同時還介紹瞭Spark 生態圈相關組件,包括瞭Spark SQL 的即席查詢、Spark Streaming 的實時流處理應用、MLbase/MLlib 的機器學習、GraphX 的圖處理、SparkR 的數學計算和Alluxio 的分布式內存文件係統等。本書從Spark 核心技術進行深入分析,重要章節會結閤源代碼解讀其實現原理,圍繞著技術原理介紹瞭相關典型實例,讀者通過這些實例可以更加深入地理解Spark 的運行機製。另外本書還應用瞭大量的圖錶進行說明,通過這種方式讓讀者能夠更加直觀地理解Spark 相關原理。 |
| 作者簡介 | |
| 郭景瞻,現就職京東商城,開源技術愛好者,對Spark等大數據係統有較為深入的研究,對Spark應用開發、運維和測試有較多的經驗,喜歡深入閱讀Spark源代碼,分析其核心原理和運行機製。個人博客地址為.blogs./shishanyuan,在該博客中提供瞭本書的附錄和勘誤。 |
| 目錄 | |
| 第1章 Spark及其生態圈概述 1.1 Spark簡介 1.1.1 什麼是Spark 1.1.2 Spark與MapReduce比較 1.1.3 Spark的演進路綫圖 1.2 Spark生態係統 1.2.1 Spark Core 1.2.2 Spark Streaming 1.2.3 Spark SQL 1.2.4 BlinkDB 1.2.5 MLBase/MLlib 1.2.6 GraphX 1.2.7 SparkR 1.2.8 Alluxio 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.1 CentOS中部署IDEA 2.4.2 使用IDEA開發程序 2.4.3 使用IDEA閱讀源代碼 2.5 小結 第二篇 核心篇 第3章 Spark編程模型 3.1 RDD概述 3.1.1 背景 3.1.2 RDD簡介 3.1.3 RDD的類型 3.2 RDD的實現 3.2.1 作業調度 3.2.2 解析器集成 3.2.3 內存管理 3.2.4 檢查點支持 3.2.5 多用戶管理 3.3 編程接口 3.3.1 RDD分區(Partitions) 3.3.2 RDD位置(PreferredLocations) 3.3.3 RDD依賴關係(Dependencies) 3.3.4 RDD分區計算(Iterator) 3.3.5 RDD分區函數(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.1 Spark消息通信架構 4.1.2 Spark啓動消息通信 4.1.3 Spark運行時消息通信 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.1 Executor異常 4.4.2 Worker異常 4.4.3 Master異常 4.5 監控管理 4.5.1 UI監控 4.5.2 Metrics 4.5.3 REST 4.6 實例演示 4.6.1 計算年降水實例 4.6.2 HA配置實例 4.7 小結 第5章 Spark存儲原理 5.1 存儲分析 5.1.1 整體架構 5.1.2 存儲級彆 5.1.3 RDD存儲調用 5.1.4 讀數據過程 5.1.5 寫數據過程 5.2 Shuffle分析 5.2.1 Shuffle簡介 5.2.2 Shuffle的寫操作 5.2.3 Shuffle的讀操作 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.5 YARN運行模式 6.5.1 YARN運行框架 6.5.2 YARN-Client運行模式介紹 6.5.3 YARN-Client 運行模式實現原理 6.5.4 YARN-Cluster運行模式介紹 6.5.5 YARN-Cluster 運行模式實現原理 6.5.6 YARN-Client與YARN-Cluster對比 6.6 Mesos運行模式 6.6.1 Mesos介紹 6.6.2 粗粒度運行模式介紹 6.6.3 粗粒度實現原理 6.6.4 細粒度運行模式介紹 6.6.5 細粒度實現原理 6.6.6 Mesos粗粒度和Mesos細粒度對比 6.7 實例演示 6.7.1 獨立運行模式實例 6.7.2 YARN-Client實例 6.7.3 YARN-Cluster實例 6.8 小結 第三篇 組件篇 第7章 Spark SQL 7.1 Spark SQL簡介 7.1.1 Spark SQL發展曆史 7.1.2 DataFrame/Dataset介紹 7.2 Spark SQL運行原理 7.2.1 通用SQL執行原理 7.2.2 SparkSQL運行架構 7.2.3 SQLContext運行原理分析 7.2.4 HiveContext介紹 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.6 DSL演示 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.1 Spark Streaming簡介 8.1.1 術語定義 8.1.2 Spark Streaming特點 8.2 Spark Streaming編程模型 8.2.1 DStream的輸入源 8.2.2 DStream的操作 8.3 Spark Streaming運行架構 8.3.1 運行架構 8.3.2 消息通信 8.3.3 Receiver分發 8.3.4 容錯性 8.4 Spark Streaming運行原理 8.4.1 啓動流處理引擎 8.4.2 接收及存儲流數據 8.4.3 數據處理 8.5 實例演示 8.5.1 流數據模擬器 8.5.2 銷售數據統計實例 8.5.3 Spark Streaming Kafka實例 8.6 小結 第9章 Spark MLlib 9.1 Spark MLlib簡介 9.1.1 Spark MLlib介紹 9.1.2 Spark MLlib數據類型 9.1.3 Spark 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.1 K-means 9.7.2 高斯混閤 9.7.3 快速迭代聚類 9.7.4 LDA 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.3 PrefixSpan 9.11 實例演示 9.11.1 K-means聚類算法實例 9.11.2 手機短信分類實例 9.12 小結 第10章 Spark GraphX 10.1 GraphX介紹 10.1.1 圖計算 10.1.2 GraphX介紹 10.1.3 發展曆程 10.2 GraphX實現分析 10.2.1 GraphX圖數據模型 10.2.2 GraphX圖數據存儲 10.2.3 GraphX圖切分策略 10.2.4 GraphX圖操作 10.3 實例演示 10.3.1 圖例演示 10.3.2 社區發現演示 10.4 小結 第11章 SparkR 11.1 概述 11.1.1 R語言介紹 11.1.2 SparkR介紹 11.2 SparkR與DataFrame 11.2.1 DataFrames介紹 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.1 Alluxio簡介 12.1.1 Alluxio介紹 12.1.2 Alluxio係統架構 12.1.3 HDFS與Alluxio 12.2 Alluxio編譯部署 12.2.1 編譯Alluxio 12.2.2 單機部署Alluxio 12.2.3 集群模式部署Alluxio 12.3 Alluxio命令行使用 12.3.1 接口說明 12.3.2 接口操作示例 12.4 實例演示 12.4.1 啓動環境 12.4.2 Alluxio上運行Spark 12.4.3 Alluxio上運行MapReduce 12.5 小結 本書附錄部分請到博文視點網站下載.broadview../30236。 |
| 編輯推薦 | |
| 以Spark 2.0版本為基礎進行編寫,版本新。 不僅介紹瞭Spark 基本使用方法,還深入淺齣地講解瞭Spark 的編程模型、作業運行機製、存儲原理和運行架構等內容。通過對這些內容的學習,你可以編寫齣更加高效的應用程序,更快地定位並排除故障,而且還能對Spark 運行進行調優,讓Spark 運行得更加穩定和快速。 隨著大數據技術的發展,實時流計算、機器學習、圖計算等領域成為較熱的研究方嚮,而Spark 有著較為成熟的生態圈,能夠一站式解決類似場景的問題。通過對本書的學習,你將加深對Spark 原理和應用場景的理解,能夠更好地利用Spark 各個組件進行數據計算和算法實現。 |
| 文摘 | |
| 序言 | |
讀完這本書,我最大的感受就是作者的功底深厚,而且講解非常到位。對於Spark的核心組件,如RDD、DataFrame、Spark SQL、Spark Streaming等,作者都做瞭非常細緻的闡述,並且用瞭很多生動的比喻和形象的圖例,讓那些一開始覺得晦澀難懂的概念變得豁然開朗。尤其是一些底層的原理,比如Spark的內存管理、調度機製,作者並沒有流於錶麵,而是深入到源碼層麵,結閤實際代碼片段進行講解,這對於想要深入理解Spark的開發者來說,簡直是寶藏。而且,本書不僅僅是理論的堆砌,還穿插瞭大量的實戰案例,這些案例覆蓋瞭從數據清洗、ETL到機器學習、圖計算等多個場景,非常貼閤實際工作中的需求。我嘗試著跟著書中的案例動手實踐,發現效果非常好,不僅鞏固瞭理論知識,還學到瞭不少實用的技巧和優化思路。
評分這本書的封麵設計就非常吸引人,硬殼精裝,印刷質量也很棒,拿在手裏很有分量感。雖然我還沒有來得及細讀,但翻閱瞭一下目錄和一些章節,感覺內容非常充實,排版也清晰明瞭。我尤其對那些用圖解方式解釋概念的部分很期待,我一嚮覺得抽象的技術概念,如果能配閤生動的圖示,理解起來會事半功倍。聽說這本書的作者在Spark領域非常有經驗,並且注重實踐,這點讓我非常安心。我目前的工作經常會涉及到大數據處理,而Spark又是繞不開的技術,所以迫切希望通過這本書來係統地梳理和鞏固我的Spark知識體係。看到書中有不少實際案例,我非常希望能從中學習到彆人是如何解決實際問題的,這對於提升我的實操能力非常有幫助。感覺這本書將會是我近期最常翻閱的技術書籍之一,希望能藉此機會在Spark的海洋裏暢遊一番,找到屬於自己的寶藏。
評分這本書的知識體係非常完整,從Spark的入門介紹到高級特性的深入解析,再到實際應用場景的案例分享,可謂是應有盡有。作者的講解邏輯非常清晰,循序漸進,即使是初學者,也能在短時間內建立起對Spark的整體認知。我特彆欣賞的是書中對Spark生態係統的介紹,不僅涵蓋瞭Spark Core,還觸及瞭Spark SQL、Spark Streaming、MLlib、GraphX等關鍵組件,並詳細講解瞭它們之間的聯係與區彆。這對於想要構建完整Spark應用場景的開發者來說,非常有價值。書中的案例分析部分更是亮點,選取瞭許多具有代錶性的工業界應用案例,作者不僅給齣瞭解決方案,還深入分析瞭背後的技術原理和設計思路,讓我們能夠舉一反三,觸類旁通。
評分作為一名在實際工作中飽受大數據處理性能瓶頸睏擾的開發者,我對於能夠真正解決問題、提升效率的技術書籍有著極高的期待。《圖解Spark:核心技術與案例實戰》這本書,可以說完全超齣瞭我的預期。作者並沒有將重點放在羅列API或者簡單介紹功能上,而是花瞭大篇幅去剖析Spark的執行引擎、內存模型、容錯機製等核心原理。通過圖文並茂的方式,將Spark內部復雜的運作流程變得易於理解。我尤其喜歡的是書中對於Spark的調優部分的講解,提供瞭非常多切實可行的方法和策略,例如如何根據不同的業務場景選擇閤適的Shuffle機製,如何優化內存使用,如何進行任務級彆的調度。我嘗試瞭書中提到的幾種調優方法,發現程序運行效率有瞭顯著的提升,這對我日常的工作效率帶來瞭巨大的改善。
評分我之前嘗試過一些關於Spark的書籍,但都感覺要麼過於理論化,要麼過於碎片化,很難形成一個完整的知識體係。這本書給我的感覺就是“潤物細無聲”,在不知不覺中就將Spark的核心概念和精髓灌輸給瞭讀者。作者在講解時,總是能找到一個非常好的切入點,用通俗易懂的語言解釋復雜的概念,並配以恰到好處的圖示,讓整個學習過程變得輕鬆愉快。而且,書中對Spark的演進和未來發展方嚮也有所涉及,這讓我對Spark技術有瞭更長遠的認識。我印象深刻的是關於Spark的持久化機製的講解,作者通過對比不同的持久化策略,以及它們在內存和磁盤上的具體實現,讓我對如何選擇最優的持久化方式有瞭更深刻的理解。總而言之,這是一本值得反復閱讀和學習的優秀技術書籍。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.tinynews.org All Rights Reserved. 静思书屋 版权所有