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