定 價(jià):49.8 元
叢書名:數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)專業(yè)系列規(guī)劃教材
- 作者:林子雨 賴永炫 陶繼平
- 出版時(shí)間:2018/7/1
- ISBN:9787115475985
- 出 版 社:人民郵電出版社
- 中圖法分類:TP274
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書以Scala作為開發(fā)Spark應(yīng)用程序的編程語言,系統(tǒng)介紹了Spark編程的基礎(chǔ)知識(shí)。全書共7章,內(nèi)容包括大數(shù)據(jù)技術(shù)概述、Spark的設(shè)計(jì)與運(yùn)行原理、Spark環(huán)境搭建和使用方法、RDD編程、Spark SQL、Spark Streaming、Spark MLlib等。
本書是廈門大學(xué)作者團(tuán)隊(duì)長(zhǎng)期經(jīng)驗(yàn)總結(jié)的結(jié)晶,是在廈門大學(xué)《大數(shù)據(jù)技術(shù)原理與應(yīng)用》入門級(jí)大數(shù)據(jù)教材的基礎(chǔ)之上編寫的。為了確保教程質(zhì)量,在編著出版紙質(zhì)教材之前,實(shí)驗(yàn)室已經(jīng)于2016年10月通過實(shí)驗(yàn)室官網(wǎng)免費(fèi)發(fā)布共享了簡(jiǎn)化版的Spark在線教程和相關(guān)教學(xué)資源,同時(shí),該在線教程也已經(jīng)用于廈門大學(xué)計(jì)算機(jī)科學(xué)系研究生的大數(shù)據(jù)課程教學(xué),并成為全國(guó)高校大數(shù)據(jù)課程教師培訓(xùn)交流班的授課內(nèi)容。實(shí)驗(yàn)室根據(jù)讀者對(duì)在線Spark教程的大量反饋意見以及教學(xué)實(shí)踐中發(fā)現(xiàn)的問題,對(duì)Spark在線教程進(jìn)行了多次修正和完善,所有這些前期準(zhǔn)備工作,都為紙質(zhì)教材的編著出版打下了堅(jiān)實(shí)的基礎(chǔ)。
披荊斬棘,在大數(shù)據(jù)叢林中開辟學(xué)習(xí)捷徑
填溝削坎,為快速學(xué)習(xí)Spark 技術(shù)鋪平道路
深入淺出,有效降低Spark 技術(shù)學(xué)習(xí)門檻
資源全面,構(gòu)建全方位一站式在線服務(wù)體系
"林子雨
廈門大學(xué)計(jì)算機(jī)科學(xué)系教師。2013年度和2017年度廈門大學(xué)教學(xué)類獎(jiǎng)教金獲得者。中國(guó)計(jì)算機(jī)學(xué)會(huì)數(shù)據(jù)庫專業(yè)委員會(huì)委員,中國(guó)計(jì)算機(jī)學(xué)會(huì)信息系統(tǒng)專業(yè)委員會(huì)委員,廈門大學(xué)數(shù)據(jù)庫實(shí)驗(yàn)室負(fù)責(zé)人,數(shù)據(jù)中國(guó)百校工程教育部專家組成員。國(guó)內(nèi)高校數(shù)字教師的提出者和建設(shè)者,編著出版了國(guó)內(nèi)高校系統(tǒng)介紹大數(shù)據(jù)知識(shí)的專業(yè)教材《大數(shù)據(jù)技術(shù)原理與應(yīng)用》,成為國(guó)內(nèi)眾多高校開課教材,同時(shí)建設(shè)了國(guó)內(nèi)高校大數(shù)據(jù)課程公共服務(wù)平臺(tái),為教師教學(xué)和學(xué)生學(xué)習(xí)大數(shù)據(jù)課程免費(fèi)提供全方位、一站式服務(wù),平臺(tái)每年訪問量超過100萬次,成為國(guó)內(nèi)高校大數(shù)據(jù)教學(xué)知名系列。
"
第1章 大數(shù)據(jù)技術(shù)概述 1
1.1 大數(shù)據(jù)的概念與關(guān)鍵技術(shù) 2
1.1.1 大數(shù)據(jù)的概念 2
1.1.2 大數(shù)據(jù)關(guān)鍵技術(shù) 2
1.2 代表性大數(shù)據(jù)技術(shù) 4
1.2.1 Hadoop 4
1.2.2 Spark 8
1.2.3 Flink 10
1.2.4 Beam 11
1.3 編程語言的選擇 12
1.4 在線資源 13
1.5 本章小結(jié) 14
1.6 習(xí)題 14
實(shí)驗(yàn)1 Linux系統(tǒng)的安裝和常用命令 15
一、實(shí)驗(yàn)?zāi)康摹?5
二、實(shí)驗(yàn)平臺(tái) 15
三、實(shí)驗(yàn)內(nèi)容和要求 15
四、實(shí)驗(yàn)報(bào)告 16
第2章 Spark的設(shè)計(jì)與運(yùn)行原理 17
2.1 概述 18
2.2 Spark生態(tài)系統(tǒng) 19
2.3 Spark運(yùn)行架構(gòu) 20
2.3.1 基本概念 20
2.3.2 架構(gòu)設(shè)計(jì) 21
2.3.3 Spark運(yùn)行基本流程 22
2.3.4 RDD的設(shè)計(jì)與運(yùn)行原理 23
2.4 Spark的部署方式 32
2.5 本章小結(jié) 33
2.6 習(xí)題 34
第3章 Spark環(huán)境搭建和使用方法 35
3.1 安裝Spark 36
3.1.1 基礎(chǔ)環(huán)境 36
3.1.2 下載安裝文件 36
3.1.3 配置相關(guān)文件 37
3.1.4 Spark和Hadoop的交互 38
3.2 在spark-shell中運(yùn)行代碼 38
3.2.1 spark-shell命令 39
3.2.2 啟動(dòng)spark-shell 40
3.3 開發(fā)Spark獨(dú)立應(yīng)用程序 40
3.3.1 安裝編譯打包工具 41
3.3.2 編寫Spark應(yīng)用程序代碼 42
3.3.3 編譯打包 42
3.3.4 通過spark-submit運(yùn)行程序 45
3.4 Spark集群環(huán)境搭建 45
3.4.1 集群概況 46
3.4.2 搭建Hadoop集群 46
3.4.3 在集群中安裝Spark 47
3.4.4 配置環(huán)境變量 47
3.4.5 Spark的配置 47
3.4.6 啟動(dòng)Spark集群 48
3.4.7 關(guān)閉Spark集群 48
3.5 在集群上運(yùn)行Spark應(yīng)用程序 49
3.5.1 啟動(dòng)Spark集群 49
3.5.2 采用獨(dú)立集群管理器 49
3.5.3 采用Hadoop YARN管理器 50
3.6 本章小結(jié) 51
3.7 習(xí)題 52
實(shí)驗(yàn)2 Spark和Hadoop的安裝 52
一、實(shí)驗(yàn)?zāi)康摹?2
二、實(shí)驗(yàn)平臺(tái) 52
三、實(shí)驗(yàn)內(nèi)容和要求 52
四、實(shí)驗(yàn)報(bào)告 53
第4章 RDD編程 54
4.1 RDD編程基礎(chǔ) 55
4.1.1 RDD創(chuàng)建 55
4.1.2 RDD操作 56
4.1.3 持久化 62
4.1.4 分區(qū) 63
4.1.5 一個(gè)綜合實(shí)例 67
4.2 鍵值對(duì)RDD 69
4.2.1 鍵值對(duì)RDD的創(chuàng)建 69
4.2.2 常用的鍵值對(duì)轉(zhuǎn)換操作 70
4.2.3 一個(gè)綜合實(shí)例 74
4.3 數(shù)據(jù)讀寫 75
4.3.1 文件數(shù)據(jù)讀寫 76
4.3.2 讀寫HBase數(shù)據(jù) 78
4.4 綜合實(shí)例 82
4.4.1 求TOP值 82
4.4.2 文件排序 84
4.4.3 二次排序 85
4.5 本章小結(jié) 87
實(shí)驗(yàn)3 RDD編程初級(jí)實(shí)踐 87
一、實(shí)驗(yàn)?zāi)康摹?7
二、實(shí)驗(yàn)平臺(tái) 87
三、實(shí)驗(yàn)內(nèi)容和要求 87
四、實(shí)驗(yàn)報(bào)告 89
第5章 Spark SQL 90
5.1 Spark SQL簡(jiǎn)介 91
5.1.1 從Shark說起 91
5.1.2 Spark SQL架構(gòu) 92
5.1.3 為什么推出Spark SQL 93
5.2 DataFrame概述 93
5.3 DataFrame的創(chuàng)建 94
5.4 DataFrame的保存 95
5.5 DataFrame的常用操作 96
5.6 從RDD轉(zhuǎn)換得到DataFrame 97
5.6.1 利用反射機(jī)制推斷RDD模式 98
5.6.2 使用編程方式定義RDD模式 99
5.7 使用Spark SQL讀寫數(shù)據(jù)庫 101
5.7.1 通過JDBC連接數(shù)據(jù)庫 101
5.7.2 連接Hive讀寫數(shù)據(jù) 103
5.8 本章小結(jié) 107
5.9 習(xí)題 107
實(shí)驗(yàn)4 Spark SQL編程初級(jí)實(shí)踐 108
一、實(shí)驗(yàn)?zāi)康摹?08
二、實(shí)驗(yàn)平臺(tái) 108
三、實(shí)驗(yàn)內(nèi)容和要求 108
四、實(shí)驗(yàn)報(bào)告 109
第6章 Spark Streaming 110
6.1 流計(jì)算概述 111
6.1.1 靜態(tài)數(shù)據(jù)和流數(shù)據(jù) 111
6.1.2 批量計(jì)算和實(shí)時(shí)計(jì)算 112
6.1.3 流計(jì)算概念 112
6.1.4 流計(jì)算框架 113
6.1.5 流計(jì)算處理流程 114
6.2 Spark Streaming 115
6.2.1 Spark Streaming設(shè)計(jì) 115
6.2.2 Spark Streaming與Storm的對(duì)比 116
6.2.3 從Hadoop Storm架構(gòu)轉(zhuǎn)向Spark架構(gòu) 117
6.3 DStream操作概述 118
6.3.1 Spark Streaming工作機(jī)制 118
6.3.2 編寫Spark Streaming程序的基本步驟 119
6.3.3 創(chuàng)建StreamingContext對(duì)象 119
6.4 基本輸入源 120
6.4.1 文件流 120
6.4.2 套接字流 122
6.4.3 RDD隊(duì)列流 127
6.5 高級(jí)數(shù)據(jù)源 128
6.5.1 Kafka簡(jiǎn)介 129
6.5.2 Kafka準(zhǔn)備工作 129
6.5.3 Spark準(zhǔn)備工作 130
6.5.4 編寫Spark Streaming程序使用Kafka數(shù)據(jù)源 131
6.6 轉(zhuǎn)換操作 135
6.6.1 DStream無狀態(tài)轉(zhuǎn)換操作 135
6.6.2 DStream有狀態(tài)轉(zhuǎn)換操作 136
6.7 輸出操作 140
6.7.1 把DStream輸出到文本文件中 140
6.7.2 把DStream寫入到關(guān)系數(shù)據(jù)庫中 141
6.8 本章小結(jié) 143
6.9 習(xí)題 143
實(shí)驗(yàn)5 Spark Streaming編程初級(jí)實(shí)踐 144
一、實(shí)驗(yàn)?zāi)康摹?44
二、實(shí)驗(yàn)平臺(tái) 144
三、實(shí)驗(yàn)內(nèi)容和要求 144
四、實(shí)驗(yàn)報(bào)告 145
第7章 Spark Mllib 146
7.1 基于大數(shù)據(jù)的機(jī)器學(xué)習(xí) 147
7.2 機(jī)器學(xué)習(xí)庫MLlib概述 148
7.3 基本數(shù)據(jù)類型 149
7.3.1 本地向量 149
7.3.2 標(biāo)注點(diǎn) 149
7.3.3 本地矩陣 150
7.4 機(jī)器學(xué)習(xí)流水線 151
7.4.1 流水線的概念 151
7.4.2 流水線工作過程 152
7.5 特征提取、轉(zhuǎn)換和選擇 153
7.5.1 特征提取 154
7.5.2 特征轉(zhuǎn)換 156
7.5.3 特征選擇 161
7.5.4 局部敏感哈希 162
7.6 分類算法 163
7.6.1 邏輯斯蒂回歸分類器 163
7.6.2 決策樹分類器 167
7.7 聚類算法 170
7.7.1 K-Means聚類算法 171
7.7.2 GMM聚類算法 173
7.8 協(xié)同過濾算法 175
7.8.1 推薦算法的原理 176
7.8.2 ALS算法 176
7.9 模型選擇和超參數(shù)調(diào)整 180
7.9.1 模型選擇工具 180
7.9.2 用交叉驗(yàn)證選擇模型 181
7.10 本章小結(jié) 183
7.11 習(xí)題 183
實(shí)驗(yàn)6 Spark機(jī)器學(xué)習(xí)庫MLlib編程實(shí)踐 184
一、實(shí)驗(yàn)?zāi)康摹?84
二、實(shí)驗(yàn)平臺(tái) 184
三、實(shí)驗(yàn)內(nèi)容和要求 184
四、實(shí)驗(yàn)報(bào)告 185
參考文獻(xiàn) 186