在ZooKeeper中,引入了Watch機(jī)制來(lái)實(shí)現(xiàn)這種分布式的通知功能。ZooKeeper允許客戶端向服務(wù)端注冊(cè)一個(gè)Watch監(jiān)聽(tīng),當(dāng)服務(wù)端的一些事件觸發(fā)了這個(gè)Watch,那么就會(huì)向指定客戶端發(fā)送一個(gè)事件通知,來(lái)實(shí)現(xiàn)分布式的通知功能。Watch機(jī)制在事件中有以下4個(gè)特點(diǎn):查看全文>>
Zookeeper的底層是一套數(shù)據(jù)儲(chǔ)存結(jié)構(gòu),其中的節(jié)點(diǎn),我們稱之為znode。Zookeeper中數(shù)據(jù)存儲(chǔ)的結(jié)構(gòu)和標(biāo)準(zhǔn)文件系統(tǒng)非常類似,擁有一個(gè)層次的命名空間,也是使用斜杠(/)進(jìn)行分割,兩者都是采用樹(shù)形層次結(jié)構(gòu)。不同的是,標(biāo)準(zhǔn)文件系統(tǒng)是由文件夾和文件來(lái)組成的樹(shù),而Zookeeper是由什么來(lái)組成的樹(shù)呢?下面我們來(lái)看一下Zookeeper數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)查看全文>>
YARN是一個(gè)通用的資源管理系統(tǒng)和調(diào)度平臺(tái),它的基本設(shè)計(jì)思想是將MRv1(Hadoop1.0中的MapReduce)中的JobTracker拆分為兩個(gè)獨(dú)立的任務(wù),這兩個(gè)任務(wù)分別是全局的資源管理器ResourceManager和每個(gè)應(yīng)用程序特有的ApplicationMaster。其中,ResourceManager負(fù)責(zé)整個(gè)系統(tǒng)的資源管理和分配,而ApplicationMaster負(fù)責(zé)單個(gè)應(yīng)用程序的管理。接下來(lái),我們通過(guò)一張圖來(lái)描述YARN的體系結(jié)構(gòu),具體如圖1所示。查看全文>>
Zookeeper對(duì)外提供一個(gè)類似于文件系統(tǒng)的層次化的數(shù)據(jù)存儲(chǔ)服務(wù),為了保證整個(gè)Zookeeper集群的容錯(cuò)性和高性能,每一個(gè)Zookeeper集群都是由多臺(tái)服務(wù)器節(jié)點(diǎn)(Server)組成,這些節(jié)點(diǎn)通過(guò)復(fù)制保證各個(gè)服務(wù)器節(jié)點(diǎn)之間的數(shù)據(jù)一致。只要當(dāng)這些服務(wù)器節(jié)點(diǎn)過(guò)半數(shù)節(jié)點(diǎn)可用,那么整個(gè)Zookeeper集群就可用。下面我們來(lái)學(xué)習(xí)Zookeeper的集群架構(gòu),如圖1所示。查看全文>>
我們要規(guī)劃的Spark集群包含一臺(tái)Master節(jié)點(diǎn)和兩臺(tái)Slave節(jié)點(diǎn)。其中,主機(jī)名hadoop01是Master節(jié)點(diǎn),hadoop02和hadoop03是Slave節(jié)點(diǎn)。 接下來(lái),分步驟演示Spark集群的安裝與配置,具體如下。查看全文>>
目前,Spark生態(tài)系統(tǒng)已經(jīng)發(fā)展成為一個(gè)可應(yīng)用于大規(guī)模數(shù)據(jù)處理的統(tǒng)一分析引擎,它是基于內(nèi)存計(jì)算的大數(shù)據(jù)并行計(jì)算框架,適用于各種各樣的分布式平臺(tái)的系統(tǒng)。在Spark生態(tài)圈中包含了Spark SQL、Spark Streaming、GraphX、MLlib等組件,這些組件可以非常容易地把各種處理流程整合在一起,而這樣的整合,在實(shí)際的數(shù)據(jù)分析過(guò)程中是很有意義的。不僅如此,Spark的這種特性還大大減輕了原先需要對(duì)各種平臺(tái)分別管理的依賴負(fù)擔(dān)。下面,通過(guò)一張圖描述Spark的生態(tài)系統(tǒng)查看全文>>