您好,登錄后才能下訂單哦!
Storm在Zookeeper中的結(jié)構(gòu)是怎樣的,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
Storm在Zookeeper中的保存
簡介:
我們知道,Twitter Storm的所有狀態(tài)信息都是保存在Zookeeper 之中的,在前面的有關(guān)kafka的文章之中,我們知道kafka也將信息保存在Zookeeper之中,還有其他類似的組件:如double,hbase等。存在對Zookeeper的依賴。
細節(jié):
nimbus通過在Zookeeper上面寫狀態(tài)信息來分配任務(wù),Supervisor,task通過Zookeeper中讀取狀態(tài)來領(lǐng)取自己的任務(wù),與此同時Nimbus在不斷的讀取 Supervisor,task發(fā)送給nimbus的心跳信號,以便能夠準確的監(jiān)控到集群的狀態(tài)。從而可以重新來啟動一些 ”掛掉“的任務(wù)。
具體的源代碼是 backtype.storm.cluster
/-{storm-zk-root} -- storm在zookeeper上的根 | 目錄 | |-/assignments -- topology的任務(wù)分配信息 | | | |-/{topology-id} -- 這個下面保存的是每個 | topology的assignments | 信息包括: 對應(yīng)的 | nimbus上的代碼目錄,所有 | task的啟動時間, | 每個task與機器、端口的映射 | |-/tasks -- 所有的task | | | |-/{topology-id} -- 這個目錄下面id為 | | {topology-id}的topology | | 所對應(yīng)的所有的task-id | | | |-/{task-id} -- 這個文件里面保存的是這個 | task對應(yīng)的component-id: | 可能是spout-id或者bolt-id | |-/storms -- 這個目錄保存所有正在運行 | | 的topology的id | | | |-/{topology-id} -- 這個文件保存這個topology | 的一些信息,包括topology的 | 名字,topology開始運行的時 | 間以及這個topology的狀態(tài) | (具體看StormBase類) | |-/supervisors -- 這個目錄保存所有的supervisor | | 的心跳信息 | | | |-/{supervisor-id} -- 這個文件保存的是supervisor | 的心跳信息包括:心跳時間,主 | 機名,這個supervisor上worker | 的端口號運行時間 | (具體看SupervisorInfo類) | |-/taskbeats -- 所有task的心跳 | | | |-/{topology-id} -- 這個目錄保存這個topology的所 | | 有的task的心跳信息 | | | |-/{task-id} -- task的心跳信息,包括心跳的時 | 間,task運行時間以及一些統(tǒng)計 | 信息 | |-/taskerrors -- 所有task所產(chǎn)生的error信息 | |-/{topology-id} -- 這個目錄保存這個topology下面 | 每個task的出錯信息 | |-/{task-id} -- 這個task的出錯信息
看完上述內(nèi)容,你們掌握Storm在Zookeeper中的結(jié)構(gòu)是怎樣的的方法了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。