問:首先思考元數據HDFS的元數據會存在哪裏?
答:內存微信
問:那若是斷電了怎麼辦?
答: 爲了不斷電等問題形成數據丟失,HDFS還會把元數據的鏡像文件存放在磁盤,叫作FSImage.但元數據會發生不停的添加/更新操做.不停的IO很是影響效率,所以同時使用EditLog 用來保存HDFS運行開始以來的對元數據的各類操做,所以 FSImage + EditLog 即爲此時內存中的元數據一致。spa
問: 若是EditLog過大了怎麼辦?
答: 此時須要清理Editlog 同時更新磁盤上的FSImage。因而有了2NN(Secondary NameNode)blog
具體工做機制以下:內存
HDFS啓動時 經過加載本地的Editlog和FSImage併合併到內存中去
運行過程當中Editlog更新不斷增大
當1)定時時間到了 2)Editlog滿了 就會觸發2NN 的Checkpoint機制it