Hadoop 3 大數據技術快速入門

牛搞

  • 出版商: 清華大學
  • 出版日期: 2021-09-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • 頁數: 245
  • 裝訂: 平裝
  • ISBN: 7302586462
  • ISBN-13: 9787302586463
  • 相關分類: Hadoop大數據 Big-data
  • 立即出貨

  • Hadoop 3 大數據技術快速入門-preview-1
  • Hadoop 3 大數據技術快速入門-preview-2
  • Hadoop 3 大數據技術快速入門-preview-3
Hadoop 3 大數據技術快速入門-preview-1

買這商品的人也買了...

商品描述

本書基於Hadoop 3.3.0,覆蓋Hadoop、HBase、Hive的核心概念、實踐應用、程序開發等方面的內容,幫你快速解決大數據是什麽和怎麽用的問題,書中還利用Docker來部署Hadoop分佈式集群,讓你同時學會4種流行的技術。 本書共9章,主要內容包括Hadoop概述、HDFS原理詳解、Yarn原理詳解、Hadoop系統配置、高可用Hadoop配置、HDFS編程、MapReduce編程、Hive實戰、HBase實戰。 本書從案例入手、通俗易懂,能使讀者在最短時間內迅速掌握Hadoop大數據技術。本書既適合Hadoop大數據初學者、大數據應用開發人員、大數據處理人員使用,也適合高等院校和培訓機構大數據相關專業的師生教學參考。

作者簡介

牛搞,軟件開發從業15年編程實戰經驗,流媒體技術專家,高性能服務器專家。
CSDN知名博主。
現為IOS、Adroid、C++高級培訓講師。
著有圖書《Android 9編程通俗演義》《Android 10 Kotlin編程通俗演義》。

目錄大綱

目錄
第1章  概述 1
1.1  什麽是大數據 1
1.1.1  大數據系統的定位 1
1.1.2  與傳統分佈式系統的區別 1
1.1.3  成功的大數據系統項目 2
1.2  Hadoop的原理 2
1.2.1  存儲與資源調度 2
1.2.2  計算框架原理 2
1.3  總結 5

第2章  HDFS原理詳解 6
2.1  主從節點架構 6
2.2  數據冗餘 7
2.3  fsimage與edits 8
2.4  SecondaryNameNode 9
2.5  HA 10
2.6  自動故障轉移 11
2.7  ZooKeeper 13
2.8  防腦裂 14
2.9  聯邦 15
2.10  總結 16

第3章  Yarn原理詳解 17
3.1  概述 17
3.2  作業調度策略 19
3.2.1  容量調度器 19
3.2.2  公平調度器 21
3.2.3  隊列其他事項 22
3.3  Yarn與MapReduce程序 22

第4章  配置Hadoop系統 24
4.1  Docker簡介 24
4.2  安裝Docker 25
4.2.1  Windows、macOS做宿主系統 25
4.2.2  Linux做宿主系統 26
4.2.3  測試Docker容器 30
4.3  創建Hadoop容器 32
4.4  配置獨立模式Hadoop 34
4.5  配置偽分佈Hadoop 37
4.5.1  安裝並配置SSH 37
4.5.2  安裝其他命令行程序 38
4.5.3  編輯core-site.xml 38
4.5.4  編輯hdfs-site.xml 39
4.5.5  編輯mapred-site.xml 40
4.5.6  編輯yarn-site.xml 40
4.5.7  編輯hadoop-env.sh 41
4.5.8  運行偽分佈式Hadoop 41
4.5.9  狀態監控 43
4.6  基於Dockerfile的偽分佈Hadoop 45
4.6.1  Dockerfile 45
4.6.2  構建Hadoop鏡像 46
4.6.3  運行容器 47
4.6.4  配置Hadoop 48
4.7  配置全分佈式Hadoop 49
4.7.1  組件部署架構 49
4.7.2  配置思路 50
4.7.3  修改配置文件 50
4.7.4  創建集群 51
4.7.5  啟動集群 53
4.8  Windows下運行Hadoop 55
4.8.1  配置獨立模式Hadoop 55
4.8.2  配置偽分佈式Hadoop 56
4.9  Yarn調度配置 60
4.9.1  容量調度器 61
4.9.2  公平調度器 63

