大資料開發技術之自定義MySQLSource過程
阿新 • • 發佈:2021-08-09
自定義Source說明
Source是負責接收資料到Flume Agent的元件。Source元件可以處理各種型別、各種格式的日誌資料,包括avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy。官方提供的source型別已經很多,但是有時候並不能滿足實際開發當中的需求,此時我們就需要根據實際需求自定義某些Source。
如:實時監控MySQL,從MySQL中獲取資料傳輸到HDFS或者其他儲存框架,所以此時需要我們自己實現MySQLSource。
官方也提供了自定義source的介面:
官網說明:https://flume.apache.org/FlumeDeveloperGuide.html#source
自定義MySQLSource組成
自定義MySQLSource步驟
根據官方說明自定義MySqlSource需要繼承AbstractSource類並實現Configurable和PollableSource介面。
實現相應方法:
getBackOffSleepIncrement()//暫不用
getMaxBackOffSleepInterval()//暫不用
configure(Context context)//初始化context
process()//獲取資料(從MySql獲取資料,業務處理比較複雜,所以我們定義一個專門的類——SQLSourceHelper來處理跟MySql的互動),封裝成Event並寫入Channel,這個方法被迴圈呼叫
stop()//關閉相關的資源
想了解更多大資料培訓開發技術知識,請關注我,有更多精彩內容分享!
文章轉載連結:http://www.atguigu.com/jsfx/13298.html