新到貨2本75折
Spark海量資料處理 技術詳解與平臺實戰

Spark海量資料處理 技術詳解與平臺實戰

  • 定價:594
  • 優惠價:87517
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

本書基於Spark發行版本2.4.4寫作而成,包含大量的實例與一個完整專案,層次分明,循序漸進。
 
全書分為3部分,涵蓋了技術理論與實戰,讀者可以從實戰中鞏固學習到的知識。第一部分主要圍繞BDAS(伯克利資料分析棧),不僅介紹了如何開發Spark應用的基礎內容,還介紹了Structured Streaming、Spark機器學習、Spark圖挖掘、Spark深度學習等高級主題,此外還介紹了Alluxio系統。第二部分實現了一個企業背景調查系統,比較新穎的是,該系統借鑒了資料湖與Lambda架構的思想,涵蓋了批次處理、流處理應用開發,並加入了一些開源元件來滿足需求,既是對本書第一部分很好的鞏固,又完整呈現了一個即時大資料應用的開發過程。第三部分是對全書的總結和展望。

本書適合準備學習Spark的開發人員和資料分析師,以及準備將Spark應用到實際專案中的開發人員和管理人員閱讀,也適合電腦相關專業的高年級本科生和研究生學習和參考,對於具有一定的Spark使用經驗並想進一步提升的資料科學從業者也是很好的參考資料。
 

作者介紹

范東來,北京航空航太大學碩士,泛山科技聯合創始人,Spark Contributor、Superset Contributor,架構師,技術圖書作者和譯者,著有《Hadoop海量資料處理》,譯有《解讀No SQL》《No SQL權威指南》《神經網路演算法和實現》《Hadoop深度學習》《精通資料科學演算法》等,另譯有暢銷小說《巧克力時代:因為這是我的血脈》。
 

目錄

第一部分  基礎篇
第1章 序篇 2
1.1 Spark與BDAS 3
1.2 Databricks 4
1.3 如何通過GitHub向Spark貢獻代碼 5
1.4 如何選擇Spark程式設計語言 8
1.5 函數式程式設計思想 9
1.6 小結 12

第2章 Spark程式設計 13
2.1 Spark架構 13
2.2 Spark 2.x與Spark 3.x 15
2.2.1 Tungsten項目 16
2.2.2 統一Dataset和DataFrame 介面 20
2.2.3 新一代流處理技術:Structured Streaming與持續型應用 21
2.2.4 Hydrogen項目和Spark 3.x 22
2.3 部署Spark 26
2.3.1 Spark on YARN 27
2.3.2 Spark on Mesos 28
2.3.3 Spark Standalone 29
2.3.4 Spark on Kubernetes 30
2.3.5 安裝Spark 31
2.3.6 提交作業 31
2.3.7 Spark Shell 33
2.3.8 初始化SparkSession 34
2.4 RDD與運算元 34
2.4.1 RDD 34
2.4.2 創建RDD 36
2.4.3 轉換運算元 38
2.4.4 行動運算元 43
2.4.5 RDD血統與Spark容錯 45
2.5 Spark Shuffle 47
2.5.1 Hash Shuffle 47
2.5.2 Sort-based Shuffle 49
2.6 共用變數 50
2.6.1 廣播變數 50
2.6.2 累加器 53
2.7 Spark的多語言支援 55
2.7.1 PySpark 55
2.7.2 SparkR 56
2.8 Spark性能調優 56
2.8.1 硬體設定與資源管理平臺 57
2.8.2 參數調優與應用調優 57
2.9 使用Jupyter Notebook基於Spark探索資料:蒙特卡羅方法預測股票價格 64
2.9.1 Jupyter Notebook 64
2.9.2 用蒙特卡羅方法預測股票價格 67
2.10 小結 70

第3章 Spark統一程式設計介面:DataFrame、Dataset和Spark SQL 71
3.1 Catalyst優化器 72
3.1.1 SQL抽象語法樹 72
3.1.2 從ULEP到RLEP的過程 73
3.1.3 調優RLEP 73
3.1.4 全階段代碼生成 74
3.2 DataFrame API 75
3.2.1 創建DataFrame 75
3.2.2 查詢 77
3.2.3 視窗函數 80
3.2.4 使用者自訂函數 83
3.2.5 寫入 85
3.3 Dataset API 86
3.3.1 RDD、DataFrame和Dataset 87
3.3.2 安全類型的UDAF 88
3.4 Spark SQL 89
3.4.1 創建臨時視圖 90
3.4.2 使用Hive中繼資料 90
3.4.3 查詢語句 91
3.4.4 函數 94
3.4.5 使用者自訂函數 97
3.5 Google Dremel與列式存儲 97
3.5.1 Apache Parquet 99
3.5.2 Apache ORC 100
3.5.3 Apache CarbonData 100
3.5.4 對比測試 101
3.6 使用Spark SQL進行資料探索 102
3.7 小結 107

