定 價:78 元
叢書名:大數(shù)據(jù)管理與應(yīng)用系列叢書
- 作者:呂欣,黃宏斌
- 出版時間:2025/11/1
- ISBN:9787030823304
- 出 版 社:科學(xué)出版社
- 中圖法分類:TP274,TP311.132.3
- 頁碼:454
- 紙張:
- 版次:1
- 開本:16
本書內(nèi)容涵蓋分布式理論基礎(chǔ)、大數(shù)據(jù)處理架構(gòu)Hadoop、Hadoop分布式文件系統(tǒng)、基于Hadoop的數(shù)據(jù)倉庫工具Hive、分布式數(shù)據(jù)庫HBase、分布式計算框架MapReduce、基于內(nèi)存的分布式計算框架Spark、分布式計算框架Flink、分布式協(xié)作服務(wù)ZooKeeper等大數(shù)據(jù)平臺架構(gòu)核心理論與重要組件,以及資源管理平臺YARN,分布式數(shù)據(jù)采集和傳輸系統(tǒng)Flume,基于發(fā)布/訂閱的消息隊列Kafka,分布式NewSQL數(shù)據(jù)庫TiDB,分布式日志收集、查詢和展示系統(tǒng)Loki,向量數(shù)據(jù)庫Milvus等擴(kuò)展技術(shù)。通過概念辨析、原理解析、模型介紹、流程分析、案例講解和編程實(shí)現(xiàn),結(jié)合精心設(shè)計的321個圖表、19個代碼示例及6大學(xué)習(xí)模塊,遴選了7個實(shí)踐案例,促進(jìn)讀者對內(nèi)容的理解和掌握。此外,本書還提供虛擬機(jī)節(jié)點(diǎn)服務(wù)器配置、基于Apache的Hadoop集群搭建、Spark大數(shù)據(jù)平臺搭建的操作指南,并配套豐富的數(shù)字化學(xué)習(xí)資源和全套教輔資料,形成了理論與實(shí)踐并重的立體化教學(xué)體系。
更多科學(xué)出版社服務(wù),請掃碼獲取。
大數(shù)據(jù)挖掘國家杰出青年科學(xué)基金
教育部科技進(jìn)步二等獎
目錄
第1章 導(dǎo)論
1.1 走進(jìn)大數(shù)據(jù)時代 2
1.1.1 數(shù)據(jù)爆炸 2
1.1.2 數(shù)據(jù)生產(chǎn)要素 5
1.1.3 大數(shù)據(jù)時代的技術(shù)變革 8
1.2 大數(shù)據(jù)的定義及特征 11
1.3 大數(shù)據(jù)技術(shù)基礎(chǔ) 14
1.3.1 數(shù)據(jù)采集與預(yù)處理 15
1.3.2 數(shù)據(jù)存儲與管理 17
1.3.3 數(shù)據(jù)分析與挖掘 18
1.3.4 數(shù)據(jù)隱私與安全 19
1.4 大數(shù)據(jù)平臺架構(gòu) 22
1.4.1 大數(shù)據(jù)平臺基本概念 22
1.4.2 大數(shù)據(jù)平臺架構(gòu)模塊 23
1.5 大數(shù)據(jù)平臺應(yīng)用 25
1.5.1 環(huán)境監(jiān)測大數(shù)據(jù)平臺 25
1.5.2 智慧農(nóng)業(yè)大數(shù)據(jù)平臺 26
1.5.3 能源電力大數(shù)據(jù)平臺 27
1.5.4 智慧物流大數(shù)據(jù)平臺 28
1.5.5 醫(yī)療大數(shù)據(jù)平臺 29
1.5.6 社會治理大數(shù)據(jù)平臺 30
1.6 本書實(shí)驗(yàn)環(huán)境說明 31
本章小結(jié) 33
第2章 分布式理論基礎(chǔ)
2.1 分布式系統(tǒng)簡介 35
2.1.1 分布式系統(tǒng)的特點(diǎn) 36
2.1.2 分布式系統(tǒng)的優(yōu)勢 36
2.1.3 分布式系統(tǒng)的挑戰(zhàn) 38
2.2 分布式存儲理論 39
2.2.1 分區(qū)和復(fù)制 39
2.2.2 CAP定理 40
2.2.3 PACELC定理 44
2.2.4 BASE理論 46
2.3 分布式共識 48
2.3.1 分布式共識簡介 48
2.3.2 分布式系統(tǒng)模型 49
2.3.3 FLP不可能定理 53
2.4 共識算法 54
2.4.1 Paxos算法 55
2.4.2 Raft算法 62
2.4.3 拜占庭容錯和PBFT算法 68
本章小結(jié) 72
第3章 大數(shù)據(jù)處理架構(gòu)Hadoop
3.1 認(rèn)識Hadoop 75
3.1.1 數(shù)據(jù)庫的架構(gòu)設(shè)計 75
3.1.2 傳統(tǒng)的數(shù)據(jù)庫管理 77
3.1.3 新興的數(shù)據(jù)管理需求 79
3.1.4 Apache Hadoop生態(tài)的提出 80
3.2 Apache Hadoop生態(tài)系統(tǒng)及其重要組件 82
3.2.1 分布式文件系統(tǒng):HDFS 83
3.2.2 分布式計算框架:MapReduce 86
3.2.3 分布式協(xié)作服務(wù):ZooKeeper 89
3.2.4 分布式列數(shù)據(jù)庫:HBase 92
3.2.5 數(shù)據(jù)倉庫:Hive 95
3.2.6 資源管理器:YARN 98
3.2.7 日志收集工具:Flume 100
3.3 Hadoop社區(qū)和典型應(yīng)用 102
3.3.1 Hadoop社區(qū) 102
3.3.2 Hadoop的典型應(yīng)用 103
本章小結(jié) 106
第4章 Hadoop分布式文件系統(tǒng)HDFS
4.1 HDFS概述 108
4.1.1 分布式文件系統(tǒng)發(fā)展 108
4.1.2 HDFS設(shè)計思想 112
4.1.3 HDFS特性與局限 114
4.2 HDFS基本架構(gòu) 115
4.2.1 NameNode 116
4.2.2 DataNode 119
4.2.3 Client 121
4.2.4 Secondary NameNode 122
4.3 HDFS工作機(jī)制 124
4.3.1 機(jī)架感知 124
4.3.2 DataNode容錯機(jī)制 125
4.3.3 高可用機(jī)制 129
4.3.4 聯(lián)邦機(jī)制 133
4.4 HDFS讀寫操作 134
4.4.1 文件讀取 134
4.4.2 文件寫入 137
4.5 HDFS實(shí)踐 139
4.5.1 HDFS安裝、啟動和配置 139
4.5.2 HDFS常用操作綜合實(shí)踐 148
本章小結(jié) 157
第5章 基于Hadoop的數(shù)據(jù)倉庫工具Hive
5.1 Hive基礎(chǔ) 160
5.1.1 Hive簡介 160
5.1.2 Hive應(yīng)用場景 160
5.2 Hive架構(gòu)及運(yùn)行機(jī)制 161
5.2.1 Hive架構(gòu) 161
5.2.2 Hive工作流程及與Hadoop的交互 163
5.3 Hive數(shù)據(jù)類型 164
5.4 Hive數(shù)據(jù)定義語言 165
5.4.1 Hive數(shù)據(jù)庫管理 166
5.4.2 Hive表管理 168
5.4.3 Hive視圖管理 172
5.4.4 Hive索引管理 173
5.5 分區(qū)和分桶 174
5.5.1 分區(qū)與分區(qū)表 174
5.5.2 分桶與分桶表 176
5.6 Hive數(shù)據(jù)操作語言 178
5.6.1 加載文件 178
5.6.2 查詢插入 179
5.6.3 數(shù)據(jù)遷移 180
5.7 Hive數(shù)據(jù)檢索與計算基礎(chǔ) 180
5.7.1 Hive運(yùn)算符 181
5.7.2 數(shù)據(jù)的查詢、過濾與分組聚合 182
5.7.3 Hive內(nèi)置函數(shù) 186
5.8 Hive實(shí)踐 187
5.8.1 Hive安裝與配置 187
5.8.2 基于Hive的網(wǎng)絡(luò)直播平臺數(shù)據(jù)查詢與分析綜合實(shí)踐 196
本章小結(jié) 206
第6章 分布式數(shù)據(jù)庫HBase
6.1 數(shù)據(jù)庫系統(tǒng)概述 209
6.1.1 數(shù)據(jù)模型 210
6.1.2 傳統(tǒng)關(guān)系型數(shù)據(jù)庫 214
6.1.3 關(guān)系型數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL 220
6.1.4 大數(shù)據(jù)時代下的數(shù)據(jù)庫技術(shù) 231
6.2 HBase概述 233
6.2.1 HBase的基本概念 233
6.2.2 HBase表結(jié)構(gòu) 233
6.2.3 HBase的優(yōu)缺點(diǎn) 236
6.3 HBase體系架構(gòu) 237
6.3.1 Master 238
6.3.2 分區(qū)服務(wù)器 240
6.3.3 ZooKeeper 241
6.3.4 HBase客戶端 242
6.3.5 HDFS 242
6.4 HBase數(shù)據(jù)模型 242
6.4.1 概念模型 243
6.4.2 物理模型 243
6.5 HBase讀寫流程 245
6.5.1 HBase寫入操作流程 245
6.5.2 HBase讀取操作流程 246
6.6 HBase shell 247
6.6.1 數(shù)據(jù)定義語言 247
6.6.2 數(shù)據(jù)操縱語言 249
6.7 HBase實(shí)踐 250
6.7.1 HBase安裝 250
6.7.2 單機(jī)模式配置HBase 252
6.7.3 分布模式配置HBase 253
6.7.4 簡單的HBase操作實(shí)踐 255
本章小結(jié) 259
第7章 分布式計算框架MapReduce
7.1 MapReduce概述 261
7.1.1 MapReduce簡介 261
7.1.2 Map和Reduce函數(shù)定義 261
7.1.3 Map和Reduce函數(shù)示例 261
7.2 MapReduce工作流程 264
7.2.1 工作流程概述 264
7.2.2 MapReduce執(zhí)行步驟 268
7.2.3 Shuffle過程詳解 269
7.3 MapReduce的數(shù)據(jù)類型與格式 270
7.3.1 MapReduce數(shù)據(jù)類型 270
7.3.2 輸入格式 271
7.3.3 輸出格式 273
7.4 WordCount應(yīng)用示例 275
7.4.1 WordCount問題背景 275
7.4.2 MapReduce執(zhí)行條件判斷 275
7.4.3 WordCount處理流程 275
7.4.4 編程實(shí)踐 277
7.5 基于MapReduce的氣象數(shù)據(jù)挖掘綜合實(shí)踐 283
7.5.1 氣象數(shù)據(jù)集介紹 284
7.5.2 數(shù)據(jù)處理流程 284
7.5.3 編寫MapReduce程序 285
本章小結(jié) 289
第8章 基于內(nèi)存的分布式計算框架Spark
8.1 Spark概述 291
8.1.1 Spark產(chǎn)生背景 291
8.1.2 Spark是什么 292
8.1.3 Spark的主要特點(diǎn) 293
8.2 Spark組件 294
8.2.1 Spark Core 295
8.2.2 Spark SQL 297
8.2.3 Spark Structured Streaming 298
8.2.4 Spark MLlib 298
8.2.5 GraphX 299
8.3 Spark運(yùn)行架構(gòu) 299
8.3.1 基本概念 299
8.3.2 Spark應(yīng)用程序 300
8.3.3 Spark工作流程 300
8.3.4 轉(zhuǎn)換操作和行動操作 301
8.4 Spark結(jié)構(gòu)化API 303
8.4.1 產(chǎn)生背景 303
8.4.2 DataFrame和Dataset 303
8.4.3 Spark數(shù)據(jù)類型 305
8.5 Spark下載及使用 306
8.5.1 Spark下載 306
8.5.2 Spark Shell使用 307
8.5.3 Spark UI簡介 309
8.6 Spark SQL實(shí)踐 310
8.6.1 Spark SQL查詢語句 310
8.6.2 Spark SQL數(shù)據(jù)庫和數(shù)據(jù)表 315
8.6.3 Spark SQL視圖 318
8.7 基于Spark的商品訂單數(shù)據(jù)處理綜合實(shí)踐 319
8.7.1 環(huán)境配置 319
8.7.2 數(shù)據(jù)來源 320
8.7.3 數(shù)據(jù)預(yù)處理 321
8.7.4 數(shù)據(jù)統(tǒng)計 321
本章小結(jié) 325
第9章 分布式計算框架Flink
9.1 Flink概述 327
9.1.1 Flink的定義及描述 327
9.1.2 Flink的主要功能 327
9.1.3 Flink的特點(diǎn) 328
9.2 數(shù)據(jù)處理架構(gòu)設(shè)計 328
9.2.1 傳統(tǒng)數(shù)據(jù)處理架構(gòu) 328
9.2.2 初級流式處理架構(gòu) 329
9.2.3 Flink流式處理架構(gòu) 330
9.3 Flink工作機(jī)制 330
9.3.1 Flink運(yùn)行架構(gòu) 331
9.3.2 Flink應(yīng)用程序部署方式 331
9.4 Flink API 332
9.4.1 Flink API關(guān)鍵概念 333
9.4.2 SQL/Table API 335
9.4.3 DataStream API 338
9.4.4 ProcessFunction 340
9.5 Flink監(jiān)控 341
9.5.1 Flink監(jiān)控處理的問題 342
9.5.2 Flink監(jiān)控內(nèi)容 342
9.5.3 Flink監(jiān)控工具 343
9.5.4 Flink Metrics工具介紹 344
9.5.5 Flink Dashboard工具介紹 346
9.6 Flink應(yīng)用場景 347
9.7 基于Flink的股票交易模擬綜合實(shí)踐 349
9.7.1 案例背景 349
9.7.2 數(shù)據(jù)說明 349
9.7.3 編程實(shí)踐 350
本章小結(jié) 358
第10章 分布式協(xié)作服務(wù)ZooKeeper
10.1 ZooKeeper概述 360
10.2 ZooKeeper基礎(chǔ) 360
10.2.1 集群角色 361
10.2.2 數(shù)據(jù)節(jié)點(diǎn) 362
10.2.3 會話 364
10.2.4 事件監(jiān)聽器 364
10.3 ZAB協(xié)議 365
10.3.1 工作過程概述 365
10.3.2 崩潰恢復(fù) 366
10.3.3 消息廣播 367
10.3.4 協(xié)議描述 367
10.4 ZooKeeper 命令 370
10.4.1 創(chuàng)建Znode 370
10.4.2 獲取數(shù)據(jù) 371
10.4.3 更新數(shù)據(jù) 373
10.4.4 列出子項(xiàng) 373
10.4.5 檢查狀態(tài) 374
10.4.6 刪除Znode 374
10.5 ZooKeeper典型應(yīng)用場景 375
10.5.1 統(tǒng)一命名服務(wù) 375
10.5.2 數(shù)據(jù)發(fā)布/訂閱 376
10.5.3 分布式協(xié)調(diào)/通知 376
10.5.4 負(fù)載均衡 377
10.5.5 分布式鎖 378
10.5.6 集群管理 380
10.5.7 Master選舉 381
10.6 ZooKeeper在大型分布式系統(tǒng)中的應(yīng)用 382
10.6.1 Hadoop 382
10.6.2 HBase 383
10.6.3 Kafka 384
本章小結(jié) 386
第11章 相關(guān)技術(shù)擴(kuò)展
11.1 YARN 388
11.1.1 YARN概述 388
11.1.2 YARN架構(gòu) 388
11.1.3 YARN工作流程 390
11.1.4 YARN常用命令 392
11.2 Flume 393
11.2.1 Flume 概述 393
11.2.2 Flume架構(gòu) 394
11.2.3 Flume的Source 397
11.2.4 Flume的Channel 398
11.2.5 Flume的Sink 398
11.2.6 配置Flume Agent 398
11.3 Kafka 400
11.3.1 Kafka概述 400
11.3.2 Kafka架構(gòu) 401
11.3.3 Kafka生產(chǎn)者 403
11.3.4 Kafka消費(fèi)者 407
11.4 TiDB 410
11.4.1 TiDB概述 410
11.4.2 TiDB架構(gòu) 411
11.5 Loki 416
11.5.1 Loki概述 416
11.5.2 Loki架構(gòu) 417
11.5.3 Loki的安裝及配置 418
11.5.4 Loki基本功能 418
11.5.5 Loki高級功能 423
11.6 Milvus 426
11.6.1 Milvus概述 426
11.6.2 關(guān)鍵概念 426
11.6.3 Milvus架構(gòu) 428
11.6.4 Milvus部署模式 431
11.6.5 Milvus應(yīng)用示例 431
本章小結(jié) 434
第12章 綜合實(shí)踐—日志采集分析系統(tǒng)
12.1 系統(tǒng)功能概述 436
12.1.1 Web應(yīng)用 436
12.1.2 性能測試 436
12.1.3 日志采集與存儲 437
12.1.4 日志分析 438
12.2 系統(tǒng)部署概述 439
12.3 系統(tǒng)構(gòu)建說明 440
12.3.1 構(gòu)建Web應(yīng)用 440
12.3.2 實(shí)現(xiàn)日志采集和存儲功能 443
12.3.3 構(gòu)建日志分析功能 449
本章小結(jié) 453