久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

分布式海量日志采集,、聚合和傳輸系統(tǒng):Cloudera Flume

 richsky 2012-04-21


導讀:本文介紹了分布式海量日志采集、聚合和傳輸系統(tǒng)Cloudera Flume相關(guān)內(nèi)容,,F(xiàn)lume是Cloudera提供的日志收集系統(tǒng),,F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方。

關(guān)鍵詞:Flume Cloudera 日志收集 分布式數(shù)據(jù)庫

  Flume是Cloudera提供的日志收集系統(tǒng),,F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,,用于收集數(shù)據(jù);同時,F(xiàn)lume提供對數(shù)據(jù)進行簡單處理,,并寫到各種數(shù)據(jù)接受方(可定制)的能力,。

  Flume是一個分布式,、可靠、和高可用的海量日志采集,、聚合和傳輸?shù)南到y(tǒng),。

  

  上圖的Flume的Architecture,在Flume中,,最重要的抽象是data flow(數(shù)據(jù)流),,data flow描述了數(shù)據(jù)從產(chǎn)生,傳輸,、處理并最終寫入目標的一條路徑,。在上圖中,實線描述了data flow,。

  其中,,Agent用于采集數(shù)據(jù),agent是flume中產(chǎn)生數(shù)據(jù)流的地方,,同時,,agent會將產(chǎn)生的數(shù)據(jù)流傳輸?shù)絚ollector。對應的,,collector用于對數(shù)據(jù)進行聚合,,往往會產(chǎn)生一個更大的流。

  Flume提供了從console(控制臺),、RPC(Thrift-RPC),、text(文件)、tail(UNIX tail),、syslog(syslog日志系統(tǒng),,支持TCP和UDP等2種模式),exec(命令執(zhí)行)等數(shù)據(jù)源上收集數(shù)據(jù)的能力,。同時,,F(xiàn)lume的數(shù)據(jù)接受方,可以是console(控制臺),、text(文件),、dfs(HDFS文件)、RPC(Thrift-RPC)和syslogTCP(TCP syslog日志系統(tǒng))等,。

  其中,,收集數(shù)據(jù)有2種主要工作模式,如下:

  Push Sources:外部系統(tǒng)會主動地將數(shù)據(jù)推送到Flume中,,如RPC、syslog,。

  Polling Sources:Flume到外部系統(tǒng)中獲取數(shù)據(jù),,一般使用輪詢的方式,,如text和exec。

  注意,,在Flume中,,agent和collector對應,而source和sink對應,。Source和sink強調(diào)發(fā)送,、接受方的特性(如數(shù)據(jù)格式、編碼等),,而agent和collector關(guān)注功能,。

  Flume Master用于管理數(shù)據(jù)流的配置,如下圖,。

  

  為了保證可擴展性,,F(xiàn)lume采用了多Master的方式。為了保證配置數(shù)據(jù)的一致性,,F(xiàn)lume引入了ZooKeeper,,用于保存配置數(shù)據(jù),ZooKeeper本身可保證配置數(shù)據(jù)的一致性和高可用,,另外,,在配置數(shù)據(jù)發(fā)生變化時,ZooKeeper可以通知Flume Master節(jié)點,。

  Flume Master間使用gossip協(xié)議同步數(shù)據(jù),。

  下面簡要分析Flume如何支持Reliability、Scalability,、Manageability和Extensibility,。

  Reliability:Flume提供3中數(shù)據(jù)可靠性選項,包括End-to-end,、Store on failure和Best effort,。其中End-to-end使用了磁盤日志和接受端Ack的方式,保證Flume接受到的數(shù)據(jù)會最終到達目的,。Store on failure在目的不可用的時候,,數(shù)據(jù)會保持在本地硬盤。和End-to-end不同的是,,如果是進程出現(xiàn)問題,,Store on failure可能會丟失部分數(shù)據(jù)。Best effort不做任何QoS保證,。

  Scalability:Flume的3大組件:collector,、master和storage tier都是可伸縮的。需要注意的是,F(xiàn)lume中對事件的處理不需要帶狀態(tài),,它的Scalability可以很容易實現(xiàn),。

  Manageability:Flume利用ZooKeeper和gossip,保證配置數(shù)據(jù)的一致性,、高可用,。同時,多Master,,保證Master可以管理大量的節(jié)點,。

  Extensibility:基于Java,用戶可以為Flume添加各種新的功能,,如通過繼承Source,,用戶可以實現(xiàn)自己的數(shù)據(jù)接入方式,實現(xiàn)Sink的子類,,用戶可以將數(shù)據(jù)寫往特定目標,,同時,通過SinkDecorator,,用戶可以對數(shù)據(jù)進行一定的預處理,。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多