1)hadoop的1.x、2.x版本
如下圖辽故,1.x的hadoop徒仓,資源調(diào)度和任務(wù)調(diào)度耦合在一起,無法擴(kuò)展——自然就無法與spark結(jié)合誊垢。
而2.x的hadoop掉弛,把資源調(diào)度和任務(wù)調(diào)度做了解耦——圖中紅色的RM和綠色的NM,是做資源管理的喂走;白色的MR Task和MR AppMaster是做計(jì)算的殃饿;粉色的Container是用來降低耦合性的。
圖片.png
2)spark on yarn
如下圖芋肠,是純spark下的情況乎芳,此時(shí)master和worker和資源相關(guān),Driver和Executor和計(jì)算相關(guān)。
圖片.png
資源管理選yarn奈惑,微批計(jì)算用spark吭净,兩者結(jié)合棒棒噠:
圖片.png
3)spark的組件
如下圖,關(guān)于 master肴甸、worker寂殉、executor和driver的關(guān)系(總之就是spark那一套) 可參見此文:
https://blog.csdn.net/hongmofang10/article/details/84587262
圖片.png
講到底,我認(rèn)為可將Master類比為yarn的ResourceManager原在,把Slave類比為yarn的NodeManager友扰。
只是,yarn更專業(yè)庶柿,所以spark on yarn很流行村怪。
4)yarn的組件
另外,我在查閱資料的時(shí)候浮庐,發(fā)現(xiàn)了以下這個(gè)畫得非常好的圖——他清晰地闡明了RM甚负、NM、AM和Container的關(guān)系(總之就是yarn那一套):
圖片.png
(上圖所在文章之地址:https://blog.csdn.net/qq_35995514/article/details/105440654)