第5章  配置高可用Hadoop 66
5.1  HDFS高可用 66
5.1.1  組件部署架構 66
5.1.2  修改配置文件 67
5.1.3  創建鏡像 70
5.1.4  創建HA HDFS集群 72
5.1.5  運行HA HDFS 73
5.1.6  測試HA HDFS 74
5.1.7  NameNode自動故障轉移 75
5.2  Yarn高可用 78

第6章  HDFS編程 81
6.1  安裝開發工具 81
6.1.1  安裝Git 81
6.1.2  安裝Maven 83
6.1.3  安裝VSCode 84
6.1.4  安裝VSCode插件 85
6.2  Native編程 87
6.2.1  創建HDFS客戶端項目 87
6.2.2  示例1:查看目錄狀態 91
6.2.3  添加依賴庫 92
6.2.4  運行程序 96
6.2.5  示例2:創建目錄和文件 97
6.2.6  示例3:讀取文件內容 99
6.2.7  示例4:上傳和下載文件 100
6.3  WebHDFS與HttpFS 101
6.3.1  WebHDFS 101
6.3.2  VSCode插件RestClient 103
6.3.3  HttpFS 104

第7章  MapReduce編程 106
7.1  準備測試環境與創建項目 106
7.2  添加MapReduce邏輯 107
7.2.1  添加Map類 108
7.2.2  添加Reduce類 109
7.3  創建Job 110
7.4  添加依賴庫 111
7.5  運行程序 112
7.6  查看運行日誌 114
7.7  在Hadoop中運行程序 116
7.8  Combiner 117
7.9  Mapper與Reducer數量 119
7.10  實現SQL語句 120
7.10.1  簡單查詢 120
7.10.2  排序 127
7.10.3  復雜排序 129
7.10.4  分區 132
7.10.5  組合 134
7.10.6  總結 135
7.11  實現SQL JOIN 136
7.11.1  INNER JOIN 136
7.11.2  MapReduce實現JOIN 137
7.11.3  Mapper JOIN 142
7.11.4  DistributedCache 146
7.12  Counter 148
7.13  其他組件 149
7.14  升級版的WordCount 150
7.15  分佈式k-means 154
7.15.1  Mapper類 155
7.15.2  Reducer類 156
7.15.3  執行任務的方法 158
7.15.4  輔助類 159
7.15.5  運行 162
7.15.6  MapReduce深入剖析 162

第8章  Hive 166
8.1  Hive的設計架構 166
8.2  運行架構 167
8.3  安裝配置Hive3 168
8.3.1  安裝依賴軟件 168
8.3.2  創建Hive鏡像Dockerfile 170
8.3.3  創建docker-compose.yml 171
8.3.4  Hadoop配置調整 172
8.3.5  為Hive準備數據庫 172
8.4  運行Hive3 173
8.5  其他運行方式 175
8.5.1  MetaStore單獨運行 175
8.5.2  嵌入Meta數據庫 176
8.5.3  HiveServer2與beeline合體 176
8.6  Hive數據管理 176
8.6.1  基本操作 177
8.6.2  Hive表 178
8.6.3  數據傾斜 189
8.7  Hive查詢優化 190
8.8  索引 192
8.9  HCatalog 192
8.10  Hive編程 194
8.10.1  JDBC操作Hive 194
8.10.2  自定義函數 196
8.11  總結 208

第9章  HBase 209
9.1  什麽是HBase 209
9.2  HBase架構 210
9.3  安裝與配置 211
9.3.1  獨立模式運行 211
9.3.2  偽分佈模式 215
9.3.3  全分佈模式 216
9.4  基本數據操作 218
9.4.1  表管理 218
9.4.2  添加數據 220
9.4.3  修改數據 221
9.4.4  獲取數據 221
9.4.5  刪除數據 223
9.5  HBase設計原理 224
9.5.1  Region 224
9.5.2  定位數據 225
9.5.3  數據存儲模型 226
9.5.4  快速寫的秘密 227
9.5.5  快速讀的秘密 228
9.5.6  合並StoreFile 229
9.5.7  Region拆分與合並 229
9.5.8  故障恢復 230
9.5.9  總結 231
9.6  HBase應用編程 232
9.6.1  Java API訪問HBase 232
9.6.2  使用掃描過濾器 238
9.6.3  MapReduce訪問HBase表 239
9.7  總結 245

後記 246