目標:掌握fsimage和edits的作用。
(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當中
>
>
dfs.namenode.name.dirname
>
>
file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopdatas/namenodedatasvalue
>
property
>
>
>
dfs.namenode.edits.dirname
>
>
file:///export/servers/hadoop-2.6.0-cdh5.14.0/hadoopdatas/dfs/nn/editsproperty
>
使用命令 hdfs oiv
檢視命令 hdfs oev
cd /export/servers/hadoop-2.6.0-cdh5.14.0/hadoopdatas/dfs/nn/edits/current
hdfs oev -i edits_0000000000000000865-0000000000000000866 -o myedit.xml -p xml
tim帶你學 HDFS讀取資料的流程
1 客戶端通過呼叫filesystem物件的open 來讀取希望開啟的檔案。2 client向namenode發起rpc請求,來確定請求檔案block所在的位置 3 namenode會視情況返回檔案的部分或者全部block列表,對於每個block,namenode 都會返回含有該 block 副本的...
帶你學C帶你飛
阿里雲大學 帶你學c帶你飛 帶你學c帶你飛 第一季講解內容 c語言語法,我們會講變數 陣列 函式 指標 結構 標準庫這樣一些純粹的c語言知識。基本上你大學第一學期學的就是咱第一季的內容,我知道很多朋友學完c語言一時感覺沒什麼用?然後大一學完大二就還給體育老師了 咳咳,畢竟現在是乙個連程式都要刷顏值的...
昊昊帶你學 演算法概述
什麼是演算法 雖然這篇題目叫概述,不過本菜只是不知道該叫什麼好,我這種小白腫麼敢概述演算法是不。就是總體上說說我對演算法的理解吧 o o 演算法可能有些初學童鞋接觸過。有些地方高中教材裡會涉及到 江蘇是有的 演算法導論 給出了乙個定義 所謂演算法就是定義良好的計算過程,它取乙個或一組值作為輸入,並產...