storm學習筆記

2022-02-12 20:28:52 字數 1382 閱讀 8420

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...