1.storm簡介
a:storm是乙個開源免費的分布式實時計算系統,它可以輕鬆的處理無界的資料流。
b:storm只負責資料的計算,不負責資料的儲存。
2.storm應用場景
3.storm的核心技術組成
a:topology(拓撲)
乙個拓撲是乙個圖的計算,乙個拓撲是由若干個spout,bolt組成
b:stream(流)
流式storm的核心抽象,乙個流是乙個無界tuple序列,tuple可以包含整型,長整型,短整型,位元組,字元,雙精度數,浮點數,布林值和位元組陣列。
c:spout
spout是topology流的資料**。一般spout從外部**讀取tuple,然後提交到topology。
d:bolt
topology中的所有資料的處理都是在bolt中完成的。bolt可以完成資料過濾,業務處理,連線運算,連線,訪問資料庫等操作。
e:stream grouping(流分組)
流分組在bolt的任務中定義流應該如何分割槽。
f:task(任務)
每個spout或bolt在集群中執行許多任務,每個任務對應乙個執行緒的執行。
3.集群架構
nimbus:負責資源分配和任務排程
supervisor:負責接受nimbus分配的任務,啟動和停止屬於自己管理的worker程序。
task:worker中每乙個spout/bolt的執行緒稱為乙個task。
流程:a:在集群架構中,使用者提交到任務到storm,交由nimbus處理。
b:nimbus通過zookeeper進行查詢supervisor的情況,然後選擇supervisor進行執行任務。
c:supervisor會啟動乙個work程序,在worker程序中啟動執行緒進行執行具體的業務邏輯。
4.工作程序,執行器,任務之間的關係
a:工作程序(worker):在storm中,所提交的topology將會在supervisor伺服器上啟動獨立的程序來執行。
b:執行器(executor):是在worker中執行的執行緒,在向topology新增spout或bolt時可以設定執行緒數。
d:任務(task):是在執行器中最小的工作單元。
在預設的情況下task和executor的 數量是一樣的,也就是說,預設情況下storm會在每個執行緒上執行乙個task。
storm學習筆記
1 基礎概念 元組 訊息傳遞的基本單元,支援所有的基本型別 字串和位元組陣列作為字段值。流 流由元組組成,spout是流的源頭從外部資料來源讀取元組並emit到拓撲中,bolt接收任何數量的輸入流執行處理後可能提交新的流。spout spout是拓撲的流的 是乙個拓撲中產生源資料流的元件。spout...
storm學習筆記
一,概述 storm用來實時計算源源不斷產生的資料,如同流水線生產。storm用來實時處理資料,特點 低延遲 高可用 分布式 可擴充套件 資料不丟失。提供簡單容易理解的介面,便於開發。二,storm和hadoop的區別 storm用於實時計算,hadoop用於離線計算。storm處理的資料儲存在記憶...
storm學習筆記(一)
1 storm介紹 storm特點 storm保障每個訊息至少能得到一次完整處理。任務失敗時,它會負責從訊息源重試訊息 系統的設計保證了訊息能夠得到快速的處理,使用 mq作為其底層訊息佇列 2 總體架構 storm中涉及的術語 3 storm在zookeeper中的資料存貯及使用 1 存貯 stor...