1. 程式人生 > >HDFS的工作原理

HDFS的工作原理

答疑 dfs- 存在 時間間隔 日誌 ado 塊存儲 shadow ges

元數據管理機制

技術分享圖片

名詞解釋

1、NameNode

? hdfs-site.xml的dfs.name.dir屬性

? 是整個文件系統的管理節點。它維護著整個文件系統的文件目錄樹,文件/(根)目錄的元信息和每個文件對應的數據塊列表。接收用戶的操作請求。

文件包括:

? fsimage:元數據鏡像文件。存儲某一時段NameNode內存元數據信息

? edits:操作日誌文件

? fstime:保存最近一次checkpoint的時間

以上這些文件是保存在linux的文件系統中。

2、Bolck

? 文件塊(block):最基本的存儲單位。

對於文件內容而言,一個文件的長度大小是size,那麽從文件的0偏移開始,按照固定的大小,順序對文件進行劃分並編號,劃分好的每一個塊稱一個Block。

? HDFS默認Block大小是128MB,以一個256MB文件為例,共有256/128=2個Block。

? dfs.block.size不同於普通文件系統的是,HDFS中,如果一個文件小於一個數據塊的大小,並不占用整個數據塊存儲空間Replication。

3、DataNode

? hdfs-site.xml的dfs.replication屬性

? 提供真實文件數據的存儲服務。

? 一個DataNode上有多個bolck——多復本。默認是三個。

4、客戶端上傳元數據

? 1、客戶端發起寫入請求

? 2、NN返回可用的DN

? 3、客戶端把元數據拆分成多個塊

? 4、上傳第一個塊到某個DN1

? 5、DN1向DN2發起復制請求,DN2向DN3發起復制請求,如果失敗,則由NN重新指定一個block向新的DN4發起復制請求

5、上傳元數據信息安全機制

? 1、客戶端發起寫入請求

? 2、把操作寫入到edits logs

? 3、客戶端上傳文件文件,並把結果反饋給NN,NN在內存中寫入本次上傳信息

? 4、當edits logs寫滿,則同步(flush)到 fs image文件系統中

? 5、讀取的時候日誌以特殊的方式跟fs image合並(所以不能在NN做合並)

6、元數據存儲與讀取細節

技術分享圖片

SN的checkpoint機制

技術分享圖片

? fs.checkpoint.period 指定兩次checkpoint的最大時間間隔, 默認3600秒。

? fs.checkpoint.size 規定edits文件的最大值,一旦超過這個值則強制checkpoint,不管是否到達最大時間間隔。默認大小是64M。


更多資深講師相關課程資料、學習筆記請入群後向管理員免費獲取,更有專業知識答疑解惑。入群即送價值499元在線課程一份。

QQ群號:560819979

敲門磚(驗證信息):雨打蕉

HDFS的工作原理