Hadoop 大數據開發技術

Hadoop 大數據開發技術

作者: 申時全 陳強 楊勝利 黎學軍 薑榮正 邱林潤
出版社: 清華大學
出版在: 2021-07-01
ISBN-13: 9787302579700
ISBN-10: 7302579709
裝訂格式: 平裝
總頁數: 288 頁





內容描述


本書較為全面地介紹了大數據開發技術平臺Hadoop及其生態系統的相關知識。全書共12章,包括Hadoop概述、大數據開發平臺Hadoop環境的搭建、Hadoop通用命令與編程原理、Hadoop分佈式文件存儲HDFS、作業調度與集群資源管理框架YARN、Hadoop分佈式計算框架MapReduce、Hadoop數據庫HBase、Hadoop數據倉庫Hive、Hadoop數據的快速通用計算引擎Spark,以及大數據應用開發綜合實例。本書從應用角度出發,重點培養學生應用大數據技術平臺Hadoop解決實際問題的能力。 本書內容新穎,簡明易懂,可操作性強,可作為普通高等學校、高職高專院校數據科學與大數據、軟件工程等電腦相關專業和信息管理類專業“大數據開發技術”課程的教材,也可作為大數據技術培訓的教材,還適合大數據技術研發人員和廣大電腦愛好者自學使用。


目錄大綱