第4章 Spark流處理:Spark Streaming
與Structured Streaming 108
4.1 一個Spark Streaming流處理的例子 109
4.2 消息送達保證 110
4.3 Google MillWheel系統和Google Dataflow模型 114
4.3.1 Google MillWheel設計思想 114
4.3.2 Google MillWheel如何實現“恰好一次”消息送達語義 114
4.3.3 Google MillWheel對亂序數據與晚到資料的處理 115
4.3.4 Google Dataflow:流處理和批次處理的統一與取捨 117
4.4 Spark Streaming 122
4.4.1 關鍵抽象與架構 123
4.4.2 無狀態的轉換運算元 125
4.4.3 有狀態的轉換運算元 129
4.4.4 輸入與輸出 134
4.4.5 Spark Streaming與Spark SQL 138
4.4.6 容錯與結果正確性 139
4.4.7 性能調優 141
4.5 Structured Streaming 144
4.5.1 關鍵抽象與架構 144
4.5.2 操作 147
4.5.3 輸入和輸出 154
4.5.4 股票交易價格即時分析 157
4.6 流處理技術對比 162
4.7 小結 163

第5章 Spark圖計算:GraphX 164
5.1 圖模式 164
5.1.1 圖結構 164
5.1.2 圖存儲 165
5.1.3 圖資料庫 168
5.1.4 圖挖掘技術 169
5.1.5 屬性圖與RDF 170
5.2 生成圖 171
5.2.1 從已有資料中生成 172
5.2.2 通過GraphGenerators生成 174
5.3 圖運算元 175
5.3.1 屬性運算元 175
5.3.2 結構運算元 175
5.3.3 連接運算元 175
5.3.4 aggregateMessages 176
5.4 Pregel API 177
5.4.1 圖分區 177
5.4.2 像頂點一樣思考 180
5.4.3 使用者自訂函數 182
5.4.4 PageRank的GraphX實現 183
5.4.5 標籤傳播演算法 186
5.5 SQL on Graph 187
5.5.1 生成圖 188
5.5.2 SQL查詢 189
5.5.3 模式發現 190
5.5.4 一些GraphX已經有的演算法 191
5.5.5 一些GraphX沒有的演算法 191
5.5.6 AggregateMessages 192
5.6 n度鄰居頂點演算法 193
5.7 小結 196

第6章 Spark機器學習:MLlib 197
6.1 機器學習 197
6.1.1 典型的機器學習工作流 198
6.1.2 機器學習任務的學習類型 199
6.2 Spark MLlib與Spark ML 201
6.3 數據預處理 205
6.3.1 數據標準化 205
6.3.2 缺失值處理 207
6.3.3 特徵抽取 208
6.3.4 特徵選擇 212
6.4 分類演算法應用 214
6.4.1 決策樹 214
6.4.2 隨機森林 217
6.4.3 人體狀態監測器 218
6.4.4 集成學習 223
6.4.5 梯度提升決策樹 224
6.5 聚類演算法應用 225
6.5.1 物以類聚 225
6.5.2 k均值聚類演算法 226
6.5.3 實現 227
6.6 推薦系統應用 230
6.6.1 基於用戶的協同過濾 231
6.6.2 基於商品的協同過濾 233
6.6.3 兩種協同過濾的對比 235
6.6.4 基於模型的協同過濾 236
6.6.5 Movielens電影推薦系統 237
6.7 訓練之後 238
6.7.1 模型評估 239
6.7.2 交叉驗證與超參調優 241
6.8 流式機器學習 242
6.8.1 流回歸 242
6.8.2 流聚類 244
6.8.3 用流處理應用來監控模型 245
6.9 小結 249

第7章 Spark深度學習:Deeplearning4j 250
7.1 常見的深度學習框架 251
7.2 Deeplearning4j 252
7.3 卷積神經網路 252
7.3.1 理解卷積神經網路 252
7.3.2 用Deeplearning4j訓練卷積神經網路 254
7.4 迴圈神經網路 257
7.4.1 理解迴圈神經網路 258
7.4.2 用Deeplearning4j訓練迴圈神經網路 262
7.5 自動編碼器 264
7.5.1 理解自動編碼器 264
7.5.2 用Deeplearning4j訓練自動編碼器 267
7.6 使用GPU 269
7.7 小結 270

