Heron是Apache Storm的一個直接繼承者。從架構(gòu)角度來看,它與Storm截然不同,但是從API的角度看它是完全向后兼容的。
下面的章節(jié)指明了Heron和Storm的區(qū)別,描述了Heron背后的設(shè)計(jì)目標(biāo),并解釋了其架構(gòu)的主要組件。
代碼庫
Heron代碼庫的詳細(xì)指南在這里。
拓?fù)?/strong>
你可以認(rèn)為一個Heron集群是一種管理流式處理實(shí)體(稱作拓?fù)?的生命周期機(jī)制的機(jī)制。更多信息可以查看Heron拓?fù)湮臋n。
與Apache Storm的關(guān)系
Heron是Apache Storm的直接繼承者,但是以下面兩點(diǎn)為構(gòu)建目標(biāo):
1.通過把Storm的基于線程的計(jì)算模型替換為基于進(jìn)程的模型,克服Storm的性能,可靠性,和其他缺點(diǎn)。
2.保留與Storm的數(shù)據(jù)模型和拓?fù)銩PI的完全兼容。
關(guān)于Heron和Storm更深入的討論,查看Twitter Heron: Stream Processing at Scale論文。
Heron設(shè)計(jì)目標(biāo)
隔離–拓?fù)鋺?yīng)該是基于進(jìn)程的而非基于線程的,而且每個進(jìn)程應(yīng)該獨(dú)立執(zhí)行以便于調(diào)試,分析和排錯。
資源限制–拓?fù)鋺?yīng)該只使用它們初始分配的那些資源,永遠(yuǎn)不能超過那些限制。這使得Heron在共享的基礎(chǔ)設(shè)施上也保證安全。
兼容性–Heron與Apache Storm的API和數(shù)據(jù)模型是完全兼容的,使得開發(fā)人員便于在系統(tǒng)間遷移。
反壓機(jī)制–在Heron這類分布式系統(tǒng)中,不能保證所有的系統(tǒng)組件以相同的速度執(zhí)行。Heron有內(nèi)置的反壓機(jī)制來確保拓?fù)湓诮M件緩慢的情況下可以自適應(yīng)。
性能–許多Heron的設(shè)計(jì)選擇使得Heron獲得了比Storm更高的吞吐量和更低的延遲,同時還提供了增強(qiáng)的可配置性來微調(diào)可能的延遲/吞吐量的折中。
語義保證–Heron支持at-most-once和at-least-once兩種處理語義。
效率–Heron的構(gòu)建目標(biāo)是以最小的資源使用量達(dá)到上述所有目標(biāo)。
拓?fù)浣M件
Heron拓?fù)涞南铝泻诵慕M件在以下小節(jié)中深入討論:
- Topology Master
- Container
- Stream Manager
- Heron Instance
- Metrics Manager
- Heron Tracker
Topology Master
Topology Master(TM)管理拓?fù)涞恼麄生命周期,從提交直到最終被殺死。當(dāng)==heron==部署一個拓?fù)鋾r,它啟動了一個TM和多個containers。這個TM創(chuàng)建了一個臨時ZooKeeper節(jié)點(diǎn)以保證這個拓?fù)渲挥幸粋TM,并且這個TM可被拓?fù)渲腥魏芜M(jìn)程發(fā)現(xiàn)。這個TM也負(fù)責(zé)構(gòu)建拓?fù)涞奈锢碛?jì)劃,傳遞給不同組件。

