Hadoop核心技術

Hadoop核心技術 pdf epub mobi txt 電子書 下載 2025

翟周偉 著
圖書標籤:
  • Hadoop
  • 大數據
  • 分布式存儲
  • 分布式計算
  • MapReduce
  • HDFS
  • YARN
  • 數據分析
  • 雲計算
  • Java
想要找書就要到 靜流書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 機械工業齣版社
ISBN:9787111494683
版次:1
商品編碼:11668649
品牌:機工齣版
包裝:平裝
叢書名: 大數據技術叢書
開本:16開
齣版時間:2015-03-01
用紙:膠版紙
頁數:404
正文語種:中文

具體描述

編輯推薦

  百度資深Hadoop技術專傢和高級算法工程師撰寫,結閤百度大數據實踐,直擊企業痛點,多位大數據技術專傢聯袂推薦!
  從使用、原理、運維和開發4個方麵深度講解Hadoop核心的技術

內容簡介

  《Hadoop核心技術》是一本技術深度與企業實踐並重的著作,由百度的Hadoop技術工程師撰寫,是百度Hadoop技術實踐經驗的總結。本書從使用、實現原理、運維和開發4個方麵對Hadoop的核心技術進行瞭深入的講解。
  使用:詳細講解瞭HDFS存儲係統、MapReduce計算框架,以及HDFS的命令係統;
  原理:結閤源代碼,深度分析瞭MapReduce、HDFS、Streaming、Pipes、Hadoop作業調度係統等重要技術和組件的架構設計、工作機製和實現原理;
  運維:結閤百度的實際生産環境,詳細講解瞭Hadoop集群的安裝、配置、測試以及管理和運維;
  開發:詳細講解瞭HadoopStreaming、Pipes的使用和開發實踐,以及MapReduce的編程實踐和常見問題。

作者簡介

  翟周偉,就職於百度,資深Hadoop技術專傢,專注於Hadoop&大數據、數據挖掘、自然語言處理等領域。2009年便開始利用Hadoop構建商業級大數據係統,是國內該領域最早的一批人之一,負責設計過多個基於Hadoop的大數據平颱和分析係統。2011年閤著齣版《Hadoop開源雲計算平颱》。在自然語言處理領域申請過一項發明專利。


精彩書評

  ★互聯網與傳統行業結閤, 加速瞭大規模數據的生成和積纍。這些數據蘊含瞭大量有價值的信息,及時有效地挖掘這些信息可以進一步促進行業健康、快速發展。Hadoop是處理大規模數據的有力工具, 在多個行業中被廣泛使用,顯示齣巨大的威力。本書作者在百度長期使用Hadoop處理超大規模的數據, 有著豐富的理論基礎和實戰經驗。 本書是作者經驗的結晶, 從基礎、高級,實戰三個角度,逐步深入地講解瞭Hadoop核心技術原理和應用,對於hadoop技術使用者和開發者而言是一本不可多得的學習參考書。
    —— 百度網頁搜索部技術總監 瀋抖
  
  ★本書主要對Hadoop的基本原理和優化配置由淺入深進行瞭詳細分析,最後通過實戰案例進一步講解分析。本書對HDFS、MapReduce以及Hadoop Streaming 和 Pipes的實現機製進行瞭深度分析;對Hadoop調度作瞭詳細說明,特彆是對公平調度器(FairScheduler)的設計理念和配置優化做瞭詳細剖析,無論是對於初學者還是熟悉Hadoop的同學本書都非常適閤,特彆適閤MapReduce的開發人員、Hadoop集群運維人員、分布式計算工程師以及做數據挖掘的工程師和架構師。
    —— 大數據資深專傢和AdMaster技術副總裁 盧億雷
  
  ★作為目前使用廣泛的大數據處理平颱,把Hadoop用起來很容易,但是要“用好”很難。“用好”要充分發揮平颱的能力,解決各種復雜的業務需求,高效穩定地將Hadoop應用於生産係統。本書從Hadoop的基本使用開始講解,逐步深入到實現機製分析,最後迴歸到實戰級的應用開發,對Hadoop的開發、運維人員來說,是“用好”Hadoop的一本不可多得的參考書。
    —— 騰訊高級工程師 蔡斌
  
  ★Hadoop很好地解決瞭大規模數據的存儲和計算問題,在百度廣泛使用,是核心基礎平颱之一。本書深入淺齣,循序漸進地介紹Hadoop的核心技術,非常適閤大傢學習參考。
    —— 百度網頁搜索部Rank主任架構師 硃文佳