第8章 分散式存儲:Alluxio 271
8.1 Alluxio架構 271
8.1.1 Alluxio的組成部分 273
8.1.2 虛擬的Alluxio 273
8.1.3 統一而透明的命名空間 274
8.2 快速上手Alluxio 275
8.2.1 安裝Alluxio 275
8.2.2 Alluxio配置 276
8.2.3 Alluxio血統機制 277
8.3 與上層框架組成 277
8.3.1 與Spark集成 278
8.3.2 與Presto集成 279
8.3.3 與HBase集成 280
8.4 與底層存儲系統集成 281
8.4.1 與Ceph集成 281
8.4.2 掛載其他檔案系統 281
8.5 如何訪問Alluxio 282
8.6 Alluxio應用案例 283
8.6.1 攜程網 283
8.6.2 滴滴出行 284
8.6.3 陌陌 286
8.7 小結 288
 
第二部分 應用篇
第9章 企業資料湖與Lambda架構 290
9.1 數據湖 290
9.1.1 數據的湖泊 290
9.1.2 資料湖要解決的問題 291
9.1.3 資料湖與資料倉庫對比 292
9.1.4 資料湖如何工作 293
9.2 Lambda架構 293
9.2.1 批次處理層 294
9.2.2 服務層 295
9.2.3 速度層 295
9.2.4 Lambda架構 296
9.2.5 Lambda架構的原則 297
9.3 基於Lambda架構的資料湖分層設計 297
9.3.1 資料獲取層 298
9.3.2 消息層 299
9.3.3 數據攝取層 300
9.3.4 資料存儲層 300
9.3.5 Lambda層 301
9.4 Lambda架構的應用 301
9.4.1 搜尋引擎 301
9.4.2 Druid 302
9.5 構建Lambda架構的技術 303
9.6 小結 304

第10章 大資料企業動態背景調查平臺 305
10.1 企業背景調查 305
10.2 基於大資料的企業動態背景調查 308
10.2.1 企業行為資訊 308
10.2.2 企業關聯方分析 311
10.3 資料獲取與資料字典 313
10.4 企業背景調查平臺需求 317
10.4.1 企業關聯圖譜展示 317
10.4.2 企業風險指標計算 318
10.5 企業關聯圖譜的模式 318
10.6 傳統資料倉庫架構 320
10.7 小結 321

第11章 平臺設計 322
11.1 平臺架構 322
11.1.1 資料來源 323
11.1.2 資料管道 323
11.1.3 速度層 325
11.1.4 批次處理層 325
11.1.5 服務層 325
11.1.6 查詢層 325
11.1.7 視覺化組件 325
11.2 物理拓撲 326
11.3 服務層圖資料庫設計 326
11.4 專案規劃 327
11.5 小結 327

第12章 資料管道層 328
12.1 安裝並配置canal 328
12.2 實現Kafka生產者 330
12.3 安裝並配置Flume 335
12.4 小結 336

第13章 速度層 337
13.1 速度層輸入 337
13.1.1 類型1 338
13.1.2 類型2 338
13.1.3 類型3 339
13.1.4 類型4 340
13.2 Cypher基礎 341
13.2.1 寫入 342
13.2.2 讀取 343
13.2.3 刪除 344
13.3 生成Cypher語句 345
13.3.1 類型1 345
13.3.2 類型2 346
13.3.3 類型3 346
13.3.4 類型4 346
13.3.5 實現 347
13.4 整合Structured Streaming 352
13.4.1 Neo4jWriter 353
13.4.2 啟動流 354
13.5 小結 355

第14章 批次處理層 356
14.1 自融風險監測 356
14.2 生成主資料集 357
14.2.1 全量與增量 358
14.2.2 合併 359
14.2.3 資料治理 361
14.3 用GraphX計算企業自融風險值 363
14.4 導入HBase 364
14.5 調度中心 366
14.5.1 Airflow 366
14.5.2 配置 368
14.6 小結 370

第15章 服務層與查詢層 371
15.1 不僅僅是合併 371
15.1.1 NetworkX 372
15.1.2 計算流程 372
15.2 介面開發 372
15.3 小結 376
 
第三部分 總結篇 
第16章 總結和展望 378
16.1 統一的大資料處理介面 378
16.1.1 Unified Spark 378
16.1.2 Apache Beam 379
16.2 Kappa架構 380
16.3 大資料處理技術 382
16.3.1 Apache Flink 382
16.3.2 Apache Apex 383
16.3.3 Ray 384
16.4 Spark未來發展方向 386
 

詳細資料

  • ISBN:9787115507006
  • 規格:平裝 / 388頁 / 16k / 19 x 26 x 1.94 cm / 普通級 / 單色印刷 / 初版
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【科普、飲食、電腦】高寶電子書暢銷書展:人生就是選擇的總和,全展75折起
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 翦商作者新作79折
  • 針灸匠張寶旬
  • 浪漫小說精選3本72折