Storm並行度和流分組詳解

並行度

對於一個拓撲來說,並行度其實就是task,task是最小的計算單元,每個spout/bolt的相關代碼副本都會運行在一個task中。並不是executor,因爲默認情況下一個executor只有一個task,executor的數量和task是相等的。


流分組

流分組表示task與task之間數據流向的關係。如果bolt1有三個task會將數據流向到下游同樣三個task的bolt2。以下爲比較常用的分組策略:

  • Shuffle Grouping: 隨機發射,負載均衡
    如果bolt1的一個task發射三條數據,那麼每條數據會流向bolt2中的不同的task來達到負載均衡
  • Fields Grouping: 根據某一個,或者某些個字段fields進行分組
    task發射的每條數據稱爲tuple,tuple可以由很多個field組成,通過一個或者幾個field進行分組,同一組中的這些fields是相同的,那麼這組數據會流向同一個bolt2中的一個task
  • All Grouping: 一個task發射的數據會全部流向下游的每個task
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章