真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

大數(shù)據(jù)學(xué)習(xí)之(Storm)-原理詳解!

角色

埇橋區(qū)ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

Client

client的主要作用是提交topology到集群

Worker

Worker是運(yùn)行在Supervisor節(jié)點(diǎn)上的一個(gè)獨(dú)立的JVM進(jìn)程,主要作用是運(yùn)行topology,一個(gè)topology可以包含多個(gè)worker,但一個(gè)worker只能屬于一個(gè)topology

Exceutor

在Worker中運(yùn)行的線程,一個(gè)Executor可以對(duì)應(yīng)一個(gè)或多個(gè)Task,每個(gè)Task(Spout或Bolt)必須對(duì)應(yīng)一個(gè)Executor。

Task

一個(gè)獨(dú)立的處理邏輯的實(shí)例,每個(gè)Spout或Bolt都可以對(duì)應(yīng)多個(gè)Task在集群中運(yùn)行,每個(gè)線程對(duì)應(yīng)到一個(gè)Executor線程上。
streaminggroup定義了如何從一堆Task發(fā)送數(shù)據(jù)到另外一堆Task上。

Storm集群的啟動(dòng)、任務(wù)提交與執(zhí)行流程

啟動(dòng)

客戶運(yùn)行storm nimbus或storm supervisor時(shí),在storm腳本內(nèi)部實(shí)際對(duì)應(yīng)了兩個(gè)python函數(shù),這兩個(gè)函數(shù)最終會(huì)生成一條java命令,用于啟動(dòng)一個(gè)storm的java進(jìn)程:

java -server xxxx.xxxx.nimbus/supervisor args
1
任務(wù)提交

運(yùn)行storm java xxxx.MainClass name,此時(shí)會(huì)執(zhí)行Driver驅(qū)動(dòng)類的main函數(shù)
在驅(qū)動(dòng)類中,會(huì)調(diào)用topologyBuilder.createTopology()方法,該方法會(huì)生成spout和bolt的序列化對(duì)象
客戶端把topology對(duì)應(yīng)的jar上傳的到nimbus的storm-local/nimbus/inbox目錄下
首先,nimbus會(huì)將storm.jar復(fù)制到/home/hadoop/storm-local/nimbus/stormdist/wordcount01-2-1525621662目錄下,根據(jù)第二步生成的序列化對(duì)象生成task的序列化文件和相關(guān)配置的序列化文件(wordcount01-2-1525621662為storm生成的一個(gè)唯一的topology名稱),此時(shí),nimbus就可以進(jìn)行任務(wù)分配了
-rw-rw-r--. 1 hadoop hadoop 3615 5月 6 23:47 stormcode.ser
-rw-rw-r--. 1 hadoop hadoop 733 5月 6 23:47 stormconf.ser
-rw-rw-r--. 1 hadoop hadoop 3248667 5月 6 23:47 stormjar.jar
1
2
3
接下來進(jìn)行任務(wù)分配,分配完成后會(huì)產(chǎn)生一個(gè)assegiment對(duì)象,該對(duì)象會(huì)被序列化后保存到zookeeper的/storm/assignments/wordcount01-2-1525621662目錄下

supervisor通過zookeeper的watch機(jī)制感知/storm/assignments目錄變化,拉取數(shù)據(jù)自己的topology(nimbus進(jìn)行分配時(shí),會(huì)指定task所屬的supervisor)

supversior根據(jù)拉取到的信息在指定端口上啟動(dòng)worker,實(shí)際上就是執(zhí)行一條java腳本

java -server xxxxx.xxxx.worker
1
worker啟動(dòng)后,根據(jù)分配的task信息開始執(zhí)行。

大數(shù)據(jù)學(xué)習(xí)交流群 766988146 不管你是小白還是大牛,筆者我都挺歡迎,今天的源碼已經(jīng)上傳到群文件,不定期分享干貨,
包括我自己整理的一份最新的適合2018年學(xué)習(xí)的大數(shù)據(jù)開發(fā)和零基礎(chǔ)入門教程,歡迎初學(xué)和進(jìn)階中的小伙伴


名稱欄目:大數(shù)據(jù)學(xué)習(xí)之(Storm)-原理詳解!
分享路徑:http://weahome.cn/article/ppsjde.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部