fsimage和edit log合併的過程如下圖所示
其實這個合併過程是乙個很耗i/o與cpu的操作,並且在進行合併的過程中肯定也會有其他應用繼續訪問和修改hdfs檔案。所以,這個過程一般不是在單一的namenode節點上進行從。如果hdfs沒有做ha的話,checkpoint由secondnamenode程序(一般secondnamenode單獨起在另一台機器上)來進行。在ha模式下,checkpoint則由standby狀態的namenode來進行。
什麼時候進行checkpoint由兩個引數dfs.namenode.checkpoint.preiod(預設值是3600,即1小時)和dfs.namenode.checkpoint.txns(預設值是1000000)來決定。period引數表示,經過1小時就進行一次checkpoint,txns引數表示,hdfs經過100萬次操作後就要進行checkpoint了。這兩個引數任意乙個得到滿足,都會觸發checkpoint過程。進行checkpoint的節點每隔dfs.namenode.checkpoint.check.period(預設值是60)秒就會去統計一次hdfs的操作次數。
黑猴子的家 FileInputFormat切片機制
1 job提交流程原始碼詳解 waitforcompletion submit 1 建立連線 connect 1 建立提交job的 new cluster getconfiguration 2 判斷是本地yarn還是遠端 initialize jobtrackaddr,conf 2 提交job su...
黑猴子的家 Zookeeper Java API
1 code github 2 環境準備 1 建立乙個工程 2 解壓zookeeper 3.4.10.tar.gz檔案 3 拷貝zookeeper 3.4.10.jar jline 0.9.94.jar log4j 1.2.16.jar netty 3.10.5.final.jar slf4j ap...
黑猴子的家 Git 安裝
2 開始安裝 git 選擇git命令的執行環境,這裡推薦選擇第乙個,就是單獨使用者git自己的命令列視窗。不推薦和windows的命令列視窗混用。在 configuring the line ending conversions 選項中 第乙個選項 如果是跨平台專案,在windows系統安裝,選擇 ...