大數(shù)據(jù)技術(shù)基礎(chǔ)——基于Hadoop與Spark
定 價(jià):49.8 元
叢書名: 大數(shù)據(jù)創(chuàng)新人才培養(yǎng)系列
- 作者:羅福強(qiáng) 李瑤 陳虹君 著
- 出版時(shí)間:2017/5/1
- ISBN:9787115454102
- 出 版 社:人民郵電出版社
- 中圖法分類:TP274
- 頁碼:292
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書主要內(nèi)容包括:第一章 大數(shù)據(jù)技術(shù)概述、第二章 Hadoop平臺的安裝與配置、第三章 Hadoop分布式文件系統(tǒng)、第四章 HDFS API編程、第五章 Hadoop分布式計(jì)算框架、第六章 MapReduce API編程、第七章 MapReduce 高級編程、第八章 Spark概述、第九章 Spark Streaming編程、第十章 Spark SQL編程
適讀人群 :計(jì)算機(jī)專業(yè)學(xué)生,適合零售和培訓(xùn)
**,重點(diǎn)突出,避免市場上大多數(shù)的大數(shù)據(jù)書籍面面俱到、不適合教學(xué)的弊端
第二、內(nèi)容結(jié)構(gòu)完整,根據(jù)循序漸進(jìn)的認(rèn)識規(guī)律設(shè)計(jì)章節(jié)順序
第三、提供了大量的案例,所有案例代碼都是完整的,都通過了JDK 1.8調(diào)試并給出了運(yùn)行效果
第四,全書配備了豐富的、符合初學(xué)者習(xí)慣的思考和實(shí)踐任務(wù)
第五,全書不僅包含了Hadoop 和 Spark的概念、原理及其應(yīng)用方法,還通過應(yīng)用案例以圖文并茂的方式展示了大數(shù)據(jù)應(yīng)用系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過程,為讀者深入學(xué)習(xí)Hadoop與Spark技術(shù)提供了頗具價(jià)值的參考
羅福強(qiáng),副教授,暢銷教材作者。其編寫的《Visual C#.NET程序設(shè)計(jì)教程》教材,累計(jì)銷售數(shù)萬冊。
第1章 大數(shù)據(jù)技術(shù)概述 1
1.1 大數(shù)據(jù)技術(shù)的發(fā)展背景 1
1.1.1 大數(shù)據(jù)技術(shù)的發(fā)展過程 2
1.1.2 大數(shù)據(jù)技術(shù)的影響 3
1.1.3 大數(shù)據(jù)發(fā)展的重大事件 5
1.2 大數(shù)據(jù)的概念、特征及意義 7
1.2.1 什么是大數(shù)據(jù) 7
1.2.2 大數(shù)據(jù)的特征 8
1.2.3 大數(shù)據(jù)來自哪兒 9
1.2.4 大數(shù)據(jù)的挑戰(zhàn) 10
1.2.5 研究大數(shù)據(jù)的意義 12
1.3 大數(shù)據(jù)的存儲與計(jì)算模式 13
1.3.1 大數(shù)據(jù)的存儲模式 13
1.3.2 大數(shù)據(jù)的計(jì)算模式 16
1.4 大數(shù)據(jù)的典型應(yīng)用 18
1.4.1 智慧醫(yī)療的應(yīng)用 19
1.4.2 智慧農(nóng)業(yè)的應(yīng)用 20
1.4.3 金融行業(yè)的應(yīng)用 21
1.4.4 零售行業(yè)的應(yīng)用 24
1.4.5 電子商務(wù)行業(yè)的應(yīng)用 24
1.4.6 電子政務(wù)的應(yīng)用 24
1.5 初識Hadoop大數(shù)據(jù)平臺 26
1.5.1 Hadoop的發(fā)展過程 26
1.5.2 Hadoop的優(yōu)勢 27
1.5.3 Hadoop的生態(tài)系統(tǒng) 28
1.5.4 Hadoop的版本 29
1.6 習(xí)題 32
第2章 Hadoop平臺的安裝與配置 33
2.1 安裝準(zhǔn)備 33
2.1.1 硬件要求 33
2.1.2 安裝Linux 34
2.1.3 安裝Java 36
2.2 Hadoop的集群安裝 38
2.2.1 Hadoop的運(yùn)行模式 38
2.2.2 Linux系統(tǒng)設(shè)置 39
2.2.3 SSH的安裝 41
2.2.4 Hadoop的安裝 42
2.2.5 Hadoop的配置 42
2.2.6 Hadoop的測試 49
2.3 Hadoop開發(fā)平臺的安裝 51
2.3.1 Eclipse的安裝 51
2.3.2 下載hadoop-eclipse-plugin插件 53
2.3.3 在Eclipse中配置Hadoop 53
2.4 習(xí)題 55
2.5 實(shí)訓(xùn) 55
第3章 Hadoop分布式文件系統(tǒng) 57
3.1 HDFS概述 57
3.1.1 HDFS簡介 57
3.1.2 HDFS的基本概念 58
3.1.3 HDFS的特點(diǎn) 59
3.2 HDFS的體系結(jié)構(gòu) 61
3.2.1 HDFS設(shè)計(jì)目標(biāo) 61
3.2.2 HDFS的結(jié)構(gòu)模型 61
3.2.3 HDFS文件的讀寫 63
3.2.4 HDFS的數(shù)據(jù)組織機(jī)制 63
3.2.5 HDFS的高可用性機(jī)制 66
3.3 HDFS Shell操作 68
3.3.1 Shell命令介紹 68
3.3.2 HDFS Shell幫助 68
3.3.3 文件操作命令 69
3.3.4 跨文件系統(tǒng)的交互操作命令 73
3.3.5 權(quán)限管理操作 74
3.4 習(xí)題 76
3.5 實(shí)訓(xùn) 77
第4章 HDFS API編程 78
4.1 HDFS API概述 78
4.1.1 HDFS API簡介 78
4.1.2 HDFS Java API的一般用法 82
4.2 HDFS Java API客戶端編程 85
4.2.1 目錄與文件的創(chuàng)建 85
4.2.2 文件上傳與下載 87
4.2.3 數(shù)據(jù)流與文件讀寫操作 89
4.2.4 目錄與文件的重命名 93
4.2.5 目錄和文件的刪除 94
4.2.6 文件系統(tǒng)的狀態(tài)信息顯示 95
4.3 HDFS應(yīng)用舉例——云盤系統(tǒng)的實(shí)現(xiàn) 99
4.3.1 云盤系統(tǒng)分析 99
4.3.2 云盤系統(tǒng)設(shè)計(jì) 99
4.3.3 云盤系統(tǒng)實(shí)現(xiàn) 100
4.4 習(xí)題 104
4.5 實(shí)訓(xùn) 104
第5章 Hadoop分布式計(jì)算框架 106
5.1 MapReduce概述 106
5.1.1 為什么需要MapReduce 106
5.1.2 MapReduce的優(yōu)勢 110
5.1.3 MapReduce的基本概念 111
5.1.4 MapReduce框架 112
5.1.5 MapReduce發(fā)展 114
5.2 YARN運(yùn)行機(jī)制 118
5.2.1 YARN組成結(jié)構(gòu) 118
5.2.2 YARN通信協(xié)議 120
5.2.3 YARN工作流程 121
5.3 數(shù)據(jù)的混洗處理 123
5.3.1 map端 124
5.3.2 reduce端 125
5.4 作業(yè)的調(diào)度 125
5.4.1 FIFO調(diào)度器 126
5.4.2 Capacity調(diào)度器 126
5.4.3 Fair調(diào)度器 127
5.4.4 調(diào)度器的比較 128
5.5 任務(wù)的執(zhí)行 129
5.5.1 推測執(zhí)行 129
5.5.2 JVM重用 130
5.5.3 跳過壞記錄 130
5.6 失敗處理機(jī)制 130
5.6.1 任務(wù)運(yùn)行失敗 130
5.6.2 ApplicationMaster運(yùn)行失敗 131
5.6.3 NodeManager運(yùn)行失敗 131
5.6.4 ResourceManager運(yùn)行失敗 132
5.6.5 日志文件 133
5.7 MapReduce示例演示——WordCount 133
5.8 習(xí)題 136
第6章 MapReduce API編程 137
6.1 MapReduce API概述 137
6.1.1 MapReduce API簡介 137
6.1.2 MapReduce API編程思路 140
6.2 MapReduce的數(shù)據(jù)類型 146
6.2.1 序列化 146
6.2.2 Writable接口 146
6.2.3 Writable類 148
6.3 MapReduce的輸入 153
6.3.1 輸入分片 153
6.3.2 文件輸入 154
6.3.3 文本輸入 156
6.3.4 二進(jìn)制輸入 157
6.3.5 多個(gè)輸入 158
6.3.6 數(shù)據(jù)庫輸入 159
6.4 MapReduce的輸出 159
6.4.1 文本輸出 160
6.4.2 二進(jìn)制輸出 160
6.4.3 多個(gè)輸出 160
6.4.4 延遲輸出 161
6.4.5 數(shù)據(jù)庫輸出 161
6.5 MapReduce的任務(wù) 161
6.5.1 map任務(wù) 162
6.5.2 combine任務(wù) 163
6.5.3 partition任務(wù) 164
6.5.4 reduce任務(wù) 164
6.5.5 任務(wù)的配置與執(zhí)行 165
6.6 MapReduce應(yīng)用舉例——倒排索引 168
6.6.1 功能介紹 168
6.6.2 準(zhǔn)備數(shù)據(jù) 169
6.6.3 分析與設(shè)計(jì) 170
6.6.4 MapReduce編碼實(shí)現(xiàn) 171
6.6.5 測試結(jié)果 173
6.7 習(xí)題 174
6.8 實(shí)訓(xùn) 175
第7章 MapReduce 高級編程 177
7.1 自定義數(shù)據(jù)類型 177
7.2 自定義輸入 輸出 183
7.2.1 RecordReader與RecordWriter 183
7.2.2 自定義輸入 188
7.2.3 自定義輸出 192
7.3 自定義Combiner Partitioner 194
7.3.1 自定義Combiner 194
7.3.2 自定義Partitioner 197
7.4 組合式計(jì)算作業(yè) 200
7.4.1 迭代式計(jì)算 200
7.4.2 依賴關(guān)系組合式計(jì)算 201
7.4.3 鏈?zhǔn)接?jì)算 202
7.5 MapReduce的特性 203
7.5.1 計(jì)數(shù)器 203
7.5.2 連接 210
7.6 MapReduce應(yīng)用舉例——成績分析
系統(tǒng)的實(shí)現(xiàn) 215
7.6.1 成績分析系統(tǒng)解析 215
7.6.2 成績分析系統(tǒng)功能設(shè)計(jì) 216
7.6.3 成績分析系統(tǒng)實(shí)現(xiàn) 216
7.7 習(xí)題 225
7.8 實(shí)訓(xùn) 225
第8章 Spark概述 226
8.1 環(huán)境搭建 226
8.1.1 Scala的下載和安裝 227
8.1.2 Spark的下載與安裝 228
8.2 Spark簡介 231
8.2.1 Spark的發(fā)展 231
8.2.2 Spark的特點(diǎn) 232
8.2.3 Spark與Hadoop的關(guān)系 233
8.2.4 Spark的企業(yè)應(yīng)用 234
8.3 Spark大數(shù)據(jù)技術(shù)框架 235
8.3.1 Spark技術(shù)體系 235
8.3.2 四大組件概述 237
8.4 Spark 2.0 使用體驗(yàn) 238
8.4.1 Spark入口 238
8.4.2 第一個(gè)Spark程序 239
8.5 Spark的數(shù)據(jù)模型 242
8.5.1 RDD介紹 242
8.5.2 RDD的處理過程 243
8.5.3 Transformation算子與使用 243
8.5.4 Action算子與使用 251
8.5.5 RDD分區(qū) 253
8.5.6 RDD的依賴關(guān)系 253
8.5.7 RDD的容錯(cuò)支持 254
8.6 Spark任務(wù)調(diào)度 255
8.6.1 Spark應(yīng)用程序部署 255
8.6.2 Spark任務(wù)的調(diào)度機(jī)制 255
8.7 習(xí)題 256
8.8 實(shí)訓(xùn) 257
第9章 Spark Streaming編程 258
9.1 Spark Streaming介紹 258
9.2 Spark Streaming工作機(jī)制 259
9.3 Spark的DStream流 262
9.3.1 DStream轉(zhuǎn)換 262
9.3.2 Window操作 263
9.3.3 DStream輸出 264
9.3.4 持久化與序列化 265
9.3.5 設(shè)置檢測點(diǎn) 266
9.4 Spark Streaming案例 267
9.5 集群處理與性能 270
9.6 習(xí)題 272
9.7 實(shí)訓(xùn) 272
第10章 Spark SQL編程 273
10.1 Spark SQL概述 273
10.2 DataFrame 275
10.2.1 DataSet與DataFrame 275
10.2.2 反射機(jī)制獲取RDD內(nèi)
的Schema 276
10.2.3 編程接口指定Schema 277
10.3 數(shù)據(jù)源 278
10.3.1 一般load save方法 278
10.3.2 Parquet數(shù)據(jù)集 279
10.3.3 JSON數(shù)據(jù)集 280
10.3.4 JDBC數(shù)據(jù)集 281
10.3.5 DataFrame的案例 282
10.4 Spark Streaming與Spark SQL
綜合案例 285
10.5 習(xí)題 290
10.6 實(shí)訓(xùn) 291
參考文獻(xiàn) 292
查看全部↓