Flume-事務與傳輸流程


一、Flume 事務

流程圖

Put 事務流程

doPut:將批數據先寫入臨時緩沖區 putList

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

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

Take 事務流程

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

doCommit:如果數據全部發送成功,則清除臨時緩沖區 takeList

doRollback:數據發送過程中如果出現異常,rollback 將臨時緩沖區 takeList 中的數據歸還給 channel 內存隊列

 

二、Flume 傳輸流程

流程圖

重要組件:

4)Channel Selector

Channel Selector 的作用就是選出 Event 將要被發往哪個 Channel。共有兩種類型,分別是 Replicating Channel Selector (default)(復制)和 Multiplexing Channel Selector(多路復用)。

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 可以實現故障轉移的功能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM