您好,登錄后才能下訂單哦!
這篇文章主要介紹“Flume基礎架構是什么”,在日常操作中,相信很多人在Flume基礎架構是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Flume基礎架構是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
Flume是Cloudera提供的一個高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸的系統。Flume基于流式架構,靈活簡單。
Agent是一個JVM進程,它以事件的形式將數據從源頭送至目的。
Agent主要有3個部分組成,Source、Channel、Sink。
Source是負責接收數據到Flume Agent的組件。Source組件可以處理各種類型、各種格式的日志數據,包括avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy。
Channel是位于Source和Sink之間的緩沖區。因此,Channel允許Source和Sink運作在不同的速率上。Channel是線程安全的,可以同時處理幾個Source的寫入操作和幾個Sink的讀取操作。 Flume自帶兩種Channel:Memory Channel和File Channel。(主要用Memory,一般銀行,保險等業務需要使用File落盤)
Memory Channel是內存中的隊列。Memory Channel在不需要關心數據丟失的情景下適用。如果需要關心數據丟失,那么Memory Channel就 不應該使用,因為程序死亡、機器宕機或者重啟都會導致數據丟失。
File Channel將所有事件寫到磁盤。因此在程序關閉或機器宕機的情況下不會丟失數據。
Sink不斷地輪詢Channel中的事件且批量地移除它們,并將這些事件批量寫入到存儲或索引系統、或者被發送到另一個Flume Agent。
Sink組件目的地包括hdfs、logger、avro、thrift、ipc、file、HBase、solr、自定義。
傳輸單元,Flume數據傳輸的基本單元,以Event的形式將數據從源頭送至目的地。Event由Header和Body兩部分組成,Header用來存放該event的一些屬性,為K-V結構,Body用來存放該條數據,形式為字節數組。
到此,關于“Flume基礎架構是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。