天天看點

storm的作業單元:Topology

Storm系統的資料處理應用單元,是被打包的被稱為Topology的作業。 它是由多個資料處理階段組合而成的,而每個處理階段在構造時被稱為元件(Component),在運作時被稱為任務。

那麼,元件根據作用的不同,在Storm中分為兩類:Spout元件和Bolt元件。而Topology就是這兩類元件通過資料流連接配接的一種計算邏輯結構。(也就是說,上一個組建處理的輸出結果,作為下遊元件的輸入資料流繼續處理。如下圖所示:

storm的作業單元:Topology

下來說明下一個Topology包含的這兩種元件(Spout和Bolt):

Spout:Storm中的資料源程式設計單元,用于為Topology生産消息(資料).一般會從外部資料源不間斷地讀取資料,并作為一定結構的資料項(Tuple元祖)傳遞給Topology處理。

Bolt:Storm中的資料處理程式設計單元,實作Topology中的相關資料處理邏輯。在Bolt中,程式設計人員可以實作資料過濾、聚合、查詢資料庫等操作,處理的結果以一定結構的資料項,以流式處理的方式向下遊元件傳遞和處理。

stream:元件間的資料傳遞分為三種形式,Stream grouping、All Grouping 、Drect Grouping等,具體等學習後再記錄咯~