dag(directed acyclic graph)叫做有向無環圖,原始的rdd通過一系列的轉換就就形成了dag,根據rdd之間的依賴關係的不同,將dag劃分成不同的stage,對於窄依賴,partition的轉換處理在stage中完成計算。對於寬依賴,由於有shuffle的存在,只能在parent rdd處理完成後,才能開始接下來的計算,因此寬依賴是劃分stage的依據
對於mr程式來說,乙個應用一般會被拆分成多個mr程式,然後通過排程程式(oozie、azkaban)等來進行dag的排程。
對於spark來說,乙個應用通常能夠處理整個業務,這也就是spark支援迭代式計算的表現。
黑猴子的家 Hadoop Checkpoint機制
fsimage和edit log合併的過程如下圖所示 其實這個合併過程是乙個很耗i o與cpu的操作,並且在進行合併的過程中肯定也會有其他應用繼續訪問和修改hdfs檔案。所以,這個過程一般不是在單一的namenode節點上進行從。如果hdfs沒有做ha的話,checkpoint由secondname...
黑猴子的家 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...