目錄
第1篇大數據開發技術平臺Hadoop
第1章Hadoop概述3
1.1大數據與Hadoop3
1.1.1大數據概述4
1.1.2什麽是Hadoop6
1.1.3大數據與Hadoop的關系6
1.2Hadoop的發展歷史7
1.2.1Hadoop的產生7
1.2.2Hadoop的發展階段7
1.3Hadoop的體系結構8
1.3.1Hadoop的Common8
1.3.2Hadoop的HDFS9
1.3.3Hadoop的YARN10
1.3.4Hadoop的MapReduce10
1.3.5Hadoop家族的其他成員11
1.4本章小結12
習題12
第2章大數據開發平臺Hadoop環境的搭建13
2.1Linux系統下的參數配置13
2.1.1Linux系統的網絡配置13
2.1.2為Hadoop設置專門用戶15
2.1.3設置無密碼登錄用戶16
2.2基於Linux系統的JDK安裝與配置17
2.2.1Java開發工具JDK的下載與安裝17
2.2.2配置與Java有關的環境參數17
2.2.3基於Linux系統下Eclipse的安裝與配置19
2.2.4Eclipse集成環境——Java程序開發實例23
2.3Hadoop環境的搭建24
2.3.1單機模式25
2.3.2偽集群模式26
2.3.3集群模式32
2.4Hadoop服務的啟動與測試38
2.5本章小結38
習題38
第3章Hadoop通用命令與應用編程原理39
3.1Hadoop命令概述39
3.2Hadoop管理命令41
3.2.1命令功能與命令格式41
3.2.2命令應用實例41
3.3Hadoop用戶命令42
3.3.1建立與查看Hadoop的文檔42
3.3.2檢查Hadoop本地代碼可用性44
3.3.3classpath命令44
3.3.4credential命令44
3.3.5遞歸復制文件和目錄命令distcp46
3.3.6Hadoop的fs命令47
3.3.7Hadoop的jar命令47
3.3.8Hadoop的key命令47
3.3.9Hadoop的其他用戶命令48
3.4Hadoop編程原理49
3.4.1創建Java應用項目49
3.4.2Hadoop分佈式處理程序的設計原理53
3.5Hadoop編程實例53
3.5.1問題描述53
3.5.2求最大值的Hadoop程序設計54
3.6本章小結57
習題57
第4章Hadoop分佈式文件存儲58
4.1HDFS概述58
4.1.1HDFS的特點59
4.1.2HDFS的架構59
4.1.3熟悉HDFS守護進程61
4.1.4HDFS的規劃設計64
4.2HDFS 的shell命令66
4.2.1HDFS 的shell命令概述66
4.2.2管理命令67
4.2.3客戶端命令68
4.2.4HDFS的守護進程命令73
4.3HDFS的API編程應用74
4.3.1一個簡單的HDFS API編程實例74
4.3.2HDFS的應用編程接口76
4.3.3HDFS的編程應用實例80
4.4本章小結84
習題84
第5章作業調度與集群資源管理框架YARN86
5.1YARN概述86
5.1.1YARN簡介86
5.1.2YARN的主要架構87
5.1.3YARN架構簡析89
5.2YARN的命令及應用89
5.2.1YARN命令概述89
5.2.2用戶命令90
5.2.3管理員命令95
5.3YARN的API應用編程98
5.3.1YARN工作流程98
5.3.2YARN編程概述99
5.3.3YARN Client程序編寫100
5.3.4YARN AppicationMaster編寫101
5.3.5YARN Container工作程序104
5.4本章小結104
習題104
第6章Hadoop分佈式計算框架MapReduce105
6.1MapReduce結構模型105
6.1.1MapReduce概述105
6.1.2Map和Reduce(映射和規約)106
6.1.3MapReduce的主要功能及技術特徵106
6.2MapReduce的工作原理109
6.2.1Shuffle和Sort109
6.2.2任務的執行113
6.2.3故障處理116
6.2.4作業調度118
6.3MapReduce的命令行應用121
6.3.1命令概述121
6.3.2用戶命令121
6.3.3管理命令124
6.4MapReduce的API應用編程125
6.4.1與數據輸入有關的類125
6.4.2Mapper/Reducer類129
6.4.3Job類及相關類131
6.4.4輸出格式類與記錄輸出類135
6.5MapReduce應用實例135
6.5.1單詞計數程序設計135
6.5.2計算平均成績的程序設計138
6.6本章小結140
習題140
第2篇Hadoop家族的其他項目
第7章Hadoop數據庫HBase145
7.1HBase概述145
7.1.1HBase簡介145
7.1.2HBase的特點146
7.2HBase體系結構147
7.3HBase的數據模型148
7.3.1邏輯模型148
7.3.2物理模型150
7.4HBase的下載與安裝150
7.4.1HBase的下載150
7.4.2HBase的安裝151
7.5HBase shell154
7.5.1通用命令155
7.5.2數據定義語言155
7.5.3數據操作語言159
7.6HBase API164
7.6.1HBaseAdmin類164
7.6.2HTable類165
7.6.3HTableDescriptor類165
7.6.4HColumnDescriptor類166
7.6.5Get類166
7.6.6Put類166
7.6.7Delete類167
7.6.8Result類168
7.6.9ResultScanner類168
7.7HBase過濾器179
7.7.1過濾器Filter179
7.7.2過濾器的操作符179
7.7.3過濾器的比較器Comparator180
7.7.4過濾器的使用180
7.8本章小結184
習題184
第8章Hadoop數據倉庫Hive186
8.1Hive概述186
8.1.1Hive簡介186
8.1.2Hive架構186
8.1.3Hive的安裝187
8.2Hive數據類型192
8.2.1基本類型192
8.2.2復雜類型193
8.3Hive的數據模型194
8.3.1內部表194
8.3.2外部表194
8.3.3分區表194
8.3.4桶表194
8.3.5視圖表195
8.4Hive內置運算符195
8.4.1關系運算符195
8.4.2算術運算符196
8.4.3邏輯運算符196
8.4.4復雜運算符197
8.5Hive shell操作197
8.5.1數據庫操作197
8.5.2表操作198
8.6Hive的內置函數和UDF199
8.6.1內置函數199
8.6.2用戶自定義函數200
8.7本章小結201
習題201
第9章Hadoop數據的快速通用計算引擎Spark204
9.1Spark概述204
9.1.1理解Spark206
9.1.2安裝Spark 206
9.2快速啟動Spark209
9.3Spark生態圈213
9.4Spark編程217
9.4.1Structured Streaming編程217
9.4.2Spark Streaming編程218
9.4.3機器學習庫和GraphX編程220
9.5本章小結223
習題223
第3篇大數據應用開發綜合實例
第10章編程環境與數據集準備227
10.1Zeppelin部署227
10.1.1Zeppelin安裝227
10.1.2Zeppelin配置228
10.1.3運行Zeppelin231
10.1.4連接測試Zeppelin231
10.1.5用admin身份權限登錄232
10.2Zeppelin UI233
10.2.1首頁233
10.2.2菜單234
10.2.3筆記237
10.2.4Zeppelin配置中的典型錯誤240
10.3獲取MovieLens數據集242
10.4本章小結246
習題246
第11章大數據分析與數據可視化247
11.1數據處理247
11.1.1創建筆記247
11.1.2數據處理案例248
11.2數據分析與可視化252
11.2.1註冊臨時表users252
11.2.2瀏覽users252
11.2.3統計年齡分佈253
11.2.4統計職業分佈255
11.3復雜邏輯處理257
11.3.1評分統計分析257
11.3.2評分分佈的條形圖259
11.4本章小結260
習題260
第12章構建推薦算法261
12.1協同過濾算法概述261
12.2協同過濾分類261
12.2.1基於用戶的協同過濾262
12.2.2基於物品的協同過濾262
12.3Spark推薦模型庫263
12.3.1顯式矩陣分解263
12.3.2隱式矩陣分解264
12.3.3交替最小二乘法264
12.4用Spark MLlib ALS構建推薦算法265
12.4.1獲取ml1m.zip文件265
12.4.2創建RDD265
12.4.3創建DataFrame265
12.4.4構建訓練和測試數據集267
12.4.5構建模型268
12.4.6使用推薦模型預測269
12.4.7用測試數據對模型進行評估269
12.4.8衡量模型的準確度270
12.5本章小結271
習題271


作者介紹


申時全,1953年6月生,貴州畢節人,本科學歷,學士學位,教授, CNCIW認證軟件開發高級工程師。
廣東科技學院計算機系網絡工程專業負責人。




相關書籍

Successful Business Intelligence: Unlock the Value of BI & Big Data, 2/e (Hardcover)

作者 Cindi Howson

2021-07-01

數據革命:大數據價值實現方法、技術與案例 (Data revolution)

作者 範煜

2021-07-01

Getting Started with GEO, CouchDB, and Node.js (Paperback)

作者 Mick Thompson

2021-07-01