安全模式
NameNode在啟動的時候,首先將映射文件fsimage載入內(nèi)存,并執(zhí)行編輯日志edits中的各項操作,一旦在內(nèi)存中成功建立文件系統(tǒng)元數(shù)據(jù)的映射,則創(chuàng)建一個新的fsimage文件(這個操作不需要SecondaryNameNode)和一個空的編輯日志。在這個過程中NameNode是運(yùn)行在安全模式的,即此時是只讀的。
在安全模式下,NameNode收集各個DataNode的報告,當(dāng)數(shù)據(jù)塊達(dá)到最小副本數(shù)以上時,會被認(rèn)為是安全的,在一定比例的數(shù)據(jù)塊被確定安全后,再過一段時間安全模式結(jié)束;當(dāng)檢測到副本數(shù)不足的數(shù)據(jù)塊時,該塊會被復(fù)制直到達(dá)到最小副本數(shù),系統(tǒng)中數(shù)據(jù)塊的位置并不是由NameNode維護(hù)的,而是以塊列表的形式存儲在DataNode中
參考文獻(xiàn)