Hadoop大數據技術開發實戰

Hadoop大數據技術開發實戰

《Hadoop大數據技術開發實戰》是2019年10月清華大學出版社出版的圖書,作者是張偉洋。

基本介紹

  • 中文名:Hadoop大數據技術開發實戰
  • 作者:張偉洋
  • 出版社:清華大學出版社
  • 出版時間:2019年10月
  • 定價:99 元
  • ISBN:9787302534020
內容簡介,圖書目錄,

內容簡介

本書以Hadoop及其周框線架為主線,介紹了整個Hadoop生態系統主流的大數據開發技術。全書共16章,第1章講解了VMware中CentOS 7作業系統的安裝;第2章講解了大數據開發之前對作業系統集群環境的配置;第3~16章講解了Hadoop生態系統各框架HDFS、MapReduce、YARN、ZooKeeper、HBase、Hive、Sqoop和數據實時處理系統Flume、Kafka、Storm、Spark以及分散式搜尋系統Elasticsearch等的基礎知識、架構原理、集群環境搭建,同時包括常用的Shell命令、API操作、源碼剖析,並通過實際案例加深對各個框架的理解與套用。通過閱讀本書,讀者即使沒有任何大數據基礎,也可以對照書中的步驟成功搭建屬於自己的大數據集群並獨立完成項目開發。
本書可作為Hadoop新手入門的指導書,也可作為大數據開發人員的隨身手冊以及大數據從業者的參考用書。

圖書目錄

