下載地址:網盤下載程序員
內容簡介 · · · · · ·
《Hadoop實戰》做爲雲計算所青睞的分佈式架構,Hadoop是一個用Java語言實現的軟件框架,在由大量計算機組成的集羣中運行海量數據的分佈式計算,是谷歌實現雲計算的重要基石。《Hadoop實戰》分爲3個部分,深刻淺出地介紹了Hadoop框架、編寫和運行Hadoop數據處理程序所需的實踐技能及Hadoop以外更大的生態系統。算法
《Hadoop實戰》適合須要處理大量離線數據的雲計算程序員、架構師和項目經理閱讀參考。數據庫
做者簡介 · · · · · ·
Chuck Lam 目前創建了一個名爲RollCall的移動社交網絡公司,讓活躍的個體用戶擁有了一個社交助理。他之前曾是RockYou的高級技術組長,開發了社交應用 程序和數據處理基礎架構,可以支撐上億的用戶。在斯坦福大學攻讀博士的時候,Chuck就對大數據產生了興趣。他的論文「Computational Data Acquisition」獨創了可用於機器學習的數據採集方法,吸納了來自開源軟件和網絡遊戲等領域的思想。編程
目錄 · · · · · ·
第一部分 Hadoop——一種分佈式編程框架
第1 章 Hadoop簡介 2
1.1 爲何寫《Hadoop 實戰》 3
1.2 什麼是Hadoop 3
1.3 瞭解分佈式系統和Hadoop 4
1.4 比較SQL 數據庫和Hadoop 5
1.5 理解MapReduce 6
1.5.1 動手擴展一個簡單程序 7
1.5.2 相同程序在MapReduce中的擴展 9
1.6 用Hadoop統計單詞——運行第一個程序 11
1.7 Hadoop歷史 15
1.8 小結 16
1.9 資源 16
第2 章 初識Hadoop 17
2.1 Hadoop 的構造模塊 17
2.1.1 NameNode 17
2.1.2 DataNode 18
2.1.3 Secondary NameNode 19
2.1.4 JobTracker 19
2.1.5 TaskTracker 19
2.2 爲Hadoop 集羣安裝SSH 21
2.2.1 定義一個公共帳號 21
2.2.2 驗證SSH安裝 21
2.2.3 生成SSH密鑰對 21
2.2.4 將公鑰分佈並登陸驗證 22
2.3 運行Hadoop 22
2.3.1 本地(單機)模式 23
2.3.2 僞分佈模式 24
2.3.3 全分佈模式 25
2.4 基於Web 的集羣用戶界面 28
2.5 小結 30
第3 章 Hadoop組件 31
3.1 HDFS 文件操做 31
3.1.1 基本文件命令 32
3.1.2 編程讀寫HDFS 35
3.2 剖析MapReduce 程序 37
3.2.1 Hadoop數據類型 39
3.2.2 Mapper 40
3.2.3 Reducer 41
3.2.4 Partitioner:重定向Mapper輸出 41
3.2.5 Combiner:本地reduce 43
3.2.6 預約義mapper和Reducer類的單詞計數 43
3.3 讀和寫 43
3.3.1 InputFormat 44
3.3.2 OutputFormat 49
3.4 小結 50
第二部分 實戰
第4 章 編寫MapReduce基礎程序 52
4.1 得到專利數據集 52
4.1.1 專利引用數據 53
4.1.2 專利描述數據 54
4.2 構建MapReduce 程序的基礎模板 55
4.3 計數 60
4.4 適應Hadoop API 的改變 64
4.5 Hadoop 的Streaming 67
4.5.1 經過Unix命令使用Streaming 68
4.5.2 經過腳本使用Streaming 69
4.5.3 用Streaming處理鍵/值對 72
4.5.4 經過Aggregate包使用Streaming 75
4.6 使用combiner 提高性能 80
4.7 溫故知新 83
4.8 小結 84
4.9 更多資源 84
第5 章 高階MapReduce 85
5.1 連接MapReduce 做業 85
5.1.1 順序連接MapReduce做業 85
5.1.2 具備複雜依賴的MapReduce連接 86
5.1.3 預處理和後處理階段的連接 86
5.2 聯結不一樣來源的數據 89
5.2.1 Reduce側的聯結 90
5.2.2 基於DistributedCache的複製聯結 98
5.2.3 半聯結:map側過濾後在reduce側聯結 101
5.3 建立一個Bloom filter 102
5.3.1 Bloom filter作了什麼 102
5.3.2 實現一個Bloom filter 104
5.3.3 Hadoop 0.20 以上版本的Bloom filter 110
5.4 溫故知新 110
5.5 小結 111
5.6 更多資源 112
第6 章 編程實踐 113
6.1 開發MapReduce 程序 113
6.1.1 本地模式 114
6.1.2 僞分佈模式 118
6.2 生產集羣上的監視和調試 123
6.2.1 計數器 123
6.2.2 跳過壞記錄 125
6.2.3 用IsolationRunner從新運行出錯的任務 128
6.3 性能調優 129
6.3.1 經過combiner來減小網絡流量 129
6.3.2 減小輸入數據量 129
6.3.3 使用壓縮 129
6.3.4 重用JVM 132
6.3.5 根據猜想執行來運行 132
6.3.6 代碼重構與算法重寫 133
6.4 小結 134
第7 章 細則手冊 135
7.1 向任務傳遞做業定製的參數 135
7.2 探查任務特定信息 137
7.3 劃分爲多個輸出文件 138
7.4 以數據庫做爲輸入輸出 143
7.5 保持輸出的順序 145
7.6 小結 146
第8 章 管理Hadoop 147
8.1 爲實際應用設置特定參數值 147
8.2 系統體檢 149
8.3 權限設置 151
8.4 配額管理 151
8.5 啓用回收站 152
8.6 刪減DataNode 152
8.7 增長DataNode 153
8.8 管理NameNode 和SNN 153
8.9 恢復失效的NameNode 155
8.10 感知網絡佈局和機架的設計 156
8.11 多用戶做業的調度 157
8.11.1 多個JobTracker 158
8.11.2 公平調度器 158
8.12 小結 160
第三部分 Hadoop也瘋狂
第9 章 在雲上運行Hadoop 162
9.1 Amazon Web Services 簡介 162
9.2 安裝AWS 163
9.2.1 得到AWS身份認證憑據 164
9.2.2 得到命令行工具 166
9.2.3 準備SSH密鑰對 168
9.3 在EC2 上安裝Hadoop 169
9.3.1 配置安全參數 169
9.3.2 配置集羣類型 169
9.4 在EC2 上運行MapReduce 程序 171
9.4.1 將代碼轉移到Hadoop集羣上 171
9.4.2 訪問Hadoop集羣上的數據 172
9.5 清空和關閉EC2 實例 175
9.6 Amazon Elastic MapReduce 和其餘AWS 服務 176
9.6.1 Amazon Elastic MapReduce 176
9.6.2 AWS導入/導出 177
9.7 小結 177
第10 章 用Pig編程 178
10.1 像Pig 同樣思考 178
10.1.1 數據流語言 179
10.1.2 數據類型 179
10.1.3 用戶定義函數 179
10.2 安裝Pig 179
10.3 運行Pig 180
10.4 經過Grunt 學習Pig Latin 182
10.5 談談Pig Latin 186
10.5.1 數據類型和schema 186
10.5.2 表達式和函數 187
10.5.3 關係型運算符 189
10.5.4 執行優化 196
10.6 用戶定義函數 196
10.6.1 使用UDF 196
10.6.2 編寫UDF 197
10.7 腳本 199
10.7.1 註釋 199
10.7.2 參數替換 200
10.7.3 多查詢執行 201
10.8 Pig 實戰——計算類似專利的例子 201
10.9 小結 206
第11 章 Hive及Hadoop羣 207
11.1 Hive 207
11.1.1 安裝與配置Hive 208
11.1.2 查詢的示例 210
11.1.3 深刻HiveQL 213
11.1.4 Hive小結 221
11.2 其餘Hadoop 相關的部分 221
11.2.1 HBase 221
11.2.2 ZooKeeper 221
11.2.3 Cascading 221
11.2.4 Cloudera 222
11.2.5 Katta 222
11.2.6 CloudBase 222
11.2.7 Aster Data和Greenplum 222
11.2.8 Hama和Mahout 223
11.2.9 search-hadoop.com 223
11.3 小結 223
第12 章 案例研究 224
12.1 轉換《紐約時報》1100 萬個庫存圖片文檔 224
12.2 挖掘中國移動的數據 225
12.3 在StumbleUpon 推薦最佳網站 229
12.3.1 分佈式StumbleUpon 的開端 230
12.3.2 HBase 和StumbleUpon 230
12.3.3 StumbleUpon 上的更多Hadoop 應用 236
12.4 搭建面向企業查詢的分析系統——IBM的ES2 項目 238
12.4.1 ES2 系統結構 240
12.4.2 ES2 爬蟲 241
12.4.3 ES2 分析 242
12.4.4 小結 249
12.4.5 參考文獻 250
附錄A HDFS文件命令 251
下載地址:
網盤下載