新書推薦:
《
部分识别入门——计量经济学的创新性方法
》
售價:NT$
345.0
《
东野圭吾:变身(来一场真正的烧脑 如果移植了别人的脑子,那是否还是我自己)
》
售價:NT$
295.0
《
推荐连接万物
》
售價:NT$
290.0
《
严复与福泽谕吉启蒙思想比较(王中江著作系列)
》
售價:NT$
750.0
《
甘于平凡的勇气
》
售價:NT$
225.0
《
存在与结构:精神分析的法国转向——以拉康与萨特为中心
》
售價:NT$
240.0
《
生成式人工智能:AIGC与多模态技术应用实践指南
》
售價:NT$
495.0
《
石油帝国的兴衰:英国的工业化与去工业化
》
售價:NT$
445.0
|
內容簡介: |
Hadoop是一種分散式資料和計算的框架,在巨量資料處理中應用非常廣泛。MapReduce是一種程式設計模型,Hadoop正是以MapReduce作為核心程式設計模型的。
本書深入淺出、有系統地透過非技術性的表達方式和詳細的原始程式分析,介紹MapReduce2.0的理論系統、架構和程式設計方法。幫助讀者掌握MapReduce2.0基礎和特性的基礎上,培養實際程式設計和解決巨量資料處理問題的能力。
強調理論聯繫實際,注重MapReduce程式設計解決現實問題的應用,提供大量程式設計實戰例題供讀者參考。
|
關於作者: |
王曉華
資深電腦專業講師,教授物件導向程式設計、資料結構、Hadoop程式設計等相關課程,主要研究雲端運算、資料採擷,發表過多篇論文。
|
目錄:
|
前言
第1章1大象也會跳舞
1.1巨量資料時代
1.2巨量資料分析時代
1.3簡單、粗暴、有效--這就是Hadoop
1.4MapReduce與Hadoop
1.5看,大象也會跳舞
本章小結
第2章2大象的肚子--HDFS檔案系統詳解
2.1HDFS基礎詳解
2.1.1HDFS設計想法
2.1.2HDFS架構與基本存放裝置單元
2.2HDFS資料存取流程分析
2.2.1HDFS資料儲存位置與複製詳解
2.2.2HDFS輸入串流程分析
2.2.3HDFS輸出串流程分析
2.3HDFS命令列操作詳解
2.3.1HDFS中4個通用的命令列操作
2.3.2HDFS檔案18個基本命令列的操作
2.3.3HDFS檔案存取權限詳解
2.4透過Web瀏覽HDFS檔案
2.5HDFS介面使用詳解
2.5.1使用FileSystemAPI操作HDFS中的內容
2.5.2使用FileSystemAPI讀取資料詳解
2.5.3使用FileSystemAPI寫入資料詳解
2.6HDFS檔案同步與平行處理存取
本章小結
第3章 「吃下去吐出來」--Hadoop檔案IO系統詳解
3.1Hadoop的壓縮類型介紹
3.2Hadoop的壓縮類別庫
3.2.1從一個簡單的實例開始
3.2.2CompressionCodec介面
3.2.3CompressionCodecFactory類別詳解
3.2.4壓縮池
3.2.5在Hadoop中使用壓縮
3.3IO中序列化類型詳解
3.3.1Text類別詳解
3.3.2IntWritable類別詳解
3.3.3ObjectWritable類別詳解
3.3.4NullWritable類別詳解
3.3.5ByteWritable類別詳解
3.4實現自訂的Writable類型
3.4.1Writable介面
3.4.2WritableComparable介面與RawComparator介面
3.4.3自訂的Writable類別
3.4.4為了更快的比較
3.5Hadoop中小檔案處理詳解
3.5.1SequenceFile詳解
3.5.2MapFile詳解
本章小結
第4章 「大象的大腦」--MapReduce框架結構與原始程式分析
4.1MapReduce框架結構與原始程式分析
4.1.1 MapReduce框架分析與執行過程詳解
4.1.2 MapReduce輸入輸出與原始程式分析
4.1.3 MapReduce中Job類別詳解
4.2程式設計實戰:經典的MapReduce單字計數程式
4.2.1 準備工作
4.2.2 MapReduce過程分析
4.2.3 計數程式的MapReduce實現
4.2.4 計數程式的main方法
4.2.5 注意事項
4.2.6 執行結果
4.2.7 Mapper中的Combiner詳解
本章小結
第5章5深入!MapReduce設定與測試
5.1MapReduce環境變數設定詳解
5.1.1 使用XML設定新的設定檔
5.1.2 修改已有的設定檔
5.1.3 輔助類別ToolRunner、Configured詳解
5.2使用MRUnit對MapReduce進行測試
5.2.1 MRUnit簡介與使用
5.2.2 使用MRUnit完成Mapper單元測試
5.2.3 使用MRUnit完成Reduce單元測試
5.2.4 使用MRUnit完成MapReduce單元測試
5.3在本機磁碟上進行MapReduce測試
5.3.1 虛擬環境欺騙
5.3.2 在Eclipse中設定Hadoop外掛程式
5.3.3 撰寫本機測試程式
5.4MapReduce計數器
5.4.1 使用計數器的MapReduce程式設計
5.4.2 透過Web介面進行工作分析
5.4.3 透過Web介面檢視計數器
本章小結
第6章 大象的思考流程--MapReduce執行流程詳解
6.1經典MapReduce工作的工作流程
6.1.1 ClientNode執行工作的初始化
6.1.2 訊息傳遞
6.1.3 MapReduce工作的執行
6.1.4 工作的完成與狀態更新
6.2經典MapReduce工作例外處理詳解
6.2.1 MapReduce工作例外的處理方式
6.2.2 MapReduce工作失敗的處理方式
6.3經典MapReduce工作的資料處理過程
6.3.1 Map端的輸入資料處理過程
6.3.2 Reduce端的輸入資料處理過程
6.3.3 Java虛擬機器重用
6.4MapReduce2.0(YARN)工作流程詳解
6.4.1 YARN概述
6.4.2 YARN工作過程分析
6.4.3 YARN的例外處理
本章小結
第7章7更強的大象--MapReduce進階程式設計續
7.1MapReduce程式設計預設格式類型詳解
7.1.1 map與reduce方法的預設輸入輸出類型
7.1.2 自訂輸入輸出類型設定
7.1.3 自訂全域類型變數設定要求
7.1.4 預設的MapReduce程式設定
7.2InputFormat輸入格式詳解
7.2.1 輸入記錄與分區
7.2.2 InputFormat原始程式及執行過程分析
7.2.3 實現自己的RecordReader類別
7.2.4 自訂的FileInputFormat類別
7.2.5 一些常用的InputFormat類別詳解
7.3OutputFormat輸出格式詳解
7.3.1 OutputFormat預設輸出格式
7.3.2 自訂OutputFormat輸出格式
7.3.3 對Reduce工作數進行設定
7.3.4 OutputFormat分區類別Partitioner詳解
7.4多種輸入與輸出使用介紹
7.4.1 MultipleInputs多種輸入方式詳解
7.4.2 MultipleOutputs多種輸出方式詳解
本章小結
第8章8MapReduce相關特性詳解
8.1MapReduce計數器
8.1.1 Hadoop框架內建的計數器
8.1.2 自訂計數器
8.1.3 動態計數器
8.1.4 取得計數器值
8.2排序與尋找
8.2.1 普通排序規則與尋找
8.2.2 使用MapFile進行排序與尋找
8.3對輸出結果的值分組排序
8.3.1 準備工作
8.3.2 對結果進行分組處理
8.3.3 對鍵的二次排序
8.3.4 自訂輸出分組
8.4程式設計實戰:使用二次排序自動尋找最小值
8.4.1 想法分析
8.4.2 驗證輸入輸出結果
8.4.3 對結果進行二次排序
8.4.4 對結果進行分組
8.4.5 分割處理排序與分組
8.4.6 驗證結果
本章小結
第9章9啤酒與尿布--MapReduce連接與資料採擷初步
9.1對於同樣格式資料進行MapReduce連接
9.2對於不同格式資料進行MapReduce連接
9.3不能說的秘密—啤酒與尿布
9.3.1 銷售清單的秘密
9.3.2 設計程式
9.3.3 程式執行結果
9.4資料採擷初步
本章小結
第10章10MapReduce實戰程式設計及深度分析
10.1程式設計實戰:自訂資料庫中讀取資料
10.1.1 準備工作
10.1.2 程式分析
10.1.3 自訂SQLInputFormat
10.1.4 使用自訂程式從資料庫中讀取資料
10.1.5 程式執行及資料分析
10.1.6 使用合併記錄進行效能最佳化
10.2程式設計實戰:串聯尋找共同轉載微博
10.2.1 應用分析
10.2.2 第一步表轉換
10.2.3 建立關注連接
10.2.4 自訂的OutputFormat.
10.2.5 串聯解決共同轉載微博
10.2.6 效能最佳化及後續處理
10.3程式設計實戰:雲端儲存模型
10.3.1 應用分析
10.3.2 Tomcat簡介
10.3.3 設定Tomcat伺服器
10.3.4 測試Tomcat伺服器
10.3.5 在Eclipse中設定Tomcat
10.3.6 建立雲端儲存目錄
10.3.7 取得雲端儲存列表
10.3.8 將檔案上傳至資料雲端儲存中
10.3.9 刪除檔案
10.3.10下載雲端儲存檔案
10.3.11程式執行與效能最佳化
10.4程式設計實戰:多文件相似關鍵字檢索
10.4.1 應用分析
10.4.2 自訂工作處理類別
10.4.3 程式執行及後續分析
10.5程式設計實戰:學生成績整理與分組
10.5.1 應用分析
10.5.2 自訂的ScoreWritable
10.5.3 自訂的MapReduce
10.5.4 自訂的分組
10.5.5 程式執行結果
10.5.6 採用更多分組類型
本章小結
|
|