Hadoop大數(shù)據(jù)實(shí)戰(zhàn)權(quán)威指南(第2版)
定 價(jià):79 元
叢書(shū)名:大數(shù)據(jù)科學(xué)與應(yīng)用叢書(shū)
- 作者:黃東軍
- 出版時(shí)間:2019/9/1
- ISBN:9787121370335
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP274-62
- 頁(yè)碼:320
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
基于"深入分析組件原理、充分展示搭建過(guò)程、詳細(xì)指導(dǎo)應(yīng)用開(kāi)發(fā)”的理念,以最新版Hadoop及其生態(tài)組件為對(duì)象,采用理論與應(yīng)用高度融合的方法,介紹大數(shù)據(jù)的概念、技術(shù)、方法、應(yīng)用、以及項(xiàng)目開(kāi)發(fā)。全書(shū)分為三篇,第一篇為大數(shù)據(jù)的基本概念和技術(shù)綜述,第二篇為平臺(tái)搭建與基本應(yīng)用,內(nèi)容設(shè)計(jì)Linux、HDFS、MapReduce、Yarn、Hive、HBase、Sqoop、Kafka、Spark、Phoenix等;第三篇為數(shù)據(jù)處理與項(xiàng)目開(kāi)發(fā),綜合運(yùn)用各類組件進(jìn)行實(shí)際數(shù)據(jù)處理,包括交互式應(yīng)用、決策、推薦算法、銷售數(shù)據(jù)分析系統(tǒng)等。
黃東軍,男,教授,博士,博士生導(dǎo)師。畢業(yè)于中南大學(xué)計(jì)算機(jī)應(yīng)用技術(shù),先工作于中南大學(xué)信息科學(xué)與工程學(xué)院。中國(guó)計(jì)算機(jī)學(xué)會(huì)高級(jí)會(huì)員,教育部計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)教學(xué)指導(dǎo)委員會(huì)"物聯(lián)網(wǎng)工程專業(yè)教學(xué)研究專家組”成員。
目 錄
第一篇 大數(shù)據(jù)的基本概念和技術(shù) 1
第1章 緒論 3
1.1 大數(shù)據(jù)的時(shí)代背景 3
1.1.1 全球大數(shù)據(jù)浪潮 3
1.1.2 我國(guó)的大數(shù)據(jù)戰(zhàn)略 5
1.2 大數(shù)據(jù)的基本概念和特征 6
1.2.1 基本概念 6
1.2.2 基本特征 7
1.3 大數(shù)據(jù)系統(tǒng)的技術(shù)支撐體系 7
1.3.1 技術(shù)支撐體系概覽 7
1.3.2 大數(shù)據(jù)系統(tǒng)的采集層 8
1.3.3 大數(shù)據(jù)系統(tǒng)的存儲(chǔ)層 9
1.3.4 大數(shù)據(jù)系統(tǒng)的分析層 9
1.3.5 大數(shù)據(jù)系統(tǒng)的應(yīng)用層 9
1.3.6 大數(shù)據(jù)系統(tǒng)的垂直層 10
1.4 大數(shù)據(jù)領(lǐng)域的主要職位及其能力要求 11
1.4.1 首席數(shù)據(jù)官 11
1.4.2 數(shù)據(jù)科學(xué)家 11
1.4.3 大數(shù)據(jù)開(kāi)發(fā)工程師 12
1.4.4 大數(shù)據(jù)運(yùn)維工程師 13
1.5 本章小結(jié) 13
第2章 Hadoop大數(shù)據(jù)關(guān)鍵技術(shù) 15
2.1 Hadoop大數(shù)據(jù)應(yīng)用生態(tài)系統(tǒng) 15
2.1.1 架構(gòu)的基本理論 15
2.1.2 Hadoop大數(shù)據(jù)應(yīng)用生態(tài)系統(tǒng)的主要組件及其關(guān)系 16
2.2 大數(shù)據(jù)采集技術(shù) 19
2.2.1 結(jié)構(gòu)化數(shù)據(jù)采集工具 19
2.2.2 日志收集工具與技術(shù) 20
2.3 大數(shù)據(jù)存儲(chǔ)技術(shù) 23
2.3.1 相關(guān)概念 23
2.3.2 分布式存儲(chǔ)系統(tǒng) 27
2.3.3 數(shù)據(jù)庫(kù)(HBase)與數(shù)據(jù)倉(cāng)庫(kù)(Hive) 30
2.4 分布式計(jì)算框架 35
2.4.1 離線計(jì)算框架 35
2.4.2 實(shí)時(shí)流計(jì)算平臺(tái) 40
2.5 數(shù)據(jù)分析平臺(tái)與工具 45
2.5.1 面向大數(shù)據(jù)的數(shù)據(jù)挖掘與分析工具 45
2.5.2 機(jī)器學(xué)習(xí) 49
2.6 本章小結(jié) 52
第二篇 Hadoop大數(shù)據(jù)平臺(tái)搭建與基本應(yīng)用 55
第3章 Linux操作系統(tǒng)與集群搭建 57
3.1 Linux操作系統(tǒng) 57
3.1.1 概述 57
3.1.2 特點(diǎn) 58
3.1.3 Linux操作系統(tǒng)的組成 59
3.2 Linux集群的搭建 62
3.2.1 安裝VMware Workstation 62
3.2.2 在VMware Workstation Pro 12上安裝Linux(CentOS 7) 65
3.3 集群的配置 77
3.3.1 設(shè)置主機(jī)名 77
3.3.2 網(wǎng)絡(luò)設(shè)置 79
3.3.3 關(guān)閉防火墻 83
3.3.4 安裝JDK 84
3.3.5 免密鑰登錄配置 87
3.4 Linux基本命令 89
3.5 本章小結(jié) 96
第4章 HDFS安裝與基本應(yīng)用 97
4.1 HDFS概述 97
4.1.1 特點(diǎn) 97
4.1.2 主要組件與架構(gòu) 97
4.2 HDFS架構(gòu)分析 98
4.2.1 數(shù)據(jù)塊 98
4.2.2 NameNode 98
4.2.3 DataNode 99
4.2.4 SecondaryNameNode 100
4.2.5 數(shù)據(jù)備份 100
4.2.6 通信協(xié)議 101
4.2.7 可靠性保證 101
4.3 文件操作過(guò)程分析 101
4.3.1 讀文件 101
4.3.2 寫(xiě)文件 102
4.3.3 刪除文件 103
4.4 Hadoop的安裝與配置 104
4.4.1 解壓Hadoop安裝包 104
4.4.2 配置Hadoop環(huán)境變量 105
4.4.3 配置Yarn環(huán)境變量 106
4.4.4 配置核心組件 106
4.4.5 配置文件系統(tǒng) 107
4.4.6 配置yarn site.xml文件 108
4.4.7 配置MapReduce計(jì)算框架文件 109
4.4.8 配置Master中的workers文件 111
4.4.9 將Master上的Hadoop復(fù)制到Slave 111
4.5 Hadoop集群的啟動(dòng) 112
4.5.1 配置操作系統(tǒng)的環(huán)境變量 112
4.5.2 創(chuàng)建Hadoop數(shù)據(jù)目錄 113
4.5.3 格式化文件系統(tǒng) 113
4.5.4 啟動(dòng)和關(guān)閉Hadoop 114
4.5.5 驗(yàn)證Hadoop是否成功啟動(dòng) 115
4.6 Hadoop集群的基本應(yīng)用 117
4.6.1 HDFS基本命令 117
4.6.2 在Hadoop集群中運(yùn)行程序 120
4.7 本章小結(jié) 122
第5章 MapReduce與Yarn 123
5.1 MapReduce程序的概念 123
5.1.1 基本編程模型 123
5.1.2 計(jì)算過(guò)程分析 124
5.2 深入理解Yarn 126
5.2.1 Yarn的基本架構(gòu) 126
5.2.2 Yarn的工作流程 130
5.3 在Linux平臺(tái)安裝Eclipse 130
5.3.1 Eclipse簡(jiǎn)介 130
5.3.2 安裝并啟動(dòng)Eclipse 131
5.4 開(kāi)發(fā)MapReduce程序的基本方法 133
5.4.1 為Eclipse安裝Hadoop插件 133
5.4.2 WordCount:第一個(gè)MapReduce程序 137
5.5 本章小結(jié) 150
第6章 Hive和HBase的安裝與應(yīng)用 151
6.1 在CentOS 7下安裝MySQL 151
6.1.1 下載或復(fù)制MySQL安裝包 151
6.1.2 執(zhí)行安裝命令 152
6.1.3 啟動(dòng)MySQL 153
6.1.4 登錄MySQL 153
6.1.5 使用MySQL 154
6.1.6 問(wèn)題與解決辦法 156
6.2 Hive安裝與應(yīng)用 157
6.2.1 下載并解壓Hive安裝包 158
6.2.2 配置Hive 158
6.2.3 啟動(dòng)并驗(yàn)證Hive 161
6.2.4 Hive的基本應(yīng)用 162
6.3 ZooKeeper集群安裝 163
6.3.1 ZooKeeper簡(jiǎn)介 163
6.3.2 安裝ZooKeeper 164
6.3.3 配置ZooKeeper 165
6.3.4 啟動(dòng)和測(cè)試 166
6.4 HBase的安裝與應(yīng)用 168
6.4.1 解壓并安裝HBase 168
6.4.2 配置HBase 169
6.4.3 啟動(dòng)并驗(yàn)證HBase 171
6.4.4 HBase的基本應(yīng)用 173
6.4.5 HBase應(yīng)用中常見(jiàn)問(wèn)題及其解決辦法 175
6.5 本章小結(jié) 176
第7章 Sqoop和Kafka的安裝與應(yīng)用 177
7.1 安裝部署Sqoop 177
7.1.1 下載或復(fù)制Sqoop安裝包 177
7.1.2 解壓并安裝Sqoop 177
7.1.3 配置Sqoop 178
7.1.4 啟動(dòng)并驗(yàn)證Sqoop 180
7.1.5 測(cè)試Sqoop與MySQL的連接 180
7.2 安裝部署Kafka集群 182
7.2.1 下載或復(fù)制Kafka安裝包 182
7.2.2 解壓縮Kafka安裝包 182
7.2.3 配置Kafka集群 183
7.2.4 Kafka的初步應(yīng)用 184
7.3 本章小結(jié) 188
第8章 Spark集群的安裝與開(kāi)發(fā)環(huán)境的配置 189
8.1 深入理解Spark 189
8.1.1 Spark的系統(tǒng)架構(gòu) 189
8.1.2 Spark的關(guān)鍵概念 191
8.2 Scala的安裝與配置 193
8.2.1 下載Scala安裝包 194
8.2.2 安裝Scala 194
8.2.3 啟動(dòng)并應(yīng)用Scala 195
8.3 Spark集群的安裝與配置 195
8.3.1 安裝模式 195
8.3.2 Spark的安裝 196
8.3.3 啟動(dòng)并驗(yàn)證Spark 198
8.3.4 幾點(diǎn)說(shuō)明 202
8.4 IDEA開(kāi)發(fā)環(huán)境的安裝與配置 203
8.4.1 IDEA簡(jiǎn)介 203
8.4.2 IDEA的安裝 204
8.4.3 IDEA的配置 205
8.5 本章小結(jié) 208
第9章 Spark應(yīng)用基礎(chǔ) 209
9.1 Spark應(yīng)用程序的運(yùn)行模式 209
9.1.1 Spark on Yarn-cluster- 209
9.1.2 Spark on Yarn-client 210
9.2 Spark的應(yīng)用設(shè)計(jì) 211
9.2.1 分布式估算圓周率 211
9.2.2 基于Spark MLlib的貸款風(fēng)險(xiǎn)預(yù)測(cè) 226
9.3 本章小結(jié) 242
第三篇 大數(shù)據(jù)處理與項(xiàng)目開(kāi)發(fā) 243
第10章 交互式數(shù)據(jù)處理 245
10.1 數(shù)據(jù)預(yù)處理 245
10.1.1 查看數(shù)據(jù) 245
10.1.2 數(shù)據(jù)擴(kuò)展 247
10.1.3 數(shù)據(jù)過(guò)濾 247
10.1.4 數(shù)據(jù)上傳 248
10.2 創(chuàng)建數(shù)據(jù)倉(cāng)庫(kù) 249
10.2.1 創(chuàng)建Hive數(shù)據(jù)倉(cāng)庫(kù)的基本命令 249
10.2.2 創(chuàng)建Hive分區(qū)表 251
10.3 數(shù)據(jù)分析 253
10.3.1 基本統(tǒng)計(jì) 253
10.3.2 用戶行為分析 254
10.3.3 實(shí)時(shí)數(shù)據(jù) 256
10.4 本章小結(jié) 256
第11章 協(xié)同過(guò)濾推薦系統(tǒng) 257
11.1 推薦算法概述 257
11.1.1 基于人口統(tǒng)計(jì)學(xué)的推薦 257
11.1.2 基于內(nèi)容的推薦 258
11.1.3 協(xié)同過(guò)濾推薦 258
11.2 協(xié)同過(guò)濾推薦算法分析 259
11.2.1 基于用戶的協(xié)同過(guò)濾推薦 259
11.2.2 基于物品的協(xié)同過(guò)濾推薦 261
11.3 Spark MLlib推薦算法應(yīng)用 262
11.3.1 ALS算法原理 262
11.3.2 ALS的應(yīng)用設(shè)計(jì) 264
11.4 本章小結(jié) 277
第12章 銷售數(shù)據(jù)分析系統(tǒng) 279
12.1 數(shù)據(jù)采集 279
12.1.1 在Windows平臺(tái)安裝JDK 279
12.1.2 在Windows平臺(tái)安裝Eclipse 281
12.1.3 將WebCollector項(xiàng)目導(dǎo)入Eclipse 282
12.1.4 在Windows平臺(tái)安裝MySQL 283
12.1.5 連接JDBC 286
12.1.6 運(yùn)行爬蟲(chóng)程序 286
12.2 在HBase集群上準(zhǔn)備數(shù)據(jù) 287
12.2.1 將數(shù)據(jù)導(dǎo)入MySQL 287
12.2.2 將MySQL表中的數(shù)據(jù)導(dǎo)入HBase集群 289
12.3 安裝Phoenix中間件 291
12.3.1 Phoenix架構(gòu) 291
12.3.2 解壓安裝Phoenix 293
12.3.3 Phoenix環(huán)境配置 293
12.3.4 使用Phoenix 294
12.4 基于Web的前端開(kāi)發(fā) 298
12.4.1 將Web前端項(xiàng)目導(dǎo)入Eclipse 298
12.4.2 安裝Tomcat 300
12.4.3 在Eclipse中配置Tomcat 300
12.4.4 在Web瀏覽器中查看執(zhí)行結(jié)果 303
12.5 本章小結(jié) 305
參考文獻(xiàn)307