Flume-事務與傳輸流程

1、Flume 事務

流程圖

Put 事務流程

doPut:將批數據先寫入臨時緩衝區 putListhtml

doCommit:檢查 channel 內存隊列是否足夠合併apache

doRollback:channel 內存隊列空間不足,回滾數據負載均衡

Take 事務流程

doTake:將數據取到臨時緩衝區 takeList,並將數據發送到 HDFSide

doCommit:若是數據所有發送成功,則清除臨時緩衝區 takeListui

doRollback:數據發送過程當中若是出現異常,rollback 將臨時緩衝區 takeList 中的數據歸還給 channel 內存隊列spa

 

2、Flume 傳輸流程

流程圖

重要組件:

4)Channel Selectorhtm

Channel Selector 的做用就是選出 Event 將要被髮往哪一個 Channel。共有兩種類型,分別是 Replicating Channel Selector (default)(複製)和 Multiplexing Channel Selector(多路複用)。blog

Replicating Selector 會將 source 過來的每個 Event 發往全部的 Channel,Multiplexing 會根據相應的原則,將不一樣的 Event 發往不一樣的 Channel。隊列

7)Sink Processor事務

Sink Processor 共有三種類型,分別是 Default Sink ProcessorLoad Balancing Sink ProcessorFailover Sink Processor

Default Sink Processor 對應的是單個的 Sink,Load Balancing Sink Processor 和 Failover Sink Processor 對應的是 Sink Group。

Load Balancing Sink Processor 能夠實現負載均衡的功能,Failover Sink Processor 能夠實現故障轉移的功能。

相關文章
相關標籤/搜索