• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Flume的分布式日志聚合系統(tǒng)的研究

      2017-08-29 11:28:54陳軍
      科技視界 2017年11期
      關(guān)鍵詞:數(shù)據(jù)源數(shù)據(jù)流開源

      陳軍

      【摘 要】互聯(lián)網(wǎng)的迅猛發(fā)展以及大數(shù)據(jù)相關(guān)技術(shù)的興起,使得日志數(shù)據(jù)的規(guī)模日益劇增,給已有的日志采集及分析系統(tǒng)帶來了挑戰(zhàn);本文結(jié)合使用Flume、Elasticsearch 以及 Kibana等技術(shù)手段提出了一種分布式的日志采集分析系統(tǒng),從系統(tǒng)設(shè)計和架構(gòu)等方面提出了新的解決思路,并針對Flume的訪問日志進行了實時采集和分析及展示。

      【關(guān)鍵詞】日志采集;Flume;Elasticsearch;Kibana

      0 引言

      當(dāng)前隨著“互聯(lián)網(wǎng)+”時代的到來,分布系統(tǒng)需要處理的數(shù)據(jù)量更大、數(shù)據(jù)種類更豐富和數(shù)據(jù)實時性要求更高,面向分布式實時數(shù)據(jù)的分析技術(shù)日趨重要。面對高并發(fā)海量數(shù)據(jù)的實時處理,構(gòu)建滿足負載均衡、高可擴展性、高可用性和持久化多種特性的數(shù)據(jù)分析系統(tǒng)具有較大挑戰(zhàn)。數(shù)據(jù)采集器在應(yīng)對高并發(fā)的數(shù)據(jù)推送請求時,應(yīng)該進行負載均衡,最大程度的減少數(shù)據(jù)的緩存時間;數(shù)據(jù)采集系統(tǒng)的高擴展性主要用于實現(xiàn)異構(gòu)數(shù)據(jù)源的處理,對結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的兼容處理;面向數(shù)據(jù)流的實時數(shù)據(jù)分析系統(tǒng)需要通過主-備模式的集群保障系統(tǒng)的高可用;同時要對原始數(shù)據(jù)和數(shù)據(jù)分析指標(biāo)進行持久化,支持高并發(fā)的寫入。本文以開源的Apache Flume為底層數(shù)據(jù)采集技術(shù),從數(shù)據(jù)聚合的視角對分布式日志系統(tǒng)進行研究。

      1 日志分析技術(shù)國內(nèi)外研究現(xiàn)狀

      在大數(shù)據(jù)時代,日志數(shù)據(jù)分析的多樣化需求催生了多種日志分析技術(shù)。Apache Flume、ELK(ElasticSearch+Logstash+Kibana)、Scribe和Chukwa是等到廣泛關(guān)注和使用的開源日志分析技術(shù)。Flume當(dāng)前是Apache支持的項目,能夠為高效的采集、聚合和傳輸海量日志數(shù)據(jù)提供分布式、可靠的服務(wù)。

      Flume采用agent、cllector和storage agent的三層數(shù)據(jù)采集架構(gòu),agent支持console、RPC、text、syslog和tail等多種數(shù)據(jù)形式,cllector將多個agent的數(shù)據(jù)匯總后存儲到storage中。Flume利用多Master機制保障了高可用性,通過Zookeeper實現(xiàn)了配置數(shù)據(jù)的一致性。ELK是將ElasticSearch、Logstash和Kibana三種開源技術(shù)集成為一體實現(xiàn)數(shù)據(jù)的采集、過濾、分析和可視化的日志分析技術(shù)。Scribe 是由Facebook開發(fā)并開源的日志分析采集系統(tǒng),通過共享隊列將多數(shù)據(jù)源的日志暫存并根據(jù)中央存儲系統(tǒng)的健康程度選擇本地持久化還是推送到中存儲系統(tǒng)。Chukwa是一個基于Hadoop的HDFS和mapreduce計算模型的分布式數(shù)據(jù)采集系統(tǒng),包括agents、adaptor、cllectors和map/reduce jobs四大部件。

      開源日志分析技術(shù)涵蓋了普適環(huán)境下的數(shù)據(jù)采集模型的多個步驟:數(shù)據(jù)采集、數(shù)據(jù)緩沖、數(shù)據(jù)過濾與轉(zhuǎn)換、數(shù)據(jù)存儲?;谄者m環(huán)境下的數(shù)據(jù)采集模型提高數(shù)據(jù)采集的高可擴展性、數(shù)據(jù)緩沖的低延遲和數(shù)據(jù)存儲的高可用性將會是數(shù)據(jù)分析系統(tǒng)的研究熱點。

      2 基于規(guī)則引擎的日志聚合方案

      規(guī)則引擎是與應(yīng)用程序相嵌套的一種組件,實現(xiàn)了業(yè)務(wù)規(guī)則和應(yīng)用程序代碼的有效分離,適用于規(guī)則推理和業(yè)務(wù)編排。在日志分析過程中將繁雜的分離規(guī)則使用規(guī)則引擎進行描述,可以實現(xiàn)分析過程中自動高效的數(shù)據(jù)路由與聚合。Drools是基于rete算法將分離的匹配項以不同內(nèi)容動態(tài)的構(gòu)建層次化得匹配樹,是當(dāng)前效率較高、擴展性好的開源規(guī)則引擎。

      在Flume中,除了agent、channel和sink三種最重要的組件,還有攔截器、channel選擇器、sink處理器等增加Flume靈活性的組件。攔截器是位于agent和channel之間的用于攔截來自數(shù)據(jù)源的各種事件,多個攔截器構(gòu)成的鏈條構(gòu)成了漏斗型的數(shù)據(jù)過濾工具。Channel選擇器用來決定將接收到的事件寫入到哪個channel,支持必選和可選兩種類型的參數(shù)配置。sink處理器通過事先設(shè)定的sink組對組內(nèi)多個sink如何從各自的channel讀取事件,進而實現(xiàn)層次化Flume中數(shù)據(jù)推送的負載均衡和故障轉(zhuǎn)移。在Flume中,所有的組件的集成都是通過讀取Context實例化的鍵值類型的配置信息進行的。因此,為了實現(xiàn)Flume更大程度的靈活性,減少繁瑣的配置型信息的管理,有必要探索充分發(fā)揮規(guī)則引擎規(guī)則推理能力的高效方法。

      在深入分析interceptor、channel和sink可定制化的基礎(chǔ)上,作者對規(guī)則引擎如何與Flume多個組件進行結(jié)合進行了抽象。這里以channel選擇器的數(shù)據(jù)路由與聚合規(guī)則為例,對使用Drools規(guī)則引擎定義規(guī)則、生成規(guī)則摘要、構(gòu)造規(guī)則模型以及規(guī)則執(zhí)行器的處理全過程進行了剖析。提出了具有普適意義的日志聚合規(guī)則編程模型。

      3 分布式日志聚合系統(tǒng)框架

      在分析和研究Flume,以及日志聚合規(guī)則的基礎(chǔ)上,結(jié)合日志分析系統(tǒng)分布式、高并發(fā)的特性,將日志聚合系統(tǒng)分成數(shù)據(jù)采集、聚合服務(wù)和數(shù)據(jù)可視化三個層次。日志采集主要完成對多樣化數(shù)據(jù)源數(shù)據(jù)的采集,能夠?qū)Y(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)進行初步的匯總;聚合服務(wù)包括高并發(fā)請求的轉(zhuǎn)化和分離、數(shù)據(jù)流服務(wù)和日志數(shù)據(jù)的聚合;數(shù)據(jù)可視化支持定制化的數(shù)據(jù)指標(biāo)顯示,實現(xiàn)對應(yīng)用程序、服務(wù)器負載性能和關(guān)鍵業(yè)務(wù)多維度數(shù)據(jù)指標(biāo)的展示。

      日志采集層主要采用RPC的形式收集數(shù)據(jù),并將數(shù)據(jù)推送到influxdb實時數(shù)據(jù)庫中,完成數(shù)據(jù)的初步采集。隨著數(shù)據(jù)源的不斷增加,在日志采集末端需要構(gòu)建層次化的采集模型有效的均衡influxdb接收數(shù)據(jù)源推送數(shù)據(jù)的壓力。

      聚合服務(wù)層一方面要對高并發(fā)的日志數(shù)據(jù)分析請求進行轉(zhuǎn)化和分離,提供數(shù)據(jù)流服務(wù)實現(xiàn)負載均衡;另一方面要對實時數(shù)據(jù)流進行分析,根據(jù)聚合規(guī)則模型實現(xiàn)日志的分類匯總。Influxdb對時序數(shù)據(jù)流根據(jù)關(guān)鍵詞進行初步的過濾,獲取目標(biāo)分析數(shù)據(jù)。結(jié)合基于規(guī)則引擎構(gòu)建的日志聚合方案依據(jù)日志信息的上下文對日志進行分類,當(dāng)前端請求日志分析指標(biāo)時根據(jù)不同維度提供數(shù)據(jù)流服務(wù)。

      日志分析指標(biāo)可視化,該層次首先接收數(shù)據(jù)流服務(wù)提供的實時數(shù)據(jù),并基于Granfana實現(xiàn)的日志分析指標(biāo)展示可定制化。日志分析指標(biāo)持久化可以實現(xiàn)對歷史日志分析指標(biāo)的存儲,便于觀察關(guān)鍵指標(biāo)的長期趨勢。

      4 總結(jié)

      論文基于Flume的分布式日志聚合系統(tǒng)研究主要從日志分析技術(shù)對比、基于規(guī)則引擎的日志聚合方案設(shè)計以及日志聚合系統(tǒng)的框架設(shè)計與實現(xiàn)三個方面進行了研究。在充分分析現(xiàn)有日志分析技術(shù)的基礎(chǔ)上,對數(shù)據(jù)聚合規(guī)則如何快速構(gòu)建的關(guān)鍵問題進行研究,本文提出了基于Drools規(guī)則引擎構(gòu)建聚合規(guī)則的普適性的編程模型。并通過構(gòu)建層次化得分布式日志聚合系統(tǒng)架構(gòu)對模型進行驗證,實驗表明規(guī)則引擎的引入,簡化了配置數(shù)據(jù)的管理,對Flume擴展性和靈活性有很大提升。

      【參考文獻】

      [1]宋密,王勁松.基于Flume的網(wǎng)絡(luò)安全可視化系統(tǒng)[J].天津理工大學(xué)學(xué)報,2015,02:38-42.

      [2]馬延超,王超,李尚同.基于大數(shù)據(jù)技術(shù)的日志統(tǒng)計與分析系統(tǒng)研究[J].電腦知識與技術(shù),2016,(34):9-11.

      [責(zé)任編輯:朱麗娜]

      猜你喜歡
      數(shù)據(jù)源數(shù)據(jù)流開源
      汽車維修數(shù)據(jù)流基礎(chǔ)(下)
      五毛錢能買多少頭牛
      一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機制
      Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
      基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
      大家說:開源、人工智能及創(chuàng)新
      開源中國開源世界高峰論壇圓桌會議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
      基于數(shù)據(jù)流聚類的多目標(biāo)跟蹤算法
      開源計算機輔助翻譯工具研究
      基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
      永城市| 慈利县| 丰宁| 青冈县| 巴青县| 台北市| 新河县| 兴国县| 琼海市| 自贡市| 城步| 荆州市| 古丈县| 天镇县| 九江市| 娱乐| 拉萨市| 浮梁县| 五峰| 鄂尔多斯市| 洪洞县| 胶南市| 邵东县| 晋州市| 诏安县| 延安市| 抚远县| 洛宁县| 澎湖县| 桂阳县| 子洲县| 抚顺市| 安仁县| 玉田县| 安西县| 乾安县| 花莲市| 临夏县| 玛曲县| 分宜县| 治多县|