secondry namenode每個週期(15min)詢問edit檔案的大小。
當edit檔案達到合併閾值時,namenode停止使用edit檔案,並建立乙個edit.new的新檔案。
secondary namenode通過get請求得到fsimage檔案和edit檔案,執行edit檔案中的操作,結果存入新的fsimage檔案。
合併完成後通知namenode,namenode傳送post請求,得到合併後的fsimage檔案,並將其重新命名。
將edit.new檔案更名為edit檔案。
secondary namenode可以在namenode宕機後,根據自己的這份fsimage檔案對其進行恢復,所以需要將其另部一台機器。
另外:datanode和namendoe通過心跳機制保持聯絡,datanode每3s向name傳送一次資料資訊,如果超過3s namenode沒有收到datanode發來的心跳,就會將這個節點的資料向其他節點拷貝乙份。
Fsimage與EditLog的合併步驟
由於editlog不斷增長,在namenode重啟時,會造成長時間namenode處於安全模式,不可用狀態,是非常不符合hadoop的設計初衷。所以要週期性合併editlog,但是這個工作由namenode來完成,會占用大量資源,這樣就出現了secondarynamenode,它可以進行checkp...
NameNode中的Fsimage和Edits解析
在在 opt module hadoop 2.7.2 data tmp dfs name current 目錄下 1.fsimage檔案 hdfs檔案系統元資料的乙個永久性的檢查點,其中包含hdfs檔案系統的所有目錄和檔案idnode的序列化資訊 2.fsimage.md5檔案 是映象檔案的 md5...
SQL與NoSQL MySQL與NoSQL的融合
寫這一篇內容的原因是mysql5.6.2突然推出了memcached的功能。nosql to innodb with memcached的出現,可以看出nosql對關聯式資料庫的確產生了巨大的影響,個人覺得這是乙個非常大的進步,可以讓開發人員更加方便的使用nosql和關聯式資料庫。nosql一般被認...