哈嘍,大家好,我是漢斯老師。近幾年來,互聯(lián)網(wǎng)行業(yè)由于較高的薪資收入,受到許多人的追捧。很多年輕的學(xué)子,或是其他行業(yè)的有志青年,都想要投身到這個(gè)行業(yè)中來。然而一方面受到“互聯(lián)網(wǎng)寒冬”的影響,最近頻頻傳出各家知名互聯(lián)網(wǎng)公司裁員縮編的消息;另一方面,大量的人才涌入,又使得互聯(lián)網(wǎng)產(chǎn)業(yè)在職場上呈現(xiàn)出供過于求的特征,并最終導(dǎo)致了職場上的激烈競爭。那么互聯(lián)網(wǎng)行業(yè)未來的潛力在哪里?我們又應(yīng)該在哪個(gè)方向上發(fā)力,才能保證自己可以獲得一份高薪而穩(wěn)定的工作?基于多年的互聯(lián)網(wǎng)行業(yè)從業(yè)經(jīng)驗(yàn),漢斯老師在這里向大家推薦大數(shù)據(jù)方向,希望通過本人的《三分鐘入門大數(shù)據(jù)》和《十分鐘精通大數(shù)據(jù)》等系列文章,幫助所有有志了解學(xué)習(xí)大數(shù)據(jù)的朋友掌握大數(shù)據(jù)的相關(guān)知識(shí),也歡迎所有對(duì)互聯(lián)網(wǎng)行業(yè)以及大數(shù)據(jù)領(lǐng)域感興趣的朋友前來交流。

最近有同學(xué)向漢斯老師提了一個(gè)問題,他說:“大數(shù)據(jù)組件中,Yarn是一個(gè)分布式管理系統(tǒng),Zookeeper也是一個(gè)分布式管理系統(tǒng),為什么一套體系中,會(huì)運(yùn)行兩個(gè)管理系統(tǒng)?Yarn和Zookeeper的區(qū)別和聯(lián)系是什么?”
Yarn和ZooKeeper的作用
Yarn是一個(gè)分布式資源調(diào)度器組件。這個(gè)組件的主要作用是在每次接收到請(qǐng)求后,會(huì)查看當(dāng)下的各個(gè)子節(jié)點(diǎn)的狀況,統(tǒng)籌出運(yùn)算資源的調(diào)度方案來保證任務(wù)可以順利執(zhí)行。通常來說,Yarn所調(diào)度的資源常常包括磁盤空間的資源,內(nèi)存的資源和通訊帶寬的資源等。Yarn是Hadoop V2.0開始引入的一個(gè)組件,這個(gè)組件可以說是針對(duì)Hadoop1.0系統(tǒng)所爆露出的計(jì)算資源使用不合理等設(shè)計(jì)上的問題進(jìn)行的修正和補(bǔ)充。
ZooKeeper是一個(gè)分布式的一致性服務(wù)組件。分布式系統(tǒng)最大的困難之處在于如何保證系統(tǒng)內(nèi)各個(gè)節(jié)點(diǎn)服務(wù)器所操作或處理的數(shù)據(jù)是一致的,或者各自的配置信息是相同的,而ZooKeeper的價(jià)值就在于實(shí)現(xiàn)了基于分布式的統(tǒng)一化配置管理,命名服務(wù),狀態(tài)同步等。在ZooKeeper的體系下,會(huì)使用一種樹狀的文件存儲(chǔ)系統(tǒng),這一套系統(tǒng)強(qiáng)調(diào)在各個(gè)子節(jié)點(diǎn)下的文件目錄結(jié)構(gòu),文件名稱以及文件內(nèi)容都是相同的,而ZooKeeper會(huì)通過其內(nèi)部機(jī)制,保證在發(fā)送增刪改等操作時(shí),各個(gè)子節(jié)點(diǎn)會(huì)同步操作。
兩者的相似之處在什么地方呢?
A. 都是分布式的
B. 都具備監(jiān)聽和控制子節(jié)點(diǎn)運(yùn)行的能力
Yarn和ZooKeeper的區(qū)別
Yarn的核心功能在于資源調(diào)度與管理,而ZooKeeper的核心功能在于分布式系統(tǒng)中的一致性服務(wù)。