基于新信息技術(shù)的Hadoop大數(shù)據(jù)技術(shù)
定 價(jià):44 元
叢書名:新一代信息技術(shù)系列教材
- 作者:何永亞
- 出版時(shí)間:2023/9/1
- ISBN:9787560670096
- 出 版 社:西安電子科技大學(xué)出版社
- 中圖法分類:TP274
- 頁碼:232
- 紙張:
- 版次:1
- 開本:16開
本書面向Hadoop大數(shù)據(jù)技術(shù),通過大量實(shí)例,循序漸進(jìn)地介紹了Hadoop生態(tài)系統(tǒng)常用組件的安裝及使用方法。
全書共15個(gè)項(xiàng)目,主要內(nèi)容包括:在虛擬機(jī)中安裝CentOS 7、安裝Hadoop偽分布、配置平臺基礎(chǔ)環(huán)境、搭建Zookeeper分布式集群、搭建HDFS分布式集群、搭建YARN分布式集群、Hadoop分布式計(jì)算框架(MapReduce)、Hive的安裝與部署、Hive常用命令的使用、搭建HBase分布式集群、Sqoop的安裝與部署、Flume的安裝與使用、搭建Kafka分布式集群、Davinci的安裝與部署以及互聯(lián)網(wǎng)金融項(xiàng)目的離線分析。本書內(nèi)容由淺入深,涵蓋了Hadoop大數(shù)據(jù)生態(tài)系統(tǒng)的各個(gè)主要知識點(diǎn)。
本書內(nèi)容翔實(shí),通俗易懂,可作為大數(shù)據(jù)初學(xué)者的學(xué)習(xí)教材,也可作為大數(shù)據(jù)應(yīng)用開發(fā)人員的參考書。
隨著移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展,大數(shù)據(jù)時(shí)代已經(jīng)到來,大數(shù)據(jù)技術(shù)也已融入人們生活的各個(gè)方面。2023年3月7日,根據(jù)國務(wù)院關(guān)于提請審議國務(wù)院機(jī)構(gòu)改革方案的議案,組建了國家數(shù)據(jù)局。從這一舉措可以看出國家對大數(shù)據(jù)技術(shù)的重視程度,也可以看出大數(shù)據(jù)技術(shù)的應(yīng)用前景十分廣闊,這使學(xué)習(xí)和掌握大數(shù)據(jù)技術(shù)成為迫切的現(xiàn)實(shí)需求。
Hadoop是大數(shù)據(jù)技術(shù)中非常重要的一個(gè)組成部分。本書系統(tǒng)地介紹了Hadoop大數(shù)據(jù)開發(fā)技術(shù)的基礎(chǔ)知識與應(yīng)用、Hadoop核心組件以及Hadoop生態(tài)系統(tǒng)的常用組件,最后通過完整的案例整合了相關(guān)技術(shù)組件。
本書由幾位高校教師合作編寫。我們在本書中融入了大數(shù)據(jù)應(yīng)用的實(shí)踐經(jīng)驗(yàn),注重理論與實(shí)踐相結(jié)合,避免了純理論地、孤立地學(xué)習(xí)技術(shù)組件,從而使讀者在學(xué)習(xí)了大數(shù)據(jù)相關(guān)技術(shù)后,能夠真正地將其應(yīng)用到實(shí)際工作中。
本書共15個(gè)項(xiàng)目,其主要內(nèi)容如下:
項(xiàng)目一為在虛擬機(jī)中安裝CentOS 7,主要介紹了Linux的相關(guān)概念以及在虛擬機(jī)中安裝部署CentOS 7。
項(xiàng)目二為安裝Hadoop偽分布,主要介紹了大數(shù)據(jù)技術(shù)的常用概念以及Hadoop偽分布的安裝。
項(xiàng)目三為配置平臺基礎(chǔ)環(huán)境,主要介紹了部署集群前的各項(xiàng)準(zhǔn)備工作。
項(xiàng)目四為搭建Zookeeper分布式集群,主要介紹了Zookeeper的相關(guān)概念以及Zookeeper集群的安裝與配置。
項(xiàng)目五為搭建HDFS分布式集群,主要介紹了HDFS的構(gòu)架與工作原理以及HDFS集群的搭建。
項(xiàng)目六為搭建YARN分布式集群,主要介紹了YARN的構(gòu)架設(shè)計(jì)與工作原理以及YARN集群的安裝與配置,最后還介紹了集群運(yùn)維的常用命令。
項(xiàng)目七為?Hadoop分布式計(jì)算框架(MapReduce),主要介紹了MapReduce的設(shè)計(jì)思想和優(yōu)缺點(diǎn),還重點(diǎn)介紹了MapReduce的編程模型和運(yùn)行機(jī)制。
項(xiàng)目八為Hive的安裝與部署,主要介紹了Hive的原理與構(gòu)架以及Hive的安裝和部署。
項(xiàng)目九為?Hive常用命令的使用,主要介紹了Hive中常用命令的使用。
項(xiàng)目十為搭建HBase分布式集群,主要介紹了HBase的模型及構(gòu)架、分布式集群的安裝和部署、Shell的操作以及Java客戶端。
項(xiàng)目十一為?Sqoop的安裝與部署,主要介紹了Sqoop的概念、安裝、部署和使用。
項(xiàng)目十二為?Flume的安裝與使用,主要介紹了Flume組件的安裝、部署以及基本用法。
項(xiàng)目十三為搭建?Kafka分布式集群,主要介紹了Kafka集群的安裝、部署以及使用方法。
項(xiàng)目十四為?Davinci的安裝與部署,主要介紹了Davinci組件的相關(guān)構(gòu)架以及安裝與部署。
項(xiàng)目十五為互聯(lián)網(wǎng)金融項(xiàng)目的離線分析,主要介紹了項(xiàng)目需求、流程設(shè)計(jì)和創(chuàng)建相應(yīng)的數(shù)據(jù)庫與表格等,然后按照大數(shù)據(jù)離線項(xiàng)目的流程詳細(xì)介紹了互聯(lián)網(wǎng)金融項(xiàng)目的完整開發(fā)過程。
本書由何永亞、蘇秀芝、王康任主編,胡濤、陸偉霞任副主編。其中,何永亞負(fù)責(zé)擬定、編寫大綱和統(tǒng)稿工作,并編寫了項(xiàng)目一至項(xiàng)目十三,蘇秀芝、王康編寫了項(xiàng)目十四和項(xiàng)目十五,胡濤、陸偉霞參與了本書資料的搜集整理及內(nèi)容勘誤等工作,馬慶參與了本書的審定工作。
讀者可以通過超星平臺加入相應(yīng)的在線課程進(jìn)行學(xué)習(xí)并下載課程資源,課程網(wǎng)址為https://mooc1-1.chaoxing.com/course-ans/courseportal/234740187.html。
由于編者水平有限,書中難免有不妥之處,懇請廣大讀者批評指正。編者的電子郵箱為1073926709@qq.com。
編 者
2023年5月
項(xiàng)目一 在虛擬機(jī)中安裝CentOS 7 1
1.1 Linux概述 1
1.1.1 Linux操作系統(tǒng)簡介 1
1.1.2 Linux操作系統(tǒng)的應(yīng)用場景 1
1.1.3 Linux版本 2
1.2 Linux的常用命令 2
1.2.1 ls命令 2
1.2.2 cd命令 3
1.2.3 pwd命令 3
1.2.4 mkdir 命令 3
1.2.5 rm命令 4
1.2.6 rmdir命令 4
1.2.7 mv命令 4
1.2.8 cp命令 5
1.2.9 cat命令 5
1.2.10 head命令 5
1.2.11 chmod命令 5
1.2.12 chown命令 6
1.2.13 ln命令 7
1.2.14 date命令 8
1.2.15 kill命令 9
1.3 VMware Workstation的安裝與部署 9
1.4 創(chuàng)建虛擬機(jī) 14
1.5 安裝CentOS 7系統(tǒng) 21
項(xiàng)目二 安裝Hadoop偽分布 29
2.1 大數(shù)據(jù)概述 29
2.1.1 什么是大數(shù)據(jù) 29
2.1.2 Hadoop是什么 29
2.1.3 Hadoop項(xiàng)目起源 30
2.1.4 Hadoop的發(fā)展歷程 30
2.1.5 Hadoop名字起源 30
2.1.6 Hadoop的優(yōu)勢 30
2.1.7 Hadoop的應(yīng)用領(lǐng)域 31
2.1.8 Hadoop與云計(jì)算 31
2.1.9 Hadoop與Spark 32
2.1.10 Hadoop與關(guān)系型數(shù)據(jù)庫
管理系統(tǒng) 34
2.2 配置靜態(tài)IP地址 35
2.3 Xshell連接工具 37
2.4 FileZilla傳輸工具 41
2.5 配置主機(jī)名和IP地址的映射 42
2.6 關(guān)閉Linux防火墻 42
2.7 創(chuàng)建Linux的用戶和用戶組 43
2.8 Linux SSH免密登錄 44
2.9 JDK的安裝與配置 45
2.10 Hadoop的安裝與配置 46
項(xiàng)目三 配置平臺基礎(chǔ)環(huán)境 52
3.1 Linux虛擬機(jī)的克隆 52
3.2 配置靜態(tài)IP地址 54
3.3 Xshell連接克隆虛擬機(jī) 56
3.4 修改克隆虛擬機(jī)主機(jī)名 57
3.5 關(guān)閉克隆虛擬機(jī)防火墻 57
3.6 FileZilla連接克隆虛擬機(jī) 58
3.7 Hadoop集群安裝前的準(zhǔn)備工作 58
項(xiàng)目四 搭建Zookeeper分布式集群 66
4.1 Zookeeper概述 66
4.1.1 Zookeeper的特點(diǎn) 66
4.1.2 Zookeeper的基本架構(gòu)與
工作原理 67
4.1.3 Zookeeper的數(shù)據(jù)模型 67
4.1.4 Znode的特性 68
4.1.5 監(jiān)聽機(jī)制 68
4.2 Zookeeper集群的安裝與配置 68
4.3 Zookeeper Shell的常用操作 72
項(xiàng)目五 搭建HDFS分布式集群 73
5.1 HDFS的架構(gòu)設(shè)計(jì)與工作原理 73
5.1.1 HDFS是什么 73
5.1.2 HDFS的產(chǎn)生背景 73
5.1.3 HDFS的設(shè)計(jì)理念 74
5.1.4 HDFS的核心設(shè)計(jì)目標(biāo) 74
5.1.5 HDFS的系統(tǒng)架構(gòu) 74
5.1.6 HDFS的優(yōu)缺點(diǎn) 76
5.1.7 HDFS讀數(shù)據(jù)流程 76
5.1.8 HDFS寫數(shù)據(jù)流程 77
5.1.9 HDFS的高可用機(jī)制及架構(gòu) 78
5.2 HDFS集群的安裝與配置 79
5.3 HDFS集群服務(wù)的啟動(dòng) 82
5.4 測試HDFS集群 83
5.5 HDFS Shell的操作命令 85
5.5.1 HDFS Shell的基本操作命令 85
5.5.2 HDFS Shell的管理員操作命令 85
項(xiàng)目六 搭建YARN分布式集群 87
6.1 YARN的架構(gòu)設(shè)計(jì)與工作原理 87
6.1.1 YARN是什么 87
6.1.2 YARN的作用 87
6.1.3 YARN的基本構(gòu)架 88
6.1.4 YARN的工作原理 89
6.1.5 YARN的工作流程 89
6.1.6 YARN的高可用機(jī)制 90
6.1.7 YARN的調(diào)度器 91
6.2 YARN集群的配置 91
6.3 YARN集群服務(wù)的啟動(dòng) 94
6.4 YARN集群的測試 95
6.5 Hadoop集群的運(yùn)維管理 96
6.5.1 Hadoop集群進(jìn)程的管理 97
6.5.2 Hadoop集群的運(yùn)維技巧 99
項(xiàng)目七 Hadoop分布式計(jì)算框架
(MapReduce) 103
7.1 初識MapReduce 103
7.1.1 MapReduce概述 103
7.1.2 MapReduce的基本設(shè)計(jì)思想 104
7.1.3 MapReduce的優(yōu)缺點(diǎn) 105
7.2 MapReduce編程模型 106
7.2.1 MapReduce的執(zhí)行步驟 106
7.2.2 深入剖析MapReduce
編程模型 107
項(xiàng)目八 Hive的安裝與部署 111
8.1 Hive概述 111
8.1.1 Hive的定義 111
8.1.2 Hive的產(chǎn)生背景 111
8.1.3 Hive的優(yōu)缺點(diǎn) 111
8.1.4 Hive在Hadoop生態(tài)系統(tǒng)中的
位置 112
8.1.5 Hive和Hadoop的關(guān)系 112
8.2 Hive的原理及架構(gòu) 113
8.2.1 Hive的設(shè)計(jì)原理 113
8.2.2 Hive的體系結(jié)構(gòu) 113
8.2.3 Hive的運(yùn)行機(jī)制 114
8.2.4 Hive的轉(zhuǎn)換過程 115
8.2.5 Hive的數(shù)據(jù)類型 115
8.2.6 Hive的數(shù)據(jù)存儲 116
8.3 MySQL的安裝與部署 117
8.4 安裝與部署Hive客戶端 118
項(xiàng)目九 Hive常用命令的使用 121
9.1 Hive對數(shù)據(jù)庫的操作 121
9.1.1 創(chuàng)建數(shù)據(jù)庫 121
9.1.2 使用數(shù)據(jù)庫 122
9.1.3 修改數(shù)據(jù)庫 123
9.1.4 刪除數(shù)據(jù)庫 123
9.2 Hive對數(shù)據(jù)表的操作 124
9.2.1 創(chuàng)建表 124
9.2.2 查看表 126
9.2.3 修改表 127
9.2.4 刪除表 127
9.3 Hive數(shù)據(jù)的相關(guān)操作 128
9.3.1 數(shù)據(jù)導(dǎo)入 128
9.3.2 數(shù)據(jù)導(dǎo)出 130
9.3.3 數(shù)據(jù)備份與恢復(fù) 132
9.4 Hive查詢的相關(guān)操作 133
9.4.1 查詢顯示所有字段 133
9.4.2 查詢顯示部分字段 133
9.4.3 where條件查詢 133
9.4.4 distinct去重查詢 134
9.4.5 group by分組查詢 134
9.4.6 order by全局排序 134
9.4.7 sort by局部排序 135
9.4.8 distribute by分區(qū)查詢 135
9.4.9 cluster by分區(qū)排序 136
9.5 Hive表連接的相關(guān)操作 137
9.5.1 等值連接 137
9.5.2 內(nèi)連接 137
9.5.3 左連接 137
9.5.4 右連接 138
9.5.5 全連接 138
9.6 Hive內(nèi)部表和外部表的相關(guān)操作 139
9.6.1 內(nèi)部表 139
9.6.2 外部表 140
9.7 Hive分區(qū)與分桶的相關(guān)操作 140
9.7.1 創(chuàng)建表分區(qū) 140
9.7.2 創(chuàng)建分桶 142
項(xiàng)目十 搭建HBase分布式集群 144
10.1 HBase 概述 144
10.1.1 HBase是什么 144
10.1.2 HBase的特點(diǎn) 144
10.2 HBase的模型及架構(gòu) 145
10.2.1 HBase的邏輯模型 145
10.2.2 HBase的數(shù)據(jù)模型 145
10.2.3 HBase的物理模型 146
10.2.4 HBase的基本構(gòu)架 147
10.3 HBase集群的安裝與配置 149
10.4 啟動(dòng)HBase集群服務(wù) 151
10.5 HBase Shell工具 152
10.6 HBase Java客戶端 154
10.6.1 添加HBase的相關(guān)依賴 154
10.6.2 連接HBase數(shù)據(jù)庫 154
10.6.3 創(chuàng)建HBase表 155
10.6.4 向HBase表中插入數(shù)據(jù) 155
10.6.5 查詢HBase表數(shù)據(jù) 156
10.6.6 HBase過濾查詢 157
10.6.7 刪除HBase表 158
項(xiàng)目十一 Sqoop的安裝與部署 160
11.1 Sqoop數(shù)據(jù)遷移工具 160
11.1.1 Sqoop概述 160
11.1.2 Sqoop的優(yōu)勢 161
11.1.3 Sqoop的架構(gòu)及工作機(jī)制 161
11.1.4 Sqoop Import流程 161
11.1.5 Sqoop Export流程 162
11.2 Sqoop的安裝與配置 163
11.3 案例:Sqoop遷移Hive倉庫數(shù)據(jù) 164
項(xiàng)目十二 Flume的安裝與使用 166
12.1 Flume日志采集系統(tǒng) 166
12.1.1 Flume概述 166
12.1.2 Flume NG架構(gòu)設(shè)計(jì) 167
12.2 Flume的安裝與配置 168
12.3 測試實(shí)例:監(jiān)控端口數(shù)據(jù) 170
12.3.1 案例需求 170
12.3.2 實(shí)現(xiàn)步驟 170
項(xiàng)目十三 搭建Kafka分布式集群 173
13.1 Kafka 概述 173
13.1.1 Kafka的定義 173
13.1.2 Kafka的設(shè)計(jì)目標(biāo) 173
13.1.3 Kafka的特點(diǎn) 174
13.2 Kafka的構(gòu)架設(shè)計(jì) 174
13.2.1 主題和分區(qū) 175
13.2.2 消費(fèi)者和消費(fèi)者組 175
13.2.3 副本 176
13.3 Kafka分布式集群的安裝與配置 176
項(xiàng)目十四 Davinci的安裝與部署 180
14.1 Davinci的架構(gòu)設(shè)計(jì) 180
14.1.1 Davinci的定義 180
14.1.2 Davinci的架構(gòu)設(shè)計(jì) 180
14.1.3 Davinci的應(yīng)用場景 181
14.2 Davinci的安裝與部署 181
14.2.1 部署規(guī)劃 181
14.2.2 準(zhǔn)備前置環(huán)境 182
14.2.3 下載安裝包 182
14.2.4 安裝與初始化目錄 182
14.2.5 配置環(huán)境變量 183
14.2.6 初始化數(shù)據(jù)庫 183
14.2.7 Davinci服務(wù)器的啟停與注冊 185
項(xiàng)目十五 互聯(lián)網(wǎng)金融項(xiàng)目的離線分析 187
15.1 需求分析及流程設(shè)計(jì) 187
15.2 創(chuàng)建文件夾與數(shù)據(jù)庫 188
15.3 創(chuàng)建相應(yīng)表格 189
15.4 Sqoop采集MySQL中的數(shù)據(jù) 191
15.4.1 啟動(dòng)集群相關(guān)服務(wù) 191
15.4.2 創(chuàng)建Hive數(shù)據(jù)庫 191
15.4.3 MySQL數(shù)據(jù)遷移至Hive 191
15.5 對金融項(xiàng)目進(jìn)行離線分析 193
15.5.1 信用卡用戶特征分析 193
15.5.2 信用卡用戶消費(fèi)行為分析 195
15.5.3 信用卡用戶管理行為分析 196
15.6 創(chuàng)建MySQL業(yè)務(wù)表 197
15.7 統(tǒng)計(jì)結(jié)果導(dǎo)入MySQL 200
15.8 Davinci數(shù)據(jù)可視化分析 203
15.8.1 啟動(dòng)Davinci并創(chuàng)建項(xiàng)目 203
15.8.2 創(chuàng)建不同的視圖 204
15.8.3 創(chuàng)建不同的圖表 215
15.8.4 創(chuàng)建大屏 220
參考文獻(xiàn) 223