1. 程式人生 > 實用技巧 >HDFS的fsimage和edits是什麼、有什麼作用

HDFS的fsimage和edits是什麼、有什麼作用

Fsimage,Edits詳解

目標:掌握FsimageEdits的作用。

NameNode元資料解析

(1)第一次啟動namenode格式化後,建立fsimage和edits檔案。如果不是第一次啟動,直接載入edits和fsimage檔案到記憶體。

(2)客戶端對元資料進行增刪改的請求。

(3)namenode記錄操作日誌,更新滾動日誌。

(4)namenode在記憶體中對資料進行增刪改查。

fsimage儲存了最新的元資料檢查點,在HDFS啟動時載入fsimage的資訊,包含了整個HDFS檔案系統的所有目錄和檔案的資訊。

對於檔案來說包括了資料塊描述資訊、修改時間、訪問時間等。

對於目錄來說包括修改時間、訪問許可權控制資訊(目錄所屬使用者,所在組)等。

editlog主要是在NameNode已經啟動情況下對HDFS進行的各種更新操作進行記錄,HDFS客戶端執行所有的寫操作都會被記錄到editlog中。

Fsimage,editlog主要用於在叢集啟動時將叢集的狀態恢復到關閉前的狀態。

為了達到這個目的,叢集啟動時將Fsimage、editlog載入到記憶體中,進行合併,合併後恢復完成。

元資料資訊目錄的配置

hdfs-site.xml當中

<property>

<name>dfs.namenode.name.dir</name>

<value>

file:///export/servers/Hadoop-2.6.0-cdh5.14.0/HadoopDatas/namenodeDatas

</value>

</property>

<property>

<name>dfs.namenode.edits.dir</name>

<value>

file:///export/servers/Hadoop-2.6.0-cdh5.14.0/HadoopDatas/dfs/nn/edits

</value>

</property>