買這商品的人也買了...
-
$354機器學習Web應用 -
$270Python 編程基礎與 HTTP 接口測試 -
$1,794Spark 大數據商業實戰三部曲:內核解密|商業案例|性能調優 -
JS 高手昇華之路:Webpack 是唯一的捷徑$580$493 -
$359Python 測試之道 -
$403Spring Cloud 微服務架構開發實戰 (全新升級版) -
推動世界的 100 種新技術:掌握未來 10 年的關鍵產業,就能早一步勝出$450$383 -
$403Spring Cloud 與 Docker 微服務架構實戰, 2/e -
$517百面機器學習 : 算法工程師帶你去面試 -
提升程式設計師的面試力|189道面試題目與解答, 6/e (Cracking the Coding Interview : 189 Programming Questions and Solutions, 6/e)$880$695 -
前端首選:React+Redux 開發最漂亮的介面$650$553 -
$352Docker 微服務架構實戰 -
$474大話軟件測試 — 性能、自動化及團隊管理 -
Web API 建構與設計 (Designing Web APIs: Building APIs That Developers Love)$480$379 -
$301Python 自動化運維快速入門 -
$294利用機器學習開發算法交易系統 -
暗池:人工智慧如何顛覆股市生態$499$424 -
$658Angular 應用程序開發指南 -
Nginx 應用與運維實戰$654$621 -
重新認識 Vue.js:008天絕對看不完的 Vue.js 3 指南$600$468 -
$403Go 語言從基礎到中臺微服務實戰開發 -
超大流量系統解決方案 : 大型網站架構師的經驗分享$690$538 -
快速學會 Python 架站技術:活用 Django 4 建構動態網站的 16堂課$780$608 -
Python 大數據專案 X 工程 X 產品 資料工程師的升級攻略, 2/e$780$616 -
從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【軟精裝】$720$562
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$576 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
本書是一本講解Spark基礎應用及編程的實用教程,基於Spark 2.3版本,
內容包括Spark與大數據、構建Spark運行環境、開發一個Spark程序、
深入理解Spark程序代碼、RDD編程、Spark SQL結構化數據處理、
Spark Streaming、Structured Streaming、SparkR和GraphX。
本書總結了Spark學習的關鍵點;提出了Spark快速學習路線圖;
提供配套的Spark前置課程學習資源鏈接,包括虛擬機、Linux和Shell免費高清視頻、
《零基礎快速入門Scala》免費電子書等,幫助零基礎讀者迅速夯實Spark基礎。
本書配以大量的示例、源代碼和註釋,可以幫助讀者快速、全面而又深入地掌握Spark編程技能。
本書既可作為高等院校大數據、雲計算和人工智能相關專業的教材,
也可以作為Spark學習者和大數據研發人員的技術參考書。
目錄大綱
前言
章Spark與大數據1
1.1大數據開發基礎1
1.1.1什麼是大數據1
1.1.2大數據開發的通用步驟2
1.1.3大數據開發技術4
1.2初識Spark10
1.2.1 Spark是什麼10
1.2.2 Spark的技術特點11
1.3 Spark技術棧12
1.4 Spark重要組件13
1.4.1 Spark Core13
1.4.2 Spark SQL14
1.4.3 GraphX15
1.4.4流數據處理16
1.4.5 SparkR17
1.4.6 MLlib/ML18
1.4.7 Spark交互工具18
1.5 Spark和Scala19
1.5.1 Scala語言簡介19
1.5.2為什麼用Scala開發Spark框架20
1.5.3為什麼用Scala開發Spark程序20
1.5.4 Scala開發Spark程序所涉及的技術20
1.5.5 Scala語言基礎21
1.6如何快速掌握Spark21
1.6.1 Spark學習的痛點21
1.6.2 Spark快速學習路線圖22
1.6.3 Spark學習中的關鍵點23
1.6.4利用本書相關資源高效學習Spark23
1.6.5本書所使用的軟件和版本25
1.7練習25
第2章構建Spark運行環境26
2.1 Spark程序運行時架構26
2.2構建Spark大數據運行環境28
2.2.1構建HDFS28
2.2.2構建Yarn30
2.2.3構建Spark集群31
2.3運行Spark程序(Local方式)31
2.4運行Spark程序(分佈式方式)32
2.4.1 Spark on Yarn32
2.4.2 Spark on Standalone36
2.5 Spark程序在spark-shell上運行41
2.6使用Web UI監控Spark程序運行43
2.7擴展集群節點48
2.8練習49
第3章開發一個Spark程序51
3.1在命令行模式下開發Spark程序51
3.1.1構建Scala程序編譯環境51
3.1.2使用Vim編寫Spark程序53
3.1.3使用命令編譯、打包Spark程序54
3.1.4運行Spark程序56
3.1.5使用java命令運行Spark程序57
3.1.6 Spark程序編譯、運行、部署的關鍵點58
3.2使用IDEA開發Spark程序58
3.2.1 IDEA安裝和基本使用59
3.2.2使用IDEA編輯Spark代碼60
3.2.3 IDEA編譯、打包62
3.2.4 IDEA遠程提交Spark程序63
3.3練習
第4章深入理解Spark程序代碼66
4.1 Spark程序代碼結構66
4.2 Spark程序代碼的核心概念68
4.2.1 RDD68
4.2.2 Application68
4.2.3 Job69
4.2.4 DAG70
4.2.5 Stage72
4.2.6 Task76
4.2.7 Application、Job、Stage和Task的並行粒度和並行條件77
4.3 Spark程序代碼執行過程77
4.4練習85
第5章RDD編程86
5.1 RDD核心概念86
5.1.1 Transformation的基本概念87
5.1.2 Action的基本概念88
5.1.3 Partition的基本概念88
5.2創建RDD89
5.2.1使用parallelize/makeRDD創建RDD89
5.2.2使用textFile創建RDD91
5.2.3其他RDD創建操作92
5.3 RDD Partition93
5.3.1 Partition的基本操作94
5.3.2 Partition的分區過程96
5.3.3 Partition和Task98
5.3.4計算Partition的個數100
5.3 .5 Partition的綜合應用103
5.4 Transformation操作107
5.4.1 map操作107
5.4.2 flatMap操作111
5.4.3 mapPartitions操作113
5.4.4 join操作115
5.4.5 union操作120
5.4.6 intersection操作121
5.4.7 groupBy操作123
5.4.8 groupByKey操作124
5.4.9 reduceByKey操作125
5.4.10 aggregateByKey操作127
5.4.11 cogroup操作129
5.5 Action操作130
5.5.1 collect操作130
5.5.2 reduce操作130
5.5.3 fold操作131
5.5 .4 aggregate操作133
5.5.5 foreachPartition操作134
5.5.6 saveAsTextFile操作135
5.5.7 saveAsObjectFile操作135
5.6 RDD的cache/persist和checkpoint操作136
5.6.1 cache/persist和checkpoint概述136
5.6.2 cache/persist使用註意事項137
5.6. 3 cache/persist操作138
5.6.4 checkpoint操作139
5.7練習140
第6章Spark SQL結構化數據處理142
6.1 Spark SQL的核心概念142
6.1.1結構化數據和非結構化數據142
6.1.2 DataFrame143
6.1. 3 Dataset144
6.1.4 Persistent Table和Data Warehouse145
6.1.5 SQL146
6.1.6 SparkSession147
6.2 Spark SQL數據處理概述147
6.2.1 Spark SQL數據處理環境147
6.2.2 Spark SQL處理結構化數據149
6.2.3 Spark SQL處理不同數據源的數據150
6.3構建Spark SQL運行環境150
6.3.1 Spark SQL運行環境概述150
6.3.2構建簡的Spark SQL運行環境151
6.3.3構建兼容Hive的Spark SQL運行環境153
6.4 DataFrame/Dataset快速上手157
6.4.1 DataFrame/Dataset使用概述157
6.4. 2在spark-shell中使用DataFrame/Dataset157
6.4.3在代碼中使用DataFrame/Dataset161
6.4.4 DataFrame/Dataset使用上的區別163
6.4.5 DataFrame行解析方法1
6.4.6 DataFrame和Dataset轉換1
6.5 DataFrame/ Dataset與數據源的轉換165
6.5.1 DataFrame/Dataset與數據源的轉換關係和方法概述165
6.5.2 DataFrame/Dataset與Seq的轉換167
6.5.3 DataFrame/Dataset與RDD的轉換169
6.5.4 DataFrame/ Dataset文件與Sequence文件的轉換170
6.5.5 DataFrame/Dataset與CSV文件的轉換170
6.5.6 DataFrame/Dataset與JSON文件的轉換176
6.5.7 DataFrame/Dataset與ORC文件的轉換178
6.5.8 DataFrame/Dataset與Parquet文件的轉換179
6.5.9 DataFrame/Dataset與Avro文件的轉換182
6.5.10 DataFrame/Dataset與MySQL數據庫的轉換183
6.5.11 DataFrame/Dataset與Hive表的轉換188
6.5. 12 DataFrame/Dataset與Built-in data source表的轉換193
6.6 DataFrame/Dataset常用API198
6.6.1 Action198
6.6.2 Basic Dataset function200
6.6.3 Typed Transformation205
6.6.4 Untyped Transformation213
6.7 SQL操作223
6.7.1常用DDL使用說明及示例224
6.7.2 DQL使用說明及示例226
6.7.3常用DML使用說明及示例232
6.8練習234
第7章Spark Streaming236
7.1 Spark Streaming基礎236
7.1.1流數據定義及其特點236
7.1.2 Spark Streaming的工作流程237
7.1.3 Spark Streaming的核心概念238
7.2編寫一個Spark Streaming程序241
7.3 Spark Streaming Web UI的使用244
7.3.1 Spark Streaming Web UI使用前準備244
7.3.2 Spark Streaming Web UI參數說明247
7.4多路流數據合併處理示例250
7.4.1示例實現說明250
7.4.2示例分析:多數據流中Batch Job的執行254
7.5 DStream Transformation操作255
7.5.1 DStream Transformation實現原理256
7.5.2 DStream常見的Transformation操作及說明258
7.5.3 Spark Streaming的窗口(Window )操作及示例259
7.6 DStream Output操作262
7.7練習2
第8章Structured Streaming265
8.1 Structured Streaming基礎265
8.1.1 Structured Streaming處理流程265
8.1.2 Structured Streaming基本概念266
8.1.3 Structured Streaming技術特性268
8.2 Structured Streaming接入Text File數據源268
8.3 Structured Streaming接入Rate數據源273
8.4使用Schema解析JSON格式數據源274
8.5使用DataFrame/Dataset處理流數據277
8.6 Structured Streaming Window操作282
8.7 Structured Streaming Watermarking操作288
8.8 Structured Streaming JOIN操作290
8.8.1 Streaming數據與Static數據的JOIN操作示例291
8.8.2 Streaming數據與Streaming數據的JOIN操作示例295
8.9練習304
第9章SparkR305
9.1 SparkR基礎305
9.1.1為什麼需要SparkR305
9.1.2什麼是SparkR306
9.1.3 SparkR和R的關係306
9.1.4 SparkR的技術特徵306
9.1.5 SparkR程序運行時架構306
9.2構建SparkR程序開發和運行環境307
9.3 SparkR代碼的執行方式308
9.3.1在RStudio-server上執行SparkR代碼309
9.3. 2在R Shell上執行SparkR代碼311
9.3.3使用spark-submit執行SparkR代碼312
9.3.4在sparkR上執行SparkR代碼313
9.4 SparkR的基本使用314
9.4.1 SparkR編程的基本流程315
9.4.2創建SparkDataFrame315
9.4.3 SparkDataFrame的基本操作318
9.4.4在Spark上分佈式執行R函數319
9.4.5 SQL查詢323
9.5 SparkR機器學習算子323
9.5.1 SparkR常用的機器學習算子323
9.5.2 SparkR機器學習算子的使用324
9.6利用SparkR實現單詞統計和圖形輸出326
9.7練習329
10章GraphX330
10.1 GraphX基礎330
10.1.1圖的定義和傳統表示方法330
10.1.2圖計算332
10.1.3有向多重圖332
10.1.4 GraphX特性333
10.1.5 GraphX框架334
10.2 GraphX的基本數據結構335
10.2 .1 VertexRDD335
10.2.2 EdgeRDD338
10.2.3 Graph340
10.3 GraphX實現短路徑算法——SGDSP354
10.4 GraphX Pregel的原理及使用361
10.4.1 GraphX Pregel接口說明361
10.4.2 GraphX Pregel的處理流程362
10.4.3 GraphX Pregel的使用363
10.5 GraphX Pregel實現短路徑算法——SGPSP366
10.6練習370
參考文獻372
