《Hadoop大數據開發實戰》是2019年10月人民郵電出版社出版的圖書,作者是楊力。
基本介紹
- 書名:Hadoop大數據開發實戰
- 作者:楊力
- 出版社:人民郵電出版社
- 出版時間:2019年10月
- 頁數:226 頁
- 定價:49.8 元
- 開本:16 開
- 裝幀:平裝
- ISBN:9787115502179
內容簡介,圖書目錄,
內容簡介
本書將大數據技術生態圈主流技術框架的套用與發展、搭建Hadoop大數據分散式系統集群平台、大數據分散式檔案系統HDFS(Hadoop Distributed File System)、大數據分散式並行計算框架MapReduce、大數據汽車銷售數據統計分析項目5大模組分為11章內容進行闡述。具體分布情況如下:第1章是大數據概論,介紹大數據的發展背景及基本概念;第2章是搭建Hadoop分散式集群;第3~6章是HDFS分散式檔案系統入門、HDFS接口、HDFS的運行機制、Hadoop I/O流操作;第7~10章是初識MapReduce編程模型、MapReduce套用編程開發、MapReduce編程案例、MapReduce運行機制與YARN平台;第11章是汽車銷售數據統計分析項目實戰。本書將理論與實踐相結合,介紹了大數據的核心技術,並通過介紹一個企業的開發項目,深入講解大數據技術在實際工作中的套用。
本書是為所有熱愛大數據、打算從事大數據相關工作的讀者而編寫的,適合有Java編程基礎的學習者參考使用,也適合作為高等院校、培訓機構的大數據技術教材。
圖書目錄
第 1章 大數據概論 1
1.1 大數據的學習基礎 1
1.2 大數據的背景 2
1.3 對大數據的不同認識 2
1.3.1 資深編程者眼中的大數據 2
1.3.2 行銷者和學者眼中的大數據 3
1.3.3 商家看大數據 4
1.4 大數據的行業案例 4
1.4.1 電子地圖 4
1.4.2 電子商務——用戶畫像 5
1.5 大數據的基本概念 6
1.5.1 兩個核心 6
1.5.2 分散式存儲 6
1.5.3 分散式計算 7
1.6 大數據技術生態圈 7
本章總結 8
本章習題 8
第 2章 搭建Hadoop分散式集群 9
2.1 雲平台 9
2.1.1 了解雲平台 9
2.1.2 安裝VMware軟體 9
2.2 安裝CentOS 6 10
2.2.1 安裝CentOS 6 10
2.2.2 安裝中的關鍵問題 15
2.2.3 克隆HadoopSlave和HadoopSlave1 16
2.2.4 安裝SSH客戶端傳輸軟體 18
2.2.5 安裝Xshell 20
2.3 Linux系統配置 23
2.4 Hadoop的配置部署 39
本章總結 47
本章習題 47
第3章 HDFS入門 48
3.1 Hadoop分散式檔案系統HDFS 48
3.1.1 認識HDFS 48
3.1.2 HDFS的優勢 49
3.1.3 HDFS局限性 50
3.1.4 HDFS特性 51
3.2 HDFS核心設計 52
3.2.1 數據塊 53
3.2.2 數據塊複製 53
3.2.3 數據塊副本的存放策略 54
3.2.4 機架感知 55
3.2.5 數據塊的備份數 56
3.2.6 安全模式 56
3.2.7 負載均衡 57
3.2.8 心跳機制 60
3.3 HDFS體系結構 60
3.3.1 主從架構 61
3.3.2 核心組件功能 61
3.3.3 數據塊損壞處理 63
本章總結 64
本章習題 64
第4章 HDFS接口 65
4.1 HDFS命令行接口 65
4.2 HDFS Java接口 67
4.2.1 在Linux虛擬機中安裝Eclipse 68
4.2.2 從Hadoop URL讀取數據 69
4.2.3 使用FileSystem讀取檔案 70
4.2.4 FSDataInputStream對象隨機讀取 71
4.2.5 使用FileSystem寫入數據 72
4.2.6 FSDataOutputStream對象批量寫入 73
4.2.7 查詢檔案狀態FileStatus 74
4.2.8 創建 75
4.2.9 刪除檔案與 76
本章總結 77
本章習題 77
第5章 HDFS的運行機制 78
5.1 HDFS中數據流的讀寫 78
5.1.1 RPC流程 78
5.1.2 RPC實現模型 79
5.1.3 RPC Client主要流程 81
5.1.4 RPC Server實現模型 82
5.1.5 檔案讀取 83
5.1.6 檔案寫入 84
5.2 HA機制 85
5.2.1 HDFS的HA機制 85
5.2.2 集群節點任務規劃 87
5.2.3 初識ZooKeeper 87
5.2.4 安裝部署ZooKeeper 89
5.2.5 格式化ZooKeeper集群 93
5.2.6 配置Hadoop 94
5.2.7 啟動JournalNode共享存儲集群 99
5.2.8 格式化ActiveNameNode 100
5.2.9 啟動ZooKeeperFailoverController 101
5.2.10 啟動ActiveNameNode 101
5.2.11 格式化StandbyNameNode 102
5.2.12 啟動所有DataNode節點 102
5.2.13 驗證HA的故障自動轉移 103
5.3 Federation機制 105
5.3.1 初始HDFS Federation機制 105
5.3.2 HDFS Federation架構原理 106
本章總結 107
本章習題 107
第6章 Hadoop I/O流操作 108
6.1 數據完整性 108
6.1.1 數據發生錯誤 108
6.1.2 數據的檢測 109
6.1.3 數據完整性機制 109
6.2 壓縮 111
6.2.1 壓縮格式 111
6.2.2 Hadoop中對壓縮格式的實現Codec 111
6.2.3 壓縮格式是否支持切分 114
6.3 序列化 114
6.3.1 序列化簡介 114
6.3.2 反序列化 115
6.3.3 序列化的分散式套用 115
6.3.4 初識Hadoop序列化 115
6.3.5 Hadoop序列化實現 116
6.3.6 接口Comparable & Comparator與WritableComparable & WritableComparator 117
6.3.7 Writable類 123
6.4 基於檔案的數據結構SequenceFile 125
本章總結 127
本章習題 127
第7章 初識MapReduce編程模型 128
7.1 MapReduce編程框架 128
7.1.1 函式式編程模型 128
7.1.2 MapReduce編程模型概念 129
7.1.3 MapReduce的設計目標 130
7.2 WordCount編程實例 130
7.2.1 案例需求 130
7.2.2 搭建開發環境Eclipse 131
7.2.3 代碼實現 132
7.2.4 代碼測試 135
7.2.5 案例剖析 139
7.3 Hadoop MapReduce架構 141
7.3.1 Hadoop MapReduce架構的基本概念 141
7.3.2 MapReduce架構核心組件 142
本章總結 144
本章習題 144
第8章 MapReduce套用編程開發 145
8.1 MapReduce編程開發 145
8.1.1 設計思路 145
8.1.2 搜尋引擎數據處理實戰 147
8.2 MapReduce在集群上的運作 152
8.2.1 打包作業 152
8.2.2 啟動作業 154
8.2.3 通過WebUI查看Job狀態 154
8.3 MapReduce的類型與格式 155
8.3.1 combiner函式 155
8.3.2 MapReduce框架Partitioner分區方法 157
8.3.3 MapReduce輸入格式 158
本章總結 166
本章習題 166
第9章 MapReduce編程案例 167
9.1 數據去重 167
9.1.1 實例表述 167
9.1.2 設計思路 168
9.1.3 程式代碼 168
9.1.4 代碼結果 169
9.2 數據排序 170
9.2.1 實例表述 171
9.2.2 設計思路 171
9.2.3 程式代碼 171
9.2.4 代碼結果 173
9.3 平均成績 174
9.3.1 實例表述 174
9.3.2 設計思路 175
9.3.3 程式代碼 175
9.3.4 代碼結果 177
9.4 多表關聯 178
9.4.1 實例表述 178
9.4.2 設計思路 179
9.4.3 程式代碼 179
9.4.4 代碼結果 181
9.5 二次排序 182
9.5.1 實例描述 182
9.5.2 設計思路 182
9.5.3 程式代碼 182
9.5.4 代碼結果 185
本章總結 186
本章習題 186
第 10章 MapReduce運行機制與YARN平台 187
10.1 剖析MapReduce作業運行機制 187
10.1.1 提交作業的方式 187
10.1.2 作業的運行組件 187
10.1.3 作業的運行解析 188
10.2 Shuffle和排序 190
10.2.1 Mapper端 190
10.2.2 Reducer端 193
10.2.3 MapReduce性能調優 196
10.3 任務的執行 197
10.4 作業的調度 199
10.4.1 先進先出調度器 199
10.4.2 公平調度器 199
10.4.3 計算能力調度器 200
10.5 YARN平台簡介 200
10.5.1 YARN的誕生 200
10.5.2 YARN的工作原理 200
10.6 YARN平台架構 201
本章總結 204
本章習題 204
第 11章 汽車銷售數據統計分析項目 205
11.1 數據概況 205
11.2 項目實戰 206
11.2.1 統計乘用車輛和商用車輛的數量和銷售額分布 206
11.2.2 統計某年每個月的汽車銷售數量的比例 208
11.2.3 統計某個月份各市區縣的汽車銷售的數量 210
11.2.4 用戶數據市場分析——統計買車的男女比例 213
11.2.5 統計不同所有權、型號和類型汽車的銷售數量 216
11.2.6 統計不同車型的用戶的年齡和性別 218
11.2.7 統計分析不同車型銷售數據 219
11.2.8 通過不同類型(品牌)汽車銷售情況統計發動機型號和燃料種類 222
11.2.9 統計同排量不同品牌汽車的銷售量 224
本章總結 226
本章習題 226