Hadoop 2.X HDFS源碼剖析 Hadoop 2.X HDFS源码剖析

徐鵬

  • 出版商: 電子工業
  • 出版日期: 2016-03-01
  • 定價: $648
  • 售價: 8.5$551
  • 語言: 簡體中文
  • 頁數: 516
  • 裝訂: 平裝
  • ISBN: 7121281554
  • ISBN-13: 9787121281556
  • 相關分類: Hadoop
  • 下單後立即進貨 (約4週~6週)

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

商品描述

<內容介紹> 

徐鵬所著的《Hadoop2.X HDFS源碼剖析》以Hadoop 2.6.0源碼為基礎,深入剖析了HDFS 2.X中各個模塊的實現細節,包括RPC框架實現、Namenode實現、Datanode實現以及HDFS客戶端實現等。本書一共有5章,其中第1章從總體上介紹了HDFS的組件、概念以及典型的流程,同時詳細介紹了HDFS各個組件間RPC接口的定義。第2章介紹了Hadoop RPC框架的實現,Hadoop RPC是HDFS各個組件間通信所依賴的底層框架,可以理解為HDFS的神經系統。第3?5章分別介紹了Namenode、Datanode以及HDFS客戶端這三個組件的實現細節,同時穿插介紹了HDFS 2.X的新特性,例如Namenode HA、Federation Namenode等。
    閱讀本書可以幫助讀者從架構設計與源碼實現角度瞭解HDFS 2.X,同時還能學習HDFS 2.X框架中優秀的設計思想、設計模式、Java語言技巧以及編程規範等。這些對於讀者全面提高自己的技術水平有很大的幫助。

<章節目錄>
第1章  HDFS
  1.1  HDFS概述
    1.1.1  HDFS體系結構
    1.1.2  HDFS基本概念
  1.2  HDFS通信協議
    1.2.1  Hadoop RPC接口
    1.2.2  流式接口
  1.3  HDFS主要流程
    1.3.1  HDFS客戶端讀流程
    1.3.2  HDFS客戶端寫流程
    1.3.3  HDFS客戶端追加寫流程
    1.3.4  Datanode啟動、心跳以及執行名字節點指令流程
    1.3.5  HA切換流程
第2章  Hadoop RPC
  2.1  概述
    2.1.1  RPC框架概述
    2.1.2  Hadoop RPC框架概述
  2.2  Hadoop RPC的使用
    2.2.1  Hadoop RPC使用概述
    2.2.2  定義RPC協議
    2.2.3  客戶端獲取Proxy對象
    2.2.4  服務器獲取Server對象
  2.3  Hadoop RPC實現
    2.3.1  RPC類實現
    2.3.2  Client類實現
    2.3.3  Server類實現
第3章  Namenode(名字節點)
  3.1  文件系統目錄樹
    3.1.1  INode相關類
    3.1.2  Feature相關類
    3.1.3  FSEditLog類
    3.1.4  FSImage類
    3.1.5  FSDirectory類
  3.2  數據塊管理
    3.2.1  Block、Replica、BlocksMap
    3.2.2  數據塊副本狀態
    3.2.3  BlockManager類(done)
  3.3  數據節點管理
    3.3.1  DatanodeDescriptor
    3.3.2  DatanodeStorageInfo
    3.3.3  DatanodeManager
  3.4  租約管理
    3.4.1  LeaseManager.Lease
    3.4.2  LeaseManager
  3.5  緩存管理
    3.5.1  緩存概念
    3.5.2  緩存管理命令
    3.5.3  HDFS集中式緩存架構
    3.5.4  CacheManager類實現
    3.5.5  CacheReplicationMonitor

  3.6  ClientProtocol實現
    3.6.1  創建文件
    3.6.2  追加寫文件
    3.6.3  創建新的數據塊
    3.6.4  放棄數據塊
    3.6.5  關閉文件
  3.7  Namenode的啟動和停止
    3.7.1  安全模式
    3.7.2  HDFS High Availability
    3.7.3  名字節點的啟動
    3.7.4  名字節點的停止
第4章  Datanode(數據節點)
  4.1  Datanode邏輯結構
    4.1.1  HDFS 1.X架構
    4.1.2  HDFS Federation
    4.1.3  Datanode邏輯結構
  4.2  Datanode存儲
    4.2.1  Datanode升級機制
    4.2.2  Datanode磁盤存儲結構
    4.2.3  DataStorage實現
  4.3  文件系統數據集
    4.3.1  Datanode上數據塊副本的狀態
    4.3.2  BlockPoolSlice實現
    4.3.3  FsVolumeImpl實現
    4.3.4  FsVolumeList實現
    4.3.5  FsDatasetImpl實現
  4.4  BlockPoolManager
    4.4.1  BPServiceActor實現
    4.4.2  BPOfferService實現
    4.4.3  BlockPoolManager實現
  4.5  流式接口
    4.5.1  DataTransferProtocol定義
    4.5.2  Sender和Receiver
    4.5.3  DataXceiverServer
    4.5.4  DataXceiver
    4.5.5  讀數據
    4.5.6  寫數據(done)
    4.5.7  數據塊替換、數據塊拷貝和讀數據塊校驗
    4.5.8  短路讀操作
  4.6  數據塊掃描器
    4.6.1  DataBlockScanner實現
    4.6.2  BlockPoolSliceScanner實現
  4.7  DirectoryScanner
  4.8  DataNode類的實現
    4.8.1  DataNode的啟動
    4.8.2  DataNode的關閉
第5章  HDFS客戶端
  5.1  DFSClient實現
    5.1.1  構造方法
    5.1.2  關閉方法

    5.1.3  文件系統管理與配置方法
    5.1.4  HDFS文件與目錄操作方法
    5.1.5  HDFS文件讀寫方法
  5.2  文件讀操作與輸入流
    5.2.1  打開文件
    5.2.2  讀操作——DFSInputStream實現
  5.3  文件短路讀操作
    5.3.1  短路讀共享內存
    5.3.2  DataTransferProtocol
    5.3.3  DFSClient短路讀操作流程
    5.3.4  Datanode短路讀操作流程
  5.4  文件寫操作與輸出流
    5.4.1  創建文件
    5.4.2  寫操作——DFSOutputStream實現
    5.4.3  追加寫操作
    5.4.4  租約相關
    5.4.5  關閉輸出流
  5.5  HDFS常用工具
    5.5.1  FsShell實現
    5.5.2  DFSAdmin實現

目錄大綱