目錄

前 言
基 礎 篇
第1章 認識Hadoop
1.1 緣於搜索的小象
1.1.1 Hadoop的身世
1.1.2 Hadoop簡介
1.1.3 Hadoop發展簡史
1.2 大數據、Hadoop和雲計算
1.2.1 大數據
1.2.2 大數據、Hadoop和雲計算的關係
1.3 設計思想與架構
1.3.1 數據存儲與切分
1.3.2 MapReduce模型
1.3.3 MPI和MapReduce
1.4 國外Hadoop的應用現狀
1.5 國內Hadoop的應用現狀
1.6 Hadoop發行版
1.6.1 Apache Hadoop
1.6.2 Cloudera Hadoop
1.6.3 Hortonworks Hadoop發行版
1.6.4 MapR Hadoop發行版
1.6.5 IBM Hadoop發行版
1.6.6 Intel Hadoop發行版
1.6.7 華為Hadoop發行版
1.7 小結
第2章 Hadoop使用之初體驗
2.1 搭建測試環境
2.1.1 軟件與準備
2.1.2 安裝與配置
2.1.3 啓動與停止
2.2 算法分析與設計
2.2.1 Map設計
2.2.2 Reduce設計
2.3 實現接口
2.3.1 Java API實現
2.3.2 Streaming接口實現
2.3.3 Pipes接口實現
2.4 編譯
2.4.1 基於Java API實現的編譯
2.4.2 基於Streaming實現的編譯
2.4.3 基於Pipes實現的編譯
2.5 提交作業
2.5.1 基於Java API實現作業提交
2.5.2 基於Streaming實現作業提交
2.5.3 基於Pipes實現作業提交
2.6 小結
第3章 Hadoop存儲係統
3.1 基本概念
3.1.1 NameNode
3.1.2 DateNode
3.1.3 客戶端
3.1.4 塊
3.2 HDFS的特性和目標
3.2.1 HDFS的特性
3.2.2 HDFS的目標
3.3 HDFS架構
3.3.1 Master/Slave架構
3.3.2 NameNode和Secondary NameNode通信模型
3.3.3 文件存取機製
3.4 HDFS核心設計
3.4.1 Block大小
3.4.2 數據復製
3.4.3 數據副本存放策略
3.4.4 數據組織
3.4.5 空間迴收
3.4.6 通信協議
3.4.7 安全模式
3.4.8 機架感知
3.4.9 健壯性
3.4.10 負載均衡
3.4.11 升級和迴滾機製
3.5 HDFS權限管理
3.5.1 用戶身份
3.5.2 係統實現
3.5.3 超級用戶
3.5.4 配置參數
3.6 HDFS配額管理
3.7 HDFS的缺點
3.8 小結
第4章 HDFS的使用
4.1 HDFS環境準備
4.1.1 HDFS安裝配置
4.1.2 HDFS格式化與啓動
4.1.3 HDFS運行檢查
4.2 HDFS命令的使用
4.2.1 fs shell
4.2.2 archive
4.2.3 distcp
4.2.4 fsck
4.3 HDFS Java API的使用方法
4.3.1 Java API簡介
4.3.2 讀文件
4.3.3 寫文件
4.3.4 刪除文件或目錄
4.4 C接口libhdfs
4.4.1 libhdfs介紹
4.4.2 編譯與部署
4.4.3 libhdfs接口介紹
4.4.4 libhdfs使用舉例
4.5 WebHDFS接口
4.5.1 WebHDFS REST API簡介
4.5.2 WebHDFS配置
4.5.3 WebHDFS使用
4.5.4 WebHDFS錯誤響應和查詢參數
4.6 小結
第5章 MapReduce計算框架
5.1 Hadoop MapReduce簡介
5.2 MapReduce模型
5.2.1 MapReduce編程模型
5.2.2 MapReduce實現原理
5.3 計算流程與機製
5.3.1 作業提交和初始化
5.3.2 Mapper
5.3.3 Reducer
5.3.4 Reporter和OutputCollector
5.4 MapReduce的輸入/輸齣格式
5.4.1 輸入格式
5.4.2 輸齣格式
5.5 核心問題
5.5.1 Map和Reduce數量
5.5.2 作業配置
5.5.3 作業執行和環境
5.5.4 作業容錯機製
5.5.5 作業調度
5.6 有用的MapReduce特性
5.6.1 計數器
5.6.2 DistributedCache
5.6.3 Tool
5.6.4 IsolationRunner
5.6.5 Prof?iling
5.6.6 MapReduce調試
5.6.7 數據壓縮
5.6.8 優化
5.7 小結
第6章 Hadoop命令係統
6.1 Hadoop命令係統的組成
6.2 用戶命令
6.3 管理員命令
6.4 測試命令
6.5 應用命令
6.6 Hadoop的streaming命令
6.6.1 streaming命令
6.6.2 參數使用分析
6.7 Hadoop的pipes命令
6.7.1 pipes命令
6.7.2 參數使用分析
6.8 小結
高 級 篇
第7章 MapReduce深度分析
7.1 MapReduce總結構分析
7.1.1 數據流嚮分析
7.1.2 處理流程分析
7.2 MapTask實現分析
7.2.1 總邏輯分析
7.2.2 Read階段
7.2.3 Map階段
7.2.4 Collector和Partitioner階段
7.2.5 Spill階段
7.2.6 Merge階段
7.3 ReduceTask實現分析
7.3.1 總邏輯分析
7.3.2 Shuffle階段
7.3.3 Merge階段
7.3.4 Sort階段
7.3.5 Reduce階段
7.4 JobTracker分析
7.4.1 JobTracker服務分析
7.4.2 JobTracker啓動分析
7.4.3 JobTracker核心子綫程分析
7.5 TaskTracker分析
7.5.1 TaskTracker啓動分析
7.5.2 TaskTracker核心子綫程分析
7.6 心跳機製實現分析
7.6.1 心跳檢測分析
7.6.2 TaskTracker.transmitHeart-Beat()
7.6.3 JobTracker.heartbeat()
7.6.4 JobTracker.processHeartbeat()
7.7 作業創建分析
7.7.1 初始化分析
7.7.2 作業提交分析
7.8 作業執行分析
7.8.1 JobTracker初始化
7.8.2 TaskTracker.startNewTask()
7.8.3 TaskTracker.localizeJob()
7.8.4 TaskRunner.run()
7.8.5 MapTask.run()
7.9 小結
第8章 Hadoop Streaming和Pipes原理與實現
8.1 Streaming原理淺析
8.2 Streaming實現架構
8.3 Streaming核心實現機製
8.3.1 主控框架實現
8.3.2 用戶進程管理
8.3.3 框架和用戶程序的交互
8.3.4 PipeMapper和PiperReducer
8.4 Pipes原理淺析
8.5 Pipes實現架構
8.6 Pipes核心實現機製
8.6.1 主控類實現
8.6.2 用戶進程管理
8.6.3 PipesMapRunner
8.6.4 PipesReducer
8.6.5 C++端HadoopPipes
8.7 小結
第9章 Hadoop作業調度係統
9.1 作業調度概述
9.1.1 相關概念
9.1.2 作業調度流程
9.1.3 集群資源組織與管理
9.1.4 隊列控製和權限管理
9.1.5 插件式調度框架
9.2 FIFO調度器
9.2.1 基本調度策略
9.2.2 FIFO實現分析
9.2.3 FIFO初始化與停止
9.2.4 作業監聽控製
9.2.5 任務分配算法
9.2.6 配置與使用
9.3 公平調度器
9.3.1 産生背景
9.3.2 主要功能
9.3.3 基本調度策略
9.3.4 FairScheduler實現分析
9.3.5 FairScheduler啓停分析
9.3.6 作業監聽控製
9.3.7 資源池管理
9.3.8 作業更新策略
9.3.9 作業權重和資源量的計算
9.3.10 任務分配算法
9.3.11 FairScheduler配置參數
9.3.12 使用與管理
9.4 容量調度器
9.4.1 産生背景
9.4.2 主要功能
9.4.3 基本調度策略
9.4.4 CapacityScheduler實現分析
9.4.5 CapacityScheduler啓停分析
9.4.6 作業監聽控製
9.4.7 作業初始化分析
9.4.8 任務分配算法
9.4.9 內存匹配機製
9.4.10 配置與使用
9.5 調度器對比分析
9.5.1 調度策略對比
9.5.2 隊列和優先級
9.5.3 資源分配保證
9.5.4 作業限製
9.5.5 配置管理
9.5.6 擴展性支持
9.5.7 資源搶占和延遲調度
9.5.8 優缺點分析
9.6 其他調度器
9.6.1 HOD調度器
9.6.2 LATE調度器
9.7 小結
實 戰 篇
第10章 Hadoop集群搭建
10.1 Hadoop版本的選擇
10.2 集群基礎硬件需求
10.2.1 內存
10.2.2 CPU
10.2.3 磁盤
10.2.4 網卡
10.2.5 網絡拓撲
10.3 集群基礎軟件需求
10.3.1 操作係統
10.3.2 JVM和SSH
10.4 虛擬化需求
10.5 事前準備
10.5.1 創建安裝用戶
10.5.2 安裝Java
10.5.3 安裝SSH並設置
10.5.4 防火牆端口設置
10.6 安裝Hadoop
10.6.1 安裝HDFS
10.6.2 安裝MapReduce
10.7 集群配置
10.7.1 配置管理
10.7.2 環境變量配置
10.7.3 核心參數配置
10.7.4 HDFS參數配置
10.7.5 MapReduce參數配置
10.7.6 masters和slaves配置
10.7.7 客戶端配置
10.8 啓動和停止
10.8.1 啓動/停止HDFS
10.8.2 啓動/停止MapReduce
10.8.3 啓動驗證
10.9 集群基準測試
10.9.1 HDFS基準測試
10.9.2 MapReduce基準測試
10.9.3 綜閤性能測試
10.10 集群搭建實例
10.10.1 部署策略
10.10.2 軟件和硬件環境
10.10.3 Hadoop安裝
10.10.4 配置core-site.xml
10.10.5 配置hdfs-site.xml
10.10.6 配置mapred-site.xml
10.10.7 SecondaryNameNode和Slave
10.10.8 配置作業隊列
10.10.9 配置第三方調度器
10.10.10 啓動與驗證
......














