<內容介紹>
徐鵬所著的《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實現
Reference demo_5
In stock 297 Items
Data sheet