第1章 VMware中安裝CentOS 7 1
1.1 下載CENTOS 7鏡像檔案 1
1.2 新建虛擬機 5
1.3 安裝作業系統 9
第2章 CentOS 7集群環境配置 16
2.1 系統環境配置 16
2.1.1 新建用戶 17
2.1.2 修改用戶許可權 17
2.1.3 關閉防火牆 17
2.1.4 設定固定IP 18
2.1.5 修改主機名 22
2.1.6 新建資源 23
2.2 安裝JDK 23
2.3 克隆虛擬機 25
2.4 配置主機IP映射 29
第3章 Hadoop 31
3.1 HADOOP簡介 31
3.1.1 Hadoop生態系統架構 32
3.1.2 Hadoop 1.x與2.x的架構對比 33
3.2 YARN基本架構及組件 34
3.3 YARN工作流程 37
3.4 配置集群各節點SSH無密鑰登錄 38
3.4.1 無密鑰登錄原理 38
3.4.2 無密鑰登錄操作步驟 39
3.5 搭建HADOOP 2.X分散式集群 41
第4章 HDFS 48
4.1 HDFS簡介 48
4.1.1 設計目標 49
4.1.2 總體架構 49
4.1.3 主要組件 50
4.1.4 檔案讀寫 53
4.2 HDFS命令行操作 54
4.3 HDFS WEB界面操作 57
4.4 HDFS JAVA API操作 59
4.4.1 讀取數據 59
4.4.2 創建 61
4.4.3 創建檔案 62
4.4.4 刪除檔案 63
4.4.5 遍歷檔案和 64
4.4.6 獲取檔案或的元數據 65
4.4.7 上傳本地檔案 66
4.4.8 下載檔案到本地 66
第5章 MapReduce 68
5.1 MAPREDUCE簡介 68
5.1.1 設計思想 69
5.1.2 任務流程 70
5.1.3 工作原理 71
5.2 MAPREDUCE程式編寫步驟 74
5.3 案例分析:單詞計數 76
5.4 案例分析:數據去重 82
5.5 案例分析:求平均分 86
5.6 案例分析:二次排序 89
5.7 使用MRUNIT測試MAPREDUCE程式 97
第6章 ZooKeeper 100
6.1 ZOOKEEPER簡介 100
6.1.1 套用場景 101
6.1.2 架構原理 101
6.1.3 數據模型 102
6.1.4 節點類型 103
6.1.5 Watcher機制 103
6.1.6 分散式鎖 105
6.2 ZOOKEEPER安裝配置 106
6.2.1 單機模式 106
6.2.2 偽分布模式 108
6.2.3 集群模式 109
6.3 ZOOKEEPER命令行操作 112
6.4 ZOOKEEPER JAVA API操作 114
6.4.1 創建Java工程 114
6.4.2 創建節點 115
6.4.3 修改數據 118
6.4.4 獲取數據 118
6.4.5 刪除節點 123
6.5 案例分析:監聽伺服器動態上下線 124
第7章 HDFS與YARN HA 129
7.1 HDFS HA搭建 129
7.1.1 架構原理 130
7.1.2 搭建步驟 131
7.1.3 結合ZooKeeper進行HDFS自動故障轉移 137
7.2 YARN HA搭建 142
7.2.1 架構原理 142
7.2.2 搭建步驟 142
第8章 HBase 147
8.1 什麼是HBASE 147
8.2 HBASE基本結構 148
8.3 HBASE數據模型 149
8.4 HBASE集群架構 151
8.5 HBASE安裝配置 153
8.5.1 單機模式 153
8.5.2 偽分布模式 155
8.5.3 集群模式 156
8.6 HBASE SHELL命令操作 160
8.7 HBASE JAVA API操作 164
8.7.1 創建Java工程 164
8.7.2 創建表 164
8.7.3 添加數據 166
8.7.4 查詢數據 168
8.7.5 刪除數據 169
8.8 HBASE過濾器 170
8.9 案例分析:HBASE MAPREDUCE數據轉移 174
8.9.1 HBase不同表間數據轉移 174
8.9.2 HDFS數據轉移至HBase 180
8.10 案例分析:HBASE數據備份與恢復 183
第9章 Hive 185
9.1 什麼是HIVE 185
9.1.1 數據單元 186
9.1.2 數據類型 187
9.2 HIVE架構體系 189
9.3 HIVE三種運行模式 190
9.4 HIVE安裝配置 191
9.4.1 內嵌模式 192
9.4.2 本地模式 195
9.4.3 遠程模式 198
9.5 HIVE常見屬性配置 200
9.6 BEELINE CLI的使用 201
9.7 HIVE資料庫操作 205
9.8 HIVE表操作 208
9.8.1 內部表 209
9.8.2 外部表 213
9.8.3 分區表 215
9.8.4 分桶表 219
9.9 HIVE查詢 223
9.9.1 SELECT子句查詢 224
9.9.2 JOIN連線查詢 230
9.10 其他HIVE命令 233
9.11 HIVE元數據表結構分析 235
9.12 HIVE自定義函式 237
9.13 HIVE JDBC操作 239
9.14 案例分析:HIVE與HBASE整合 242
9.15 案例分析:HIVE分析搜狗用戶搜尋日誌 246
第10章 Sqoop 251
10.1 什麼是SQOOP 251
10.1.1 Sqoop基本架構 252
10.1.2 Sqoop開發流程 252
10.2 使用SQOOP 253
10.3 數據導入工具 254
10.4 數據導出工具 259
10.5 SQOOP安裝與配置 261
10.6 案例分析:將MYSQL表數據導入到HDFS中 262
10.7 案例分析:將HDFS中的數據導出到MYSQL中 263
10.8 案例分析:將MYSQL表數據導入到HBASE中 264
第11章 Kafka 267
11.1 什麼是KAFKA 267
11.2 KAFKA架構 268
11.3 主題與分區 269
11.4 分區副本 271
11.5 消費者組 273
11.6 數據存儲機制 274
11.7 集群環境搭建 276
11.8 命令行操作 278
11.8.1 創建主題 278
11.8.2 查詢主題 279
11.8.3 創建生產者 280
11.8.4 創建消費者 280
11.9 JAVA API操作 281
11.9.1 創建Java工程 281
11.9.2 創建生產者 281
11.9.3 創建消費者 283
11.9.4 運行程式 285
11.10 案例分析:KAFKA生產者攔截器 287
第12章 Flume 294
12.1 什麼是FLUME 294
12.2 架構原理 295
12.2.1 單節點架構 295
12.2.2 組件介紹 296
12.2.3 多節點架構 297
12.3 安裝與簡單使用 299
12.4 案例分析:日誌監控(一) 302
12.5 案例分析:日誌監控(二) 304
12.6 攔截器 306
12.6.1 內置攔截器 307
12.6.2 自定義攔截器 310
12.7 選擇器 313
12.8 案例分析:攔截器和選擇器的套用 315
12.9 案例分析:FLUME與KAFKA整合 319
第13章 Storm 322
13.1 什麼是STORM 322
13.2 STORM TOPOLOGY 323
13.3 STORM集群架構 324
13.4 STORM流分組 326
13.5 STORM集群環境搭建 329
13.6 案例分析:單詞計數 332
13.6.1 設計思路 332
13.6.2 代碼編寫 333
13.6.3 程式運行 339
13.7 案例分析:STORM與KAFKA整合 341
第14章 Elasticsearch 347
14.1 什麼是ELASTICSEARCH 347
14.2 基本概念 348
14.2.1 索引、類型和文檔 348
14.2.2 分片和副本 348
14.2.3 路由 349
14.3 集群架構 350
14.4 集群環境搭建 352
14.5 KIBANA安裝 355
14.6 REST API 357
14.6.1 集群狀態API 357
14.6.2 索引API 358
14.6.3 文檔API 360
14.6.4 搜尋API 363
14.6.5 Query DSL 365
14.7 HEAD外掛程式安裝 371
14.8 JAVA API操作:員工信息 375
第15章 Scala 379
15.1 什麼是SCALA 379
15.2 安裝SCALA 380
15.2.1 Windows中安裝Scala 380
15.2.2 CentOS 7中安裝Scala 381
15.3 SCALA基礎 382
15.3.1 變數聲明 382
15.3.2 數據類型 383
15.3.3 表達式 385
15.3.4 循環 386
15.3.5 方法與函式 388
15.4 集合 391
15.4.1 數組 391
15.4.2 List 393
15.4.3 Map映射 394
15.4.4 元組 396
15.4.5 Set 396
15.5 類和對象 398
15.5.1 類的定義 398
15.5.2 單例對象 399
15.5.3 伴生對象 399
15.5.4 get和set方法 400
15.5.5 構造器 402
15.6 抽象類和特質 404
15.6.1 抽象類 404
15.6.2 特質 406
15.7 使用ECLIPSE創建SCALA項目 408
15.7.1 安裝Scala for Eclipse IDE 408
15.7.2 創建Scala項目 409
15.8 使用INTELLIJ IDEA創建SCALA項目 410
15.8.1 IDEA中安裝Scala外掛程式 410
15.8.2 創建Scala項目 414
第16章 Spark 416
16.1 SPARK概述 416
16.2 SPARK主要組件 417
16.3 SPARK運行時架構 419
16.3.1 Spark Standalone模式 419
16.3.2 Spark On YARN模式 421
16.4 SPARK集群環境搭建 423
16.4.1 Spark Standalone模式 423
16.4.2 Spark On YARN模式 425
16.5 SPARK HA搭建 426
16.6 SPARK應用程式的提交 430
16.7 SPARK SHELL的使用 433
16.8 SPARK RDD 435
16.8.1 創建RDD 435
16.8.2 RDD運算元 436
16.9 案例分析:使用SPARK RDD實現單詞計數 441
16.10 SPARK SQL 448
16.10.1 DataFrame和Dataset 448
16.10.2 Spark SQL基本使用 449
16.11 案例分析:使用SPARK SQL實現單詞計數 452
16.12 案例分析:SPARK SQL與HIVE整合 454
16.13 案例分析:SPARK SQL讀寫MYSQL 457

相關詞條

熱門詞條

聯絡我們