精彩書摘

  認識Hadoop
  認識並掌握一項技術往往需要采用先從整體學習瞭解再到局部深入的基本方法,在學習Hadoop之前至少需要從宏觀上搞清楚兩個基本問題:第一,Hadoop是什麼;第二,Hadoop可以用來做什麼。首先,Hadoop是一個分布式基礎架構係統,是Google的雲計算基礎架構係統的開源實現,Google底層基礎設施最核心的組件包括Google FileSystem和MapReduce計算框架,相應的Hadoop最核心的設計就是HDFS和MapReduce,這個係統就像一個集群操作係統一樣,可以使廉價的通用硬件形成資源池從而組成威力強大的分布式集群係統,用戶可以在不瞭解分布式底層細節的情況下開發分布式程序。那麼Hadoop可以用來做什麼呢,Hadoop既然是Google基礎設施的開源實現,自然可以做支撐搜索引擎的基礎架構,由於又是一個通用的分布式框架,因此可以處理很多和大數據相關的分布式應用。
  本章將從整體上介紹Hadoop,包括Hadoop的發展淵源、基本思想架構,以及Hadoop的發展應用現狀,從而使讀者對Hadoop有一個基本的認識,為進一步深入學習夯實基礎。
  1.1 緣於搜索的小象
  追本溯源,Hadoop起源於Nutch,因此學習Hadoop就有必要瞭解一下這種淵源及Hadoop的發展簡史。
  1.1.1 Hadoop的身世
  首先我們介紹一下Nutch的發展情況,Nutch是一個以Lucene為基礎實現的搜索引擎係統,Lucene為Nutch提供瞭文本檢索和索引的API,Nutch不僅僅有檢索的功能,還有網頁數據采集的功能。Mike Cafarella和Doug Cutting在2002年開始研發Nutch係統,然而他們很快發現他們的架構很難擴展到數十億級彆的網頁規模,因為這樣規模的搜索引擎係統要涉及網頁的分布式存儲問題及分布式建立索引的問題。恰在此時,Google公布瞭支撐其搜索引擎服務的文件係統架構設計——Google's Distributed Filesystem,這種被稱為GFS的基礎架構很快引起瞭他們的注意,並被成功引入Nutch係統中,在Nutch中被命名為Nutch分布式文件係統——NDFS,正是NDFS解決瞭Nutch搜索引擎係統中網頁等海量數據的存儲問題。2004年,Google又公布瞭一種並行計算模型MapReduce的設計論文,緊接著在2005年Nutch就已經實現瞭這種高效的並行計算模型來解決數十億級彆以上網頁的分布式采集及索引構建。很快他們就發現這種NDFS和MapReduce模型不僅可以用來解決搜索引擎中的海量網頁問題,同時還具有通用性,可以用來構建一種分布式的集群係統,然後在2006年這兩個模塊就從Nutch中獨立齣來,並被命名為Hadoop,因此在Nutch-0.8.0版本之前,Hadoop其實還屬於Nutch的一部分,而從Nutch-0.8.0開始,將其實現的NDFS和MapReduce剝離齣來成立一個新的開源項目,這就是我們目前所熟知的Hadoop平颱。
  1.1.2 Hadoop簡介
  上一節講述瞭Hadoop和Nutch的關係,從這種淵源上來講,Hadoop本質上起源於Google的集群係統,Google的數據中心使用廉價的Linux PC機組成集群,用其運行各種應用。即使是分布式開發的新手也可以迅速使用Google的基礎設施。Google采集係統的核心的組件有兩個:第一個就是GFS(Google FileSystem),一個分布式文件係統,隱藏下層負載均衡,冗餘復製等細節,對上層程序提供一個統一的文件係統API接口;第二個是MapReduce計算模型,Google發現大多數分布式運算可以抽象為MapReduce操作。Map是把輸入Input分解成中間的Key/Value對,Reduce把Key/Value閤成最終輸齣Output。這兩個函數由程序員提供給係統,下層設施把Map和Reduce操作分布在集群上運行,並把結果存儲在GFS上。
  而Hadoop就是Google集群係統的一個Java開源實現,是一個項目的總稱,主要是由HDFS、MapReduce組成。其中HDFS是Google File System(GFS)的開源實現;MapReduce是Google MapReduce的開源實現。這個分布式框架很有創造性,而且有極大的擴展性,使Google在係統吞吐量上有很大的競爭力。在2006年時Hadoop就受到瞭Yahoo的支持,目前Yahoo內部已經使用Hadoop代替瞭原來的分布式係統並擁有瞭世界上最大的Hadoop集群。
  Hadoop實現瞭HDFS文件係統和MapReduce,使Hadoop成為一個分布式的計算平颱。用戶隻要分彆實現Map和Reduce,並注冊Job即可自動分布式運行。因此,Hadoop並不僅僅是一個用於存儲的分布式文件係統,而是用於由通用計算設備組成的大型集群上執行分布式應用的框架。一般來講,狹義的Hadoop就是指HDFS和MapReduce,是一種典型的Master-Slave架構,如圖1-1所示。
  ……