圖1 Topology Master配置
TM有多種配置參數(shù),你可以在拓?fù)渖芷诿恳粋階段進(jìn)行調(diào)整。
Container每個Heron拓?fù)浒ǘ鄠containers,每個container包含多個Heron實(shí)例,一個Stream Manager和一個Metrics Manager。Containers與拓?fù)涞腡M通信以確保拓?fù)湫纬梢粋全聯(lián)通圖。
作為插圖,查看上述Topology Master小節(jié)的圖片。
Stream Manager
Stream Manager(SM)管理拓?fù)浣M件間元組的路由。一個拓?fù)渲械拿總Heron實(shí)例連接到它的本地SM,同時在一個給定的拓?fù)渲兴械腟M互相連接形成了一個網(wǎng)絡(luò)。下面是SM網(wǎng)絡(luò)的圖示:
圖2 SM網(wǎng)絡(luò)的圖示
除了作為數(shù)據(jù)流的路由引擎外,SM還負(fù)責(zé)在需要時在拓?fù)渲袀鞑シ磯。下面是反壓的圖示:
圖3 反壓的圖示
上圖中,假定bolt B3(在container A中)所有輸入都來自spout S1。B3比其他組件運(yùn)行更慢。結(jié)果是,container A的SM會拒絕來自容器C和D的輸入,因?yàn)槟菢訒䦟?dǎo)致那些容器的套接字緩沖填滿,進(jìn)而導(dǎo)致吞吐量崩潰。
在這種情況下,Heron的反壓機(jī)制起效。容器A中的SM會向其他所有SM發(fā)送一條消息。結(jié)果是,其他SM會檢查容器的物理計(jì)劃,并切斷流入bolt B3的spouts的輸入(本例中是spout S1)。
圖4 Stream Manager2
一旦落后的bolt(B3)恢復(fù)正常,容器A的SM會通知其他SM,這個拓?fù)涞牧髀酚删蜁謴?fù)正常。
Stream Manger配置
SM有多種配置參數(shù),你可以在拓?fù)渖芷诿恳粋階段進(jìn)行調(diào)整。
Heron Instance
一個Heron Instance(HI)是一個處理一個獨(dú)立spout或bolt任務(wù)的進(jìn)程,支持簡單的調(diào)試和分析。目前,Heron只支持Java,所以所有HI都是JVM進(jìn)程,但是未來會改變。
Heron Instance配置
HI有多種配置參數(shù),你可以在拓?fù)渖芷诿恳粋階段進(jìn)行調(diào)整。
Metrics Manager
每個拓?fù)溥\(yùn)行一個Metrics Manager(MM),用于收集和導(dǎo)出一個container中所有組件的度量。然后把哪些度量信息路由給Topology Master和外部收集器,如Scribe, Graphite,或類似系統(tǒng)。
你可以通過實(shí)現(xiàn)自己的定制度量池(sink),使Heron支持其他系統(tǒng)。
集群級別組件
上述小節(jié)列出的所有組件在每個拓?fù)渲卸伎梢哉业。下面列出的組件是集群級別的組件,在特定拓?fù)渫馄鹱饔谩?/div>
Heron CLI
Heron有一個稱作==heron==的CLI工具,用于管理拓?fù)洹N臋n參照Managing Topologies。
Heron Tracker
Heron Tracker(或Tracker)是一個關(guān)于拓?fù)涞募盒畔⒌募腥肟,包括哪個拓?fù)湔谶\(yùn)行,正在啟動,正在被殺死,等等。它依賴于與集群中拓?fù)渌褂玫南嗤腪ooKeeper節(jié)點(diǎn),并提供了JSON REST API接口來獲取那些信息。Tracker可以運(yùn)行在Heron集群內(nèi)(在Heron scheduler管理的相同的機(jī)器上),也可以運(yùn)行在Heron集群外。
運(yùn)行包含JSON API文檔的操作說明可以參考Heron Tracker。
Heron UI
Heron UI是一個富可視化接口,可以用于與拓?fù)浣换ァMㄟ^Heron UI,可以看到集群中每個拓?fù)涞倪壿嫼臀锢碛?jì)劃的著色的展現(xiàn)。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:Twitter開源大數(shù)據(jù)實(shí)時分析系統(tǒng)Heron:Heron架構(gòu)
本文網(wǎng)址:http://www.oesoe.com/html/solutions/14019319532.html

關(guān)鍵詞標(biāo)簽:
Twitter開源大數(shù)據(jù)實(shí)時分析系統(tǒng)Heron:Heron架構(gòu),開源大數(shù)據(jù) Twitter Heron架構(gòu),ERP,ERP系統(tǒng),ERP軟件,ERP系統(tǒng)軟件,ERP管理系統(tǒng),ERP管理軟件,進(jìn)銷存軟件,財務(wù)軟件,倉庫管理軟件,生產(chǎn)管理軟件,企業(yè)管理軟件,拓步,拓步ERP,拓步軟件,免費(fèi)ERP,免費(fèi)ERP軟件,免費(fèi)ERP系統(tǒng),ERP軟件免費(fèi)下載,ERP系統(tǒng)免費(fèi)下載,免費(fèi)ERP軟件下載,免費(fèi)進(jìn)銷存軟件,免費(fèi)進(jìn)銷存,免費(fèi)財務(wù)軟件,免費(fèi)倉庫管理軟件,免費(fèi)下載,
本文轉(zhuǎn)自:e-works制造業(yè)信息化門戶網(wǎng)
本文來源于互聯(lián)網(wǎng),拓步ERP資訊網(wǎng)本著傳播知識、有益學(xué)習(xí)和研究的目的進(jìn)行的轉(zhuǎn)載,為網(wǎng)友免費(fèi)提供,并盡力標(biāo)明作者與出處,如有著作權(quán)人或出版方提出異議,本站將立即刪除。如果您對文章轉(zhuǎn)載有任何疑問請告之我們,以便我們及時糾正。聯(lián)系方式:QQ:10877846 Tel:0755-26405298。