storm

  • 離線計算
    批量獲取數(shù)據(jù)、批量傳輸數(shù)據(jù)、周期性批量計算數(shù)據(jù)、數(shù)據(jù)展示(報表)
    代表技術(shù):sqoop批量導入數(shù)據(jù)、hdfs批量存儲數(shù)據(jù)、mapreduce批量計算數(shù)據(jù)、hive批量計算數(shù)據(jù)、任務調(diào)度
    在生產(chǎn)環(huán)境中安裝sqoop客戶端導入數(shù)據(jù)有生產(chǎn)風險。需要使用更安全的方式,比如用ftp采集,內(nèi)天到ftp拿數(shù)據(jù)。在一個公司內(nèi)部,對一份數(shù)據(jù)感興趣的部門很多,可以flume采集后,用kafka緩存,不同的部門根據(jù)需要拿數(shù)據(jù)。直接消費或者存入hdfs
  • 流式計算
    數(shù)據(jù)實時產(chǎn)生、實時傳輸、實時計算、實時展示
    代表技術(shù):flume實時采集、kafka/metaq實時存儲數(shù)據(jù)、storm/jstorm實時計算數(shù)據(jù)、redis實時結(jié)果緩存、mysql持久化存儲

Storm

用來實時計算源源不斷產(chǎn)生的數(shù)據(jù),如同流水線生產(chǎn)。
流式計算的一般架構(gòu):(如網(wǎng)站系統(tǒng))flume實時數(shù)據(jù)采集、kafka臨時緩存數(shù)據(jù)、storm計算數(shù)據(jù)、redis結(jié)果存儲

Storm核心組件
storm核心組件

nimbus:資源分配、任務調(diào)度
supervisor:接收任務,啟動和通知屬于自己管理的worker進程。worker的數(shù)量根據(jù)端口號來。一個worker里面不會運行屬于不同的topology的執(zhí)行任務。
worker:執(zhí)行任務的具體組件(其實就是一個jvm)。可以執(zhí)行spout任務或者bolt任務。
zookeeper:保存分配任務信息、心跳信息、元數(shù)據(jù)信息
executor:可以理解為一個worker進程中的工作線程。一個executor中只能運行隸屬于一個component(spout/bolt)的task。一個worker進程中可以有一個或者多個executor線程。
task:默認情況下,一個executor運行一個task,非默認情況可以有多個task。每個component(spout/bolt)的并發(fā)度就是其對應的task數(shù)量。(task也是各個節(jié)點之間進行g(shù)rouping(partition)的單位)

Storm編程模型

storm編程模型

Topology:Storm中運行的一個實時應用程序
Datasource:外部數(shù)據(jù)源
Spout:在一個Topology中獲取源數(shù)據(jù)流的組件。將外部數(shù)據(jù)轉(zhuǎn)化為Storm內(nèi)部的數(shù)據(jù),以Tuple為基本的傳輸單元下發(fā)給Bolt:接收Spout發(fā)送的數(shù)據(jù),或上游的bolt發(fā)送的數(shù)據(jù)。根據(jù)業(yè)務邏輯進行處理。發(fā)送給下一個bolt或者存儲到某種介質(zhì)上(redis,mysql)。
Tuple:Storm內(nèi)部數(shù)據(jù)傳輸?shù)幕締卧锩娣庋b了一個List對象,用來保存數(shù)據(jù)。
StreamGrouping:數(shù)據(jù)分組策略
---- 7種:ShuffleGrouping(Random函數(shù)random.nextInt(2))、NonGrouping(Random函數(shù))、FieldGrouping(Hash取模hashcode%num)、Local or ShuffleGrouping(本地或隨機,優(yōu)先本地)

  • 并發(fā)度
    topology在storm cluster中運行時,并發(fā)主要和3個邏輯實體有關(guān):worker,executor,task
    worker是一個進程,executor是worker進程中的工作線程。一個Executor中只能運行隸屬于同一個component(spout/bolt)的task。一個Worker進程中可以有一個或多個Executor線程。在默認情況下,一個Executor運行一個task。每個component(spout/bolt)的并發(fā)度就是這個component對應的task數(shù)量。
    例:



    圖中是一個包含有兩個 worker 進程的拓撲。其中,藍色的 BlueSpout 有兩個 executor,每個 executor 中有一個 task,并行度為 2;綠色的 GreenBolt 有兩個 executor,每個 executor 有兩個 task,并行度也為2;而黃色的YellowBolt 有 6 個 executor,每個 executor 中有一個 task,并行度為 6,因此,這個拓撲的總并行度就是 2 + 2 + 6 = 10。具體分配到每個 worker 就有 10 / 2 = 5 個 executor。

一個worker只屬于一個topology,每個worker中運行的task只能屬于這個topology。 反之,一個topology包含多個worker,其實就是這個topology運行在多個worker上。一個topology要求的worker數(shù)量如果不被滿足,集群在任務分配時,根據(jù)現(xiàn)有的worker先運行topology。如果當前集群中worker數(shù)量為0,那么最新提交的topology將只會被標識active,不會運行,只有當集群有了空閑資源之后,才會被運行。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,461評論 6 532
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,538評論 3 417
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,423評論 0 375
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,991評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,761評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,207評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,268評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,419評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,959評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 40,782評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,983評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,528評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,222評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,653評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,901評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,678評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,978評論 2 374

推薦閱讀更多精彩內(nèi)容

  • 目錄 場景假設(shè) 調(diào)優(yōu)步驟和方法 Storm 的部分特性 Storm 并行度 Storm 消息機制 Storm UI...
    mtide閱讀 17,173評論 30 60
  • Storm入門系列之一:storm核心概念及特性 本文的將介紹一些 storm 入門的基礎(chǔ)知識,包括 storm ...
    zhaif閱讀 3,142評論 0 17
  • 什么是實時流計算? 主要的處理模式可以分為:流處理,批處理 流處理是直接處理,有時也分為在線,離線,近線(st...
    Bloo_m閱讀 5,072評論 1 1
  • Date: Nov 17-24, 2017 1. 目的 積累Storm為主的流式大數(shù)據(jù)處理平臺對實時數(shù)據(jù)處理的相關(guān)...
    一只很努力爬樹的貓閱讀 2,190評論 0 4
  • 如果有一天,我們吵架了 請千萬不要拿我暴露給你的缺點來攻擊我 那會讓我覺得 為了你我連自己都背叛 可到頭來 又怎樣
    蓋玉閱讀 209評論 0 0