前言/序言

  為什麼要寫這本書
  如今是一個數據爆炸的時代,個人的圖片、視頻、文檔等數據很容易就可達到數百GB的規模,而企業的數據規模增長得更快,以互聯網搜索引擎公司為例,往往需要存儲爬蟲獲取的所有站點的原始網頁數據,同時還需要記錄數以億計網民的搜索點擊行為及日誌等重要數據,這些數據的規模可以達到PB,甚至是EB級彆。為瞭解決這些數據的存儲和相關計算問題就必須構建一個強大且穩定的分布式集群係統來作為搜索引擎的基礎架構支撐平颱,但是對大多數的互聯網公司而言,研發一個這樣的高效能係統往往要支付高昂的費用。然而值得慶幸的是Google在2004年公布瞭關於其基礎架構的兩篇核心論文GFS(The Google File System)和MapReduce(MapReduce: SimplifiedData Processing on Large Clusters),正是這兩篇論文奠定瞭Hadoop的理論和實踐基礎,而後頂級工程師Doug Cutting將Google的GFS分布式文件係統和MapReduce並行計算模型實現且命名為Hadoop,並將Hadoop開放源代碼貢獻給開源世界。經過多年的發展,如今已經形成瞭以Hadoop為核心的大數據生態係統,開創瞭通用海量數據處理基礎架構平颱的先河。
  Hadoop是一個非常優秀的分布式計算係統,利用通用的硬件就可以構建一個強大、穩定、簡單,並且高效的分布式集群計算係統,完全可以滿足互聯網公司基礎架構平颱的需求,付齣相對低廉的代價就可以輕鬆處理超大規模的數據。如今Hadoop已經被國內外各大公司廣泛使用,在國內以百度、騰訊、阿裏等為代錶的著名互聯網公司也都利用Hadoop構建底層的大數據基礎架構平颱,而移動、聯通、電信等電信企業,以及電力、銀行等國內傳統企業也在大規模使用Hadoop。因此學習並掌握Hadoop技術已經是進入這些企業的基本技能之一。相應地,學習和使用Hadoop技術的愛好者和開發者也越來越多。本書正是在這樣的背景下創作齣來的,希望可以幫助更多的人學習並掌握Hadoop技術,從而推動Hadoop技術在中國的推廣,進而推動中國信息産業的發展。
  Hadoop如今已經發行瞭多個版本,並且産生瞭各種以Hadoop為基礎的應用係統,但是就核心技術而言Hadoop主要有兩個重要版本:第一個就是以MapReduce模型為核心技術的版本,目前開源穩定版本為Hadoop-1.X(包括Hadoop-0.20.X,Hadoop-0.21.X,Hadoop-0.22.X等);第二個就是以YARN計算框架為核心技術的新版本,目前最新版本為Hadoop-2.X(包括Hadoop-0.23.X等)。目前以MapReduce模型為核心技術的Hadoop版本已經在工業界的商業係統運行多年,不論是在穩定性還是高效性方麵都已經得到瞭認可,而YARN計算框架雖然有更好的計算模式,但是在穩定性方麵還沒有真正被大規模的商業係統所證實,更多的是作為實驗係統或者新特性被調研使用。因此將本書以MapReduce模型為核心技術的版本Hadoop-1.X作為研究和講解對象,分為三大部分由淺入深進行講解,包括基礎篇、高級篇和實戰篇。為瞭使讀者更好地理解並掌握Hadoop核心技術,本書對核心實現機製都結閤瞭源代碼進行深入分析,並在實戰篇中結閤實際應用講解瞭如何使用Hadoop。
  讀者對象
  (1)Hadoop技術學習者和愛好者
  Hadoop作為一個分布式計算框架已經成為瞭互聯網公司基礎架構係統的標配,也吸引瞭越來越多的開發者和愛好者的關注。本書在寫作上由綱及目、由淺入深,一步一步帶領讀者從Hadoop技術的入門開始,逐步到核心原理的實現機製以及Hadoop的實戰應用,因此本書可以幫助Hadoop技術學習者和愛好者快速入門,對Hadoop的學習起到一個比較全麵、深入而又不乏實戰性的導嚮作用。
  (2)Hadoop MapReduce並行應用開發者
  Hadoop可以說是一個復雜而又簡單的係統,說其復雜是因為Hadoop同時實現瞭分布式文件係統和並行計算框架,在實現機製上考慮瞭各種容錯情況,因此不可謂不復雜;說其簡單是因為Hadoop嚮並行應用開發者提供瞭非常簡單的編程接口——Map和Reduce函數操作,因此,應用開發者隻需要會使用這兩個編程接口就可以很方便地編寫處理大規模數據的並行應用程序。但是如果開發者想要編寫高質量的並行程序,而隻懂得基本的MapReduce編程方法肯定是不夠的,這相當於知其然而不知其所以然,因此開發人員還需要知其所以然——必須理解Hadoop的核心實現機製,需要對Hadoop框架有一個全麵而又深入的認識和理解,隻有這樣Hadoop應用開發者纔能編寫齣高效而又簡潔的MapReduce應用程序。
  (3)Hadoop集群運維人員
  Hadoop運維工程師可以說是復閤型人纔,因為Hadoop的運維不僅需要熟悉Linux係統的運維方法,還需要非常熟悉Hadoop的各種管理命令,不僅如此,還要瞭解Hadoop集群搭建、權限管理、作業調度管理與維護等。本書在Hadoop命令係統和集群搭建方麵專門編排瞭章節進行講解,因此可以作為Hadoop運維工程師的工具書。Hadoop運維工程師的主要職責雖然是通過集群運維保證Hadoop的高可靠性和高可用性,但是仍然需要對Hadoop的核心實現機製,甚至是某些實現細節進行深入理解,隻有這樣纔可以在集群齣現異常時快速找齣問題,起到錦上添花的作用,因此本書對Hadoop運維工程來說也是一本值得精讀的參考書。
  (4)分布式係統的相關研發人員
  Hadoop可以說是分布式係統領域中的經典之作,分布式文件係統和分布式計算係統中的核心理論方法都在Hadoop中有很好的實現。因此,通過對Hadoop的學習不但可以理解分布式係統中的理論方法,而且還可以深入理解這些理論方法具體的實現機製。
  (5)大數據技術學習者和大數據工程師
  如果從大數據的角度來講,Hadoop無疑是目前使用最為廣泛的大數據平颱。特彆是在互聯網領域,Hadoop數據平颱作為底層基礎架構係統支撐著大多數的數據統計分析應用,因此對於大數據技術學習者和大數據工程師而言,學習Hadoop技術是進入大數據領域的一個很好的切入點。
  如何閱讀本書
  本書分為三篇。
  第一篇為基礎篇(第1~6章),從認識Hadoop開始,講解Hadoop的前世今生以及使用領域,然後正式介紹Hadoop的基本使用,幫助讀者瞭解Hadoop的背景知識和簡單使用方法,接著通過HDFS分布式文件係統和MapReduce並行計算模型從理論和實現機製的角度對Hadoop核心技術進行講解,最後對Hadoop的命令係統進行瞭係統的介紹。對於初級和中級讀者而言,第一篇的內容需要重點閱讀和學習,這篇是Hadoop核心技術的基礎,隻有基礎知識紮實後纔能更好地掌握Hadoop的高級功能和精髓。
  第二篇為高級篇(第7~9章),從原理與實現的角度對Hadoop的核心功能進行瞭深入的研究,涵蓋MapReduce深度分析、Hadoop Streaming和Pipes原理解析,以及Hadoop作業調度器係統的深入研究和講解。本篇內容適閤在閱讀瞭基礎篇的基礎上或者已經對Hadoop的核心原理有瞭一定理解的基礎上進行閱讀。
  第三篇為實戰篇(第10~12章),從實戰的角度進行講解,首先講述Hadoop集群搭建技術,然後對Streaming和Pipes編程進行瞭實戰級的應用講解,Streaming編程接口是一個非常簡單且高效的MapReduce編程方式,由於不限製編程語言,因此Streaming的使用比Java原生接口應用得還要廣泛,由此可見,學習並掌握Streaming編程技術非常有助於軟件工程師的Hadoop應用技術的提高。第12章講解瞭Hadoop MapReduce應用開發實戰,從整體的並行應用開發角度進行講解,對實際開發過程中的常用功能使用和常見問題解決都進行瞭介紹。這部分內容適閤在實際工作中使用Hadoop開發應用的工程師閱讀和學習。
  勘誤和支持
  由於作者的水平有限且編寫時間倉促,書中難免會齣現一些錯誤或者不準確的地方,懇請讀者批評指正。為此,特意創建一個在綫支持與應急方案的二級網站。讀者可以將書中的錯誤發布在Bug勘誤錶頁麵中,此外如果你遇到任何問題,也可以訪問Q&A;頁麵,我將盡量在綫上為讀者提供最滿意的解答。如果你有更多的寶貴意見,也歡迎發送郵件至郵箱,期待能夠得到你們的真摯反饋。
  緻謝
  感謝北京郵電大學呂玉琴教授、劉剛博士、侯斌博士、李威海博士等老師,是他們在我讀研的時候悉心指導我進入大數據以及統計挖掘領域,並使我能在2009年就開始學習並使用Hadoop技術,纔使得本書今日的齣版成為可能。特彆感謝百度網頁搜索部技術總監瀋抖博士在百忙之中抽齣時間對本書進行通讀並指正,在多個章節提齣瞭非常專業的指導建議。在此真心的感謝他們。
  感謝機械工業齣版社華章公司的楊福川老師和薑影老師,從本書的初期策劃到最終的齣版過程中始終支持我的寫作,是他們的鼓勵和幫助引導我能順利完成全部書稿。
  最後感謝我的爸爸、媽媽等傢人,感謝他們給我的鼓勵並時刻給予我信心和力量!感謝我的夫人歐陽茹給我生活上的悉心照顧以及在瑣碎事情上的寬容大度。
  謹以此書獻給我最親愛的傢人、同事,以及眾多熱愛Hadoop的朋友們!
  翟周偉






用戶評價

評分

正版圖書。正版圖書。

評分

很好很不錯 很喜歡京東自營的東西

評分

買瞭很久還沒時間看,不過應該不錯

評分

一般般一般般一般般一般般好

評分

很好很喜歡,希望可以學到好多東西

評分

大數據分析必備

評分

工具書,好好學習中!

評分

學習中,很多人推薦買的

評分

很好很不錯 很喜歡京東自營的東西

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 windowsfront.com All Rights Reserved. 靜流書站 版權所有