發表於2024-12-25
本書涵蓋瞭開發及維護生産級Spark應用的各種方法、組件與有用實踐。作者均為大數據社區的知名專傢,帶著你一步步從概念驗證或Spark應用的demo版遷移到生産環境,用真實案例分析常見問題、限製、挑戰和機會。
調優Spark應用
管理資源、組織存儲、做好監控
瞭解在生産環境中使用Spark時有哪些潛在的問題
知曉Spark用在何處*能發揮作用
預估集群的規模,搞清楚硬件需求
通過內存管理、分區、shuffle等技術提升性能
用Kerberos保證數據的安全
解決Spark streaming在生産環境中的問題
將Spark與Yarn、Mesos、Tachyon等集成
本書針對spark從驗證性環境遷移到實際生産環境時會遇到的各種問題給齣瞭實際的幫助,涵蓋瞭開發及維護生産級Spark應用的各種方法、組件與有用實踐。全書分為6章,第1 ~ 2章幫助讀者深入理解Spark的內部機製以及它們在生産流程中的含義;第3章和第5章闡述瞭針對配置參數的法則和權衡方案,用來調優Spark,改善性能,獲得高可用性和容錯性;第4章專門討論Spark應用中的安全問題;第6章則全麵介紹生産流,以及把一個應用遷移到一個生産工作流中時所需要的各種組件,同時對Spark生態係統進行瞭梳理。
Ilya Ganelin 從機器人專傢成功跨界成為一名數據工程師。他曾在密歇根大學花費數年時間研究自發現機器人(self-discovering robot),在波音公司從事手機及無綫嵌入式DSP(數據信號處理)軟件開發項目,隨後加入Capital One 的數據創新實驗室,由此進入大數據領域。Ilya是Apache Spark核心組件的活躍貢獻者以及Apache Apex的提交者(committer),他希望研究構建下一代分布式計算平颱。同時,Ilya還是一個狂熱的麵包烘焙師、廚師、賽車手和滑雪愛好者。
Ema Orhian 是一位對伸縮性算法充滿激情的大數據工程師。她活躍於大數據社區,組織會議,在會上發錶演講,積極投身於開源項目。她是jaws-spark-sql-rest(SparkSQL數據倉庫上的一種資源管理器)的主要提交者。Ema一直緻力於將大數據分析引入醫療領域,開發一個對大型數據集計算統計指標的端到端的管道。
Kai Sasaki 是一位日本軟件工程師,對分布式計算和機器學習很感興趣。但是一開始他並未從事Hadoop或Spark相關的工作,他最初的興趣是中間件以及提供這些服務的基礎技術,是互聯網驅使他轉嚮大數據技術領域。Kai一直是Spark的貢獻者,開發瞭不少MLlib和ML庫。如今,他正嘗試研究將機器學習和大數據結閤起來。他相信Spark在大數據時代的人工智能領域也將扮演重要角色。他的GitHub地址為:https://github.com/Lewuathe。
Brennon York既是一名特技飛行員,也是一位計算機科學傢。他的愛好是分布式計算、可擴展架構以及編程語言。自2014年以來,他就是Apache Spark的核心貢獻者,目標是通過發展GraphX和核心編譯環境,培育一個更強大的Spark社區,激發更多閤作。從為Spark提交貢獻開始,York就一直在用Spark,而且從那個時候開始,就使用Spark將應用帶入生産環境。
李剛,曾在IBM工作近20年,在數據中心IT建設、優化及管理領域有深入的研究和豐富的經驗。在IBM期間負責IBM係統服務相關解決方案的開發與管理,其中包含數據中心基礎設施與IT技術瓶體、數據中心高可用性管理暨災難恢復,以及企業IT戰略及IT架構優化等相關領域。
第1 章 成功運行Spark job / 1
安裝所需組件 / 2
原生安裝Spark Standalone 集群 /3
分布式計算的發展史/ 3
步入雲時代 /5
理解資源管理/6
使用各種類型的存儲格式 /9
文本文件/11
Sequence 文件/13
Avro 文件/ 13
Parquet 文件 /13
監控和度量的意義/ 14
Spark UI/ 14
Spark Standalone UI/ 17
Metrics REST API / 17
Metrics System / 18
外部監控工具 / 18
總結 /19
第2 章 集群管理 /21
背景知識/ 23
Spark 組件 / 26
Driver / 27
workers 與executors /28
配置 / 30
Spark Standalone/33
架構 / 34
單節點設置場景 / 34
多節點設置 / 36
YARN / 36
架構 / 38
動態資源分配 /41
場景 /43
Mesos/ 45
安裝/46
架構 / 47
動態資源分配/ 49
基本安裝場景 / 50
比較 / 52
總結 /56
第3 章 性能調優 /59
Spark 執行模型/ 60
分區 /62
控製並行度/62
分區器/64
shuffle 數據 /65
shuffle 與數據分區 / 67
算子與shuffle / 70
shuffle 並不總是壞事 /75
序列化 / 75
Kryo 注冊器 / 77
Spark 緩存 / 77
SparkSQL 緩存 / 81
內存管理 /82
垃圾迴收 / 83
共享變量 / 84
廣播變量 / 85
纍加器 /87
數據局部性 / 90
總結 / 91
第4 章 安全/ 93
架構/ 94
Security Manager/ 94
設定配置 / 95
ACL / 97
配置 / 97
提交job / 98
Web UI/ 99
網絡安全 / 107
加密/ 108
事件日誌 /113
Kerberos/114
Apache Sentry./114
總結 /115
第5 章 容錯或job 執行/ 117
Spark job 的生命周期 /118
Spark master /119
Spark driver/ 122
Spark worker /124
job 生命周期 /124
job 調度 /125
應用程序內部調度 / 125
用外部工具進行調度 / 133
容錯 /135
內部容錯與外部容錯 / 136
SLA/ 137
RDD / 138
Batch vs Streaming / 145
測試策略 / 148
推薦配置/ 155
總結 / 158
第6 章 超越Spark /159
數據倉庫 /159
SparkSQL CLI/161
Thrift JDBC/ODBC 服務器 / 162
Hive on Spark/ 162
機器學習 / 164
DataFrame / 165
MLlib 和ML / 167
Mahout on Spark / 174
Hivemall On Spark/ 175
外部的框架 / 176
Spark Package / 177
XGBoost/ 179
spark-jobserver / 179
未來的工作 /182
與參數服務器集成 / 184
深度學習 / 192
Spark 在企業中的應用 / 200
用Spark 及Kafka 收集用戶活動日誌 / 200
用Spark 做實時推薦/ 202
Twitter Bots 的實時分類 / 204
總結 / 205
引言
Apache Spark 一個易於掌握的、麵嚮大規模計算的分布式計算框架。它又被稱為“計算網格”或者“計算框架”——考慮到Spark 使開發人員能夠便捷地獲得大量數據且進行分析,這些說法也是正確的。
Apache Spark 由Matei Zaharia 2009 年在加州大學伯剋利分校創建,一開始把它作為一個研究項目,後來在2010 年捐給開源社區。2013 年,Spark 作為一個孵化項目加入Apache 軟件基金會,並於2014 年成為頂級項目(TLP),一直發展到現在。
本書麵嚮的讀者
如果你拿起這本書,我們認為你應該對Spark 非常感興趣。本書麵嚮的讀者群體是開發人員、Spark 應用的項目經理,以及那些準備考慮將開發的Spark 應用程序遷移到生産環境的係統管理員(或者DevOps)。
涵蓋的內容
本書涵蓋瞭開發及維護生産級Spark 應用的各種方法論、組件與最佳實踐。也就是說,我們假設你已經有一個或者打算開發一個Spark 應用,並且具備Spark 的一些基礎知識。
內容結構
本書分為6 章,旨在傳授給讀者以下知識:
? 深入理解Spark 的內部機製以及它們在生産流程中的含義。
? 一組針對配置參數的法則和權衡方案,用來調優Spark 以獲得高可用性和容錯性。
? 全麵瞭解生産流,以及把一個應用遷移到一個生産工作流中時所需要的各種組件。
讀者需要具備的知識
作為讀者,你應該具備基本的Spark 開發及使用的知識。本書不會講述入門級內容。市麵上有許多關於Spark 入門的書籍、論壇及各類資源,如果你對某部分的知識點有所缺失,可以閱讀相關主題的資料以便更好地理解本書所錶達的內容。本書示例的源代碼可從Wiley 網站上下載:( www.wiley.com/go/sparkbigdataclustercomputing。)
格式的約定
為幫助你瞭解本書的內容及主綫,在本書用瞭一些格式約定。
注意 這個樣例錶示注意事項、小提示、暗示、技巧,或者當前討論的旁白。
? 當介紹一些新的術語和重要的詞時,會采用黑體(中文)或者加粗(英文)。
? 在文本裏顯示代碼時會使用代碼體, 譬如: persistence.properties。
源碼
學習本書中的示例時,你可以選擇手動輸入所有代碼,或使用本書所配套的源
碼文件。所有的源碼均可從www.wiley.com 下載。對於本書,下載頁麵在
www.wiley.com/go/sparkbigdataclustercomputing 的“Download Code”
標簽頁上。
可以在www.wiley.com 上通過英文版的ISBN(978-1-119-25401-0)來搜索本
書。
你也可以在https://github.com/backstopmedia/sparkbook 上找到
這些文件。
下載完代碼,隨便用哪種解壓工具解壓即可。
讀者服務
輕鬆注冊成為博文視點社區用戶(www.broadview.com.cn),掃碼直達本書頁麵。
? 提交勘誤:您對書中內容的修改意見可在 提交勘誤 處提交,若被采納,將獲贈博文視點社區積分(在您購買電子書時,積分可用來抵扣相應金額)。
? 交流互動:在頁麵下方 讀者評論 處留下您的疑問或觀點,與我們和其他讀者一同學習交流。
頁麵入口:http://www.broadview.com.cn/31364
Spark:大數據集群計算的生産實踐 下載 mobi pdf epub txt 電子書 格式 2024
Spark:大數據集群計算的生産實踐 下載 mobi epub pdf 電子書看起來感覺吧,還是差那麼點意思
評分還可以,擴展視野不錯。
評分還可以,擴展視野不錯。
評分偏重運維的內容多
評分速度快,服務好,加油!
評分很好很好很好
評分基礎基本沒有,適閤學習瞭spark基礎以後來看
評分可以, 書不錯
評分偏重運維的內容多
Spark:大數據集群計算的生産實踐 mobi epub pdf txt 電子書 格式下載 2024