大數據技術實踐教程————基於華為ECS、MRS平臺
辛宇、錢江波、陳葉芳、羅思惠
- 出版商: 清華大學
- 出版日期: 2026-06-01
- 定價: $419
- 售價: $418
- 語言: 簡體中文
- ISBN: 7302718830
- ISBN-13: 9787302718833
-
相關分類:
大數據 Big-data
下單後立即進貨 (約4週~6週)
商品描述
作者簡介
目錄大綱
目錄
第一篇Hadoop篇
第1章Hadoop3
1.1任務目的和要求3
1.2Java環境的搭建3
1.2.1Ubuntu Java環境的安裝3
1.2.2壓縮包安裝Java4
1.3Hadoop偽分布式安裝5
1.3.1華為ECS的配置5
1.3.2Hadoop ECS的安裝9
1.4華為雲MRS的配置12
1.4.1購買及配置MRS服務12
1.4.2配置MRS集群客戶端13
1.5Hadoop案例15
1.5.1ECS配置Yarn15
1.5.2Hadoop Shell 命令17
1.5.3目錄操作17
1.5.4文件操作18
1.6Hadoop編程實踐19
1.6.1hdfs讀寫編程19
1.6.2MapReduce編程23
1.7本章小結26
1.8實驗任務27
1.8.1實驗一: 多ECS節點Hadoop分布式集群搭建實驗27
1.8.2實驗二: 訪問MRS集群上托管的開源組件Web頁面27
1.8.3實驗三: 華為MRS訪問與管理27
第2章HDFS28
2.1任務目的和要求28
2.2HDFS配置28
2.3HDFS操作實踐29
2.3.1HDFS的基本命令29
2.3.2權限和訪問控制31
2.4HDFS MRS實踐33
2.5HDFS編程實踐37
2.5.1HDFS讀文件37
2.5.2HDFS寫文件40
2.6本章小結44
2.7實驗任務44
2.7.1實驗一: HDFS的基本操作實驗44
2.7.2實驗二: HDFS 數據合並與權限管理44
2.7.3實驗三: HDFS 數據備份與恢復實驗44
第3章Yarn45
3.1任務目的和要求45
3.2Yarn的配置與啟動45
3.3Yarn操作實踐48
3.3.1Yarn MRS的配置48
3.3.2Yarn命令行的操作51
3.4Yarn編程實踐53
3.4.1應用程序監控54
3.4.2應用程序管理57
3.4.3資源信息獲取61
3.5本章小結64
3.6實驗任務64
3.6.1實驗一: Yarn的基本操作64
3.6.2實驗二: Yarn 調度與作業優先級實驗64
3.6.3實驗三: Hadoop資源管理實驗64
第4章MapReduce65
4.1任務目的和要求65
4.2MapReduce開發環境的搭建65
4.2.1Maven的安裝65
4.2.2Maven創建HelloWorld67
4.3MapReduce編程實踐71
4.3.1Mapper函數編程71
4.3.2Reducer函數編程72
4.3.3Combiner函數編程75
4.3.4Writable接口編程76
4.3.5WritableComparable接口編程77
4.3.6InputFormat和OutputFormat接口編程79
4.3.7Partitioner接口編程81
4.4本章小結82
4.5實驗任務82
4.5.1實驗一: 詞頻統計實驗82
4.5.2實驗二: 日誌分析實驗82
4.5.3實驗三: 客戶數據分析實驗82
第5章Hive83
5.1任務目的和要求83
5.2Hive的安裝83
5.2.1Hive的配置83
5.2.2MySQL的安裝85
5.2.3MRS平臺使用Hive86
5.3Hive操作案例89
5.3.1數據庫管理89
5.3.2查詢語言92
5.3.3內部表和外部表94
5.3.4分區表97
5.3.5分桶表98
5.4Hive編程實踐98
5.4.1數據庫的創建98
5.4.2數據庫的刪除99
5.4.3SELECT編程100
5.4.4ORDER BY編程101
5.4.5GROUP BY編程102
5.5本章小結103
5.6實驗任務104
5.6.1實驗一: 銷售數據分析104
5.6.2實驗二: 用戶行為分析104
5.6.3實驗三: 日誌數據處理104
第二篇Spark篇
第6章Spark RDD107
6.1任務目的和要求107
6.2Spark的安裝107
6.3MRS平臺Spark的應用108
6.4Spark操作案例110
6.4.1RDD的常用操作111
6.4.2RDD持久化116
6.4.3RDD分區策略117
6.5Spark RDD編程實踐119
6.6Spark RDD的MRS平臺實踐121
6.7本章小結126
6.8實驗任務126
6.8.1實驗一: 統計文本文件中的字數126
6.8.2實驗二: 過濾日誌文件中的錯誤信息126
6.8.3實驗三: 計算數值數據的平均值126
第7章Spark SQL127
7.1任務目的和要求127
7.2MRS平臺Spark SQL應用127
7.2.1創建DWS集群128
7.2.2DWS操作129
7.2.3MRS連接DWS131
7.3Spark SQL操作案例134
7.3.1基本操作136
7.3.2聚合操作139
7.4Spark SQL編程實踐140
7.4.1Dataframe的Table API編程140
7.4.2Dataframe的SQL接口編程142
7.5本章小結145
7.6實驗任務145
7.6.1實驗一: 客戶行為數據預處理實驗145
7.6.2實驗二: 金融數據預處理實驗145
7.6.3實驗三: 社交網絡數據預處理實驗145
第三篇流 處 理 篇
第8章Spark Streaming149
8.1任務目的和要求149
8.2Spark Streaming操作案例149
8.2.1DStream Transform操作149
8.2.2DStream Action操作150
8.2.3有狀態計算152
8.3MRS平臺Spark Streaming154
8.4本章小結166
8.5實驗任務166
8.5.1實驗一: 實時數據處理166
8.5.2實驗二: 實時數據分析166
8.5.3實驗三: 實時ETL處理166第9章Flink167
9.1任務目的和要求167
9.2Flink的安裝167
9.3在MRS中使用Flink170
9.4Flink有界數據流運算172
9.4.1FlinkWordCount編程172
9.4.2DataSet API有界數據流處理176
9.4.3Table API有界數據流處理177
9.4.4SQL有界數據流處理179
9.5Flink無界數據流運算180
9.5.1FlinkStreamWordCount編程180
9.5.2DataStream API無界數據流處理183
9.5.3SQL無界數據流處理185
9.5.4Table API無界數據流處理186
9.6Flink鍵控窗口函數編程187
9.6.1WindowAll全局窗口187
9.6.2keyBy分區189
9.6.3Window時間分窗191
9.7Flink底層函數運算192
9.7.1ProcessFunction計數器192
9.7.2RichFunction累加器193
9.8多流處理195
9.9本章小結196
9.10實驗任務197
9.10.1實驗一: 實時數據處理與聚合197
9.10.2實驗二: 實時事件檢測與報警197
9.10.3實驗三: 實時數據關聯與數據處理197
第四篇NoSQL數據庫篇
第10章HBase201
10.1任務目的和要求201
10.2HBase的安裝201
10.2.1HBase偽分布式模式配置202
10.2.2MRS平臺使用HBase204
10.2.3HBase數據遷移到MRS205
10.3HBase Shell操作案例209
10.3.1HBase建表209
10.3.2HBase的基本操作210
10.4HBase編程實踐211
10.4.1HBase基本CRUD操作211
10.4.2HBase Java API實踐217
10.5本章小結222
10.6實驗任務222
10.6.1實驗一: HBase創建數據庫與查看表結構實驗222
10.6.2實驗二: 設計HBase表並提供基本CRUD實驗222
10.6.3實驗三: 設計HBase表Rowkey時間匯總實驗223
第11章Redis224
11.1任務目的和要求224
11.2Redis的安裝224
11.2.1Redis安裝包的下載224
11.2.2Redis客戶端連接測試225
11.3Redis案例226
11.3.1鍵值操作226
11.3.2字符串操作227
11.3.3哈希表操作228
11.3.4列表操作229
11.3.5集合操作229
11.3.6發布/訂閱操作231
11.4Redis編程實踐232
11.4.1Python客戶端連接232
11.4.2Java客戶端連接232
11.4.3使用set和get命令緩存數據234
11.4.4通過expire為緩存設置過期時間234
11.4.5通過lpush和rpop實現生產者和消費者模式235
11.5本章小結236
11.6實驗任務237
11.6.1實驗一: 使用Redis實現簡單的用戶會話管理237
11.6.2實驗二: 使用Redis實現簡單的消息隊列237
11.6.3實驗三: 使用Redis有序集合實現排行榜237
第12章MongoDB238
12.1任務目的和要求238
12.2MongoDB的安裝238
12.3MongoDB Shell操作案例240
12.3.1MongoDB連接240
12.3.2常用操作命令240
12.3.3數據庫與集合管理241
12.3.4文檔管理243
12.4MongoDB編程實踐249
12.5本章小結254
12.6實驗任務255
12.6.1實驗一: 在線商店的訂單管理255
12.6.2實驗二: 社交媒體應用255
12.6.3實驗三: 物聯網數據存儲與分析255
第13章InfluxDB256
13.1任務目的和要求256
13.2InfluxDB的安裝256
13.2.1InfluxDB本地安裝257
13.2.2InfluxDB的配置257
13.3InfluxDB Shell操作案例258
13.3.1連續查詢258
13.3.2實時數據操作260
13.3.3CQ管理263
13.4InfluxDB編程實踐264
13.5本章小結267
13.6實驗任務267
13.6.1實驗一: 環境監測數據存儲與查詢267
13.6.2實驗二: 系統性能監控與報警實驗267
13.6.3實驗三: 時序數據分析與可視化實驗267
第14章Neo4j268
14.1任務目的和要求268
14.2Neo4j的安裝268
14.3Neo4j操作案例269
14.3.1數據導入269
14.3.2Cypher數據操作270
14.3.3Cypher數據查詢275
14.4Neo4j編程實踐279
14.5本章小結282
14.6實驗任務282
14.6.1實驗一: 社交網絡分析實驗282
14.6.2實驗二: 知識圖譜構建實驗282
14.6.3實驗三: 推薦系統實驗282
第五篇ETL工具篇
第15章Flume285
15.1任務目的和要求285
15.2Flume的安裝部署285
15.3Flume操作案例286
15.3.1監控端口數據286
15.3.2實時監控單個追加文件287
15.4MRS平臺Flume應用289
15.4.1訪問Flume界面289
15.4.2Flume采集節點日誌290
15.5Flume編程實踐292
15.5.1自定義Source292
15.5.2自定義Sink294
15.6本章小結296
15.7實驗任務296
15.7.1實驗一: 使用 Flume 從日誌文件收集數據296
15.7.2實驗二: 使用 Flume 將數據從 Kafka 傳輸到 HDFS297
15.7.3實驗三: 使用Flume實現實時數據收集和處理297
第六篇消息隊列篇
第16章RabbitMQ301
16.1任務目的和要求301
16.2RabbitMQ的安裝301
16.3RabbitMQ操作案例304
16.3.1創建和綁定交換機304
16.3.2發送和接收消息304
16.4RabbitMQ編程實踐307
16.4.1基本消息模式308
16.4.2扇出模式309
16.4.3工作隊列模式311
16.4.4發布/訂閱模式312
16.4.5主題模式314
16.5本章小結316
16.6實驗任務316
16.6.1實驗一: 實時數據處理實驗316
16.6.2實驗二: 微服務通信實驗316
16.6.3實驗三: 任務調度與工作隊列實驗316
第17章Kafka317
17.1任務目的和要求317
17.2Kafka的安裝317
17.3MRS平臺Kafka應用318
17.3.1訪問Kafka UI318
17.3.2查看Broker319
17.3.3查看Consumer Group319
17.3.4Kafka客戶端320
17.3.5MRS Topic管理321
17.4Kafka操作案例322
17.4.1Topic管理322
17.4.2單節點多代理配置323
17.4.3啟動多個代理324
17.4.4生產者/消費者324
17.5Kafka編程實踐325
17.5.1Kafka生產者示例325
17.5.2Kafka消費者組示例327
17.5.3Kafka Python編程329
17.6本章小結331
17.7實驗任務331
17.7.1實驗一: 實時日誌收集與分析331
17.7.2實驗二: 用戶行為追蹤與分析331
17.7.3實驗三: 分布式事件驅動架構332
第七篇分布式協調服務篇
第18章ZooKeeper335
18.1任務目的和要求335
18.2ZooKeeper的安裝335
18.3MRS平臺ZooKeeper應用336
18.3.1訪問ZooKeeper界面336
18.3.2使用ZooKeeper客戶端337
18.3.3配置ZNode ACL339
18.4ZooKeeper操作案例340
18.4.1ZooKeeper常用命令340
18.4.2ZooKeeper四字命令344
18.5ZooKeeper編程實踐345
18.5.1ZooKeeper Java API編程345
18.5.2ZooKeeper Curator連接347
18.5.3ZooKeeperwatcher事件348
18.6本章小結350
18.7實驗任務350
18.7.1實驗一: ZooKeeper分布式鎖實驗350
18.7.2實驗二: ZooKeeper配置管理實驗350
18.7.3實驗三: 服務發現與註冊實驗350







