doPut:將批數據先寫入臨時緩衝區 putListhtml
doCommit:檢查 channel 內存隊列是否足夠合併apache
doRollback:channel 內存隊列空間不足,回滾數據負載均衡
doTake:將數據取到臨時緩衝區 takeList,並將數據發送到 HDFSide
doCommit:若是數據所有發送成功,則清除臨時緩衝區 takeListui
doRollback:數據發送過程當中若是出現異常,rollback 將臨時緩衝區 takeList 中的數據歸還給 channel 內存隊列spa
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 Processor、Load Balancing Sink Processor 和 Failover Sink Processor。
Default Sink Processor 對應的是單個的 Sink,Load Balancing Sink Processor 和 Failover Sink Processor 對應的是 Sink Group。
Load Balancing Sink Processor 能夠實現負載均衡的功能,Failover Sink Processor 能夠實現故障轉移的功能。