《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 面向大數據的Storm框架研究與應用
面向大數據的Storm框架研究與應用
2016年微型機與應用第06期
趙菲1,林穗1,高西剛2
(1 廣東工業大學 計算機學院,廣東 廣州 510006; 2 廣東訊飛啟明科技發展有限公司,廣東 廣州 510530)
摘要: 大數據計算主要包括批量計算和實時計算,針對批量計算處理的都是歷史數據而不能實現低延遲高響應的缺點,基于Storm并借助開源框架Flume、Kafka,設計了一個實時數據收集與處理的系統,將數據轉為流的形式,對收集來的數據直接在內存以流的形式進行計算,輸出有價值的信息。最后對系統進行性能測試以及計算能力的測試。實驗結果表明,該系統可擴展性良好,且并行計算能力穩定,適合大量實時數據處理。
Abstract:
Key words :

  趙菲1,林穗1,高西剛2

  (1 廣東工業大學 計算機學院,廣東 廣州 510006;2 廣東訊飛啟明科技發展有限公司,廣東 廣州 510530)

  摘要:大數據計算主要包括批量計算和實時計算,針對批量計算處理的都是歷史數據而不能實現低延遲高響應的缺點,基于Storm并借助開源框架Flume、Kafka,設計了一個實時數據收集與處理的系統,將數據轉為流的形式,對收集來的數據直接在內存以流的形式進行計算,輸出有價值的信息。最后對系統進行性能測試以及計算能力的測試。實驗結果表明,該系統可擴展性良好,且并行計算能力穩定,適合大量實時數據處理。

  關鍵詞:實時計算;Storm;并行編程

0引言

  近些年,大數據已迅速成為科技界、學術界關注的熱門話題。有國家指出,大數據就是“未來的新石油”,擁有數據的規模和運用數據的能力將會成為一個國家綜合國力的重要組成部分[1]?;ヂ摼W、社交媒體等眾多行業領域每天都產生GB甚至TB的數據。隨著數據量的指數級增長,也催生了一批大數據處理技術。目前,最流行的莫過于Hadoop分布式存儲計算平臺[2]。Hadoop適合對數據進行批量處理,可以應用到日志分析、建立索引等方面[3]。這些都是對歷史數據進行集中處理,但是在對待實時數據方面,Hadoop卻顯得有些力不從心。由此,Twitter公司研發出開源的實時數據計算技術Storm,它的出現使得大數據的實時處理成為可能。

1Storm簡介

  Storm是一個分布式的實時計算系統,它可以方便地在一個計算機集群中編寫復雜的實時計算。Storm之于實時處理,就好比Mapreduce批處理[4]。其主要應用場景有流數據處理、實時搜索等[5]。Storm保證每個消息都會得到處理,而且它很快——在一個小集群中,每秒可以處理數以百萬計的消息。

  Storm實現了一種流式處理模型,流是一種有順序并且連續到達的數據。在Storm計算模型中,主要有兩類計算過程,分別是Spout計算過程和Bolt計算過程。Spout、Bolt分別由用戶自己實現SpoutInterface和BoltInterface兩類接口。Spout用于一個Topology拓撲生產消息,一般是從外部數據源接入,將數據流以tuple的形式傳遞給Bolt,Bolt去處理傳過來的tuple。

2實時數據收集系統的設計

  由于傳統的數據收集與處理通常是將文件離線存儲在硬盤上,再進行處理,實時性不高。為了解決這個問題,基于Storm開發一個實時數據收集與處理的系統,該系統直接將數據轉為流的形式進行處理,而不再存儲到文件,從而實現高響應低延遲。

  為了保證整個系統的健壯性及可維護性,采取Flume和Kafka框架對實時數據進行收集與緩存,Storm則對實時數據流進行處理。圖1為整個系統的架構圖。

  

001.jpg

  2.1Flume

  Flume是一個分布式的、能有效地收集、移動大量日志數據的框架。它有一個簡單的和靈活的基于流的數據流架構。這是強大的容錯的可靠性機制和多故障轉移和恢復機制。Flume的核心組件中包含source、channel,sink。source允許快速接入各種數據源,數據經過channel管道的暫存,最終sink使得數據流向多種目的地。

  2.2Kafka

  Kafka是一個分布式發布訂閱消息系統。核心組件包括producer、broker和consumer。一個單一的Kafka的broker可以處理數百兆字節讀取和寫入每秒從成千上萬的客戶。Kafka內部的消息隊列可以實現高吞吐量、高負載,當數據源頭數據量過大時,可以在Kafka內部得到有效的暫存,否則,Storm集群處理數據的速度可能趕不上數據源數據流動的速度,容易造成集群的性能減慢甚至宕機。

  2.3Storm工作機制

  Storm由主節點和從節點構成。主節點運行Nimbus進程,負責代碼的分發等分配任務。從節點Supervisor負責接收主節點分給它的任務,一般情況下,一個從節點上運行一個或多個進程Worker,每個進程中又產生一個或多個線程Excutor,線程用來執行Task任務,即Spout和Bolt業務邏輯。

  當一個Topology被定義好后,通過Storm的jar命令,將它打包上傳至主節點,主節點去zk檢查集群的狀態是否處于active,并且檢查集群中是否存在相同名字的Topology實例在運行,然后根據代碼中的參數來確定進程、線程、Spout和Bolt的數量,并設定Task任務的數量以及Task編號,將分配好的Task信息寫入zk中。整個過程主節點與從節點之間是不進行通信的,所有的通信通過zk來協調[6]。

3系統實現

  3.1數據源

  新浪微博作為時下流行的社交平臺,每時每刻都會產生不同的熱門話題以反映民眾的關注點。為了統計實時的熱門話題內容,采用在內存中不定時隨機產生不同的詞條的方法來模擬微博上的話題,并且通過Storm框架對數據進行分析統計出實時的熱門話題。

  通過內存中產生數據模擬實時數據,以log4j形式進行接收,Flume用avro網絡流的形式讀取log4j接收到的數據。采用XML配置集成log4j與Flume,完成數據源source對實時數據的讀取。圖2是Storm工作流程圖。

  

002.jpg

  3.2Flume集成Kafka

  雖然Flume已經自帶實現了avro sink、hdfs sink等多種sink,但是沒有對接Kafka的sink,因此,首先自定義流向到Kafka的sink。通過繼承一個AbstrackSink并且實現Configurable接口。其中有兩個核心方法,分別是configure()和process(),實現自定義Flume到Kafka的sink。

  3.3Storm處理數據流

  Spout是一個Topology的數據源,在服務器上應該時刻在產生數據,Spout讀取實時的數據。本文將數據以log4j的形式在內存中不斷產生,根據設計的系統,Spout將從Kafka中不斷讀取數據。這里不需要手動實現一個Spout,stormkafka的插件中已經提供好一個類KafkaSpout,使用它Storm會從Kafka中不斷讀數據。

  數據流流入bolt進行邏輯處理,Spout產生的話題作為關鍵字,對源碼進行分析可知,Bolt會根據“bytes”字段將接收過來的數據進行區分。根據設計的系統流程,每當產生一個話題,就向關系型數據庫插入一條數據,用來持久化。

  3.4系統性能測試

  當數據源不停產生數據時,可能會削弱Storm的計算能力,當海量數據產生時,甚至可能導致Storm的宕機。為了測試整個系統中Kafka的消息隊列是否能暫存大量的數據,采用多線程[7]技術,同時運行若干線程產生數據,每個線程產生相同的數據量,通過對Storm計算效率的對比來驗證。表1為Storm計算性能與線程數的關系。圖3為Storm處理數據量與時間的關系。

003.jpg

  通過上述圖表可以清晰地看出,Storm的計算時間是隨著數據量的增大線性遞增的,而不是指數型遞增,說明Storm的計算能力沒有隨著數據量的增大而削弱,在Kafka的作用下,數據得到了有效的緩存,使得Storm正常運作,從而保證整個系統的穩定性。

  3.5Storm并行度測試

  為了測試Storm橫向擴展給整個系統帶來的性能影響,分別在單個節點和集群的情況下進行測試。對paramhint參數設置,改變進程、線程數量,分析Storm計算能力。

  通過圖4、圖5可以得出,在單節點下,隨著線程數量的增多Storm計算能力反而減弱;而在集群下,隨著線程的增加計算能力增加。所以建議在非集群下,不要增加進 

004.jpg

005.jpg

 程的數量,此時隨并行度的增大計算能力會下降。無論是單節點還是集群,Storm的計算能力都會隨線程數量的增加而增強。

4結論

  本文通過對Storm的體系結構進行分析,結合Flume、Kafka框架,實現了一個實時數據收集與計算的系統。該系統具有良好的可擴展性。下一步的主要工作是接入實際生產中的數據源,如實時股票浮動數據、實時天氣數據等,并且對Storm的實時計算結果進行動態的可視化。

參考文獻

 ?。?] 程學旗,靳小龍,王元卓,等.大數據系統和分析技術綜述[J]. 軟件學報,2014,25(9):18891908.

  [2] 覃雄派,王會舉,杜小勇,等.大數據分析——RDBMS與MapReduce的競爭與共生[J].軟件學報,2012,23(1):3245.

  [3] 孫大為,張廣艷,鄭緯民.大數據流式計算:關鍵技術及系統實例[J].軟件學報,2014,25(4):839862.

 ?。?] 鄭曉薇,馬琳.基于Hadoop集群的多表并行關聯算法及應用[J].微型機與應用,2013,32(4):9193.

  [5] 鄧立龍,徐海水.Storm實現的應用模型研究[J].廣東工業大學學報,2014,31(3):114118.

 ?。?] 王銘坤,袁少光,朱永利,等.基于Storm的海量數據實時聚類[J].計算機應用,2014,34(11):30783081.

 ?。?] 王維,李濤,韓俊剛.一種多線程輕核機器中進程管理的硬件實現[J].電子技術應用,2013,39(3):4043.


此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          在线看无码的免费网站| 欧美日韩一级大片网址| 1769国内精品视频在线播放| 午夜日韩在线观看| 欧美日韩 国产精品| 一区二区高清视频在线观看| 国产农村妇女精品| 欧美精品久久久久久久久老牛影院| 欧美激情aaaa| 亚洲字幕一区二区| 一区二区福利| 欧美日韩三级一区二区| 女仆av观看一区| 亚洲欧美精品中文字幕在线| 久久精品国产亚洲aⅴ| 亚洲娇小video精品| 国产精品美女久久久久久免费| 在线免费观看日本一区| 国内精品久久久久久影视8| 国产在线欧美日韩| 欧美v国产在线一区二区三区| 国产精品视频不卡| 欧美激情国产高清| 国产综合久久久久久鬼色| 久久午夜羞羞影院免费观看| 欧美黄色一级视频| 国内成+人亚洲| 篠田优中文在线播放第一区| 久久福利电影| 在线亚洲欧美视频| 欧美日韩国产经典色站一区二区三区| 欧美人与禽性xxxxx杂性| 久久综合九色综合网站| 久久久久久噜噜噜久久久精品| 亚洲图片在线| 欧美视频精品在线| 国产精品羞羞答答xxdd| 欧美高清视频在线| 国产三级精品三级| 国产精品高潮粉嫩av| 蜜桃av噜噜一区二区三区| 久久久久欧美精品| 亚洲精品日韩久久| 日韩一二三区视频| 国产一区二区三区久久| 欧美黄在线观看| 久久中文精品| 夜夜嗨av一区二区三区四季av| 亚洲视频图片小说| 亚洲成人直播| 一本久久a久久精品亚洲| 国产亚洲aⅴaaaaaa毛片| 国产精品九色蝌蚪自拍| 尹人成人综合网| 国产精品99久久久久久有的能看| 国产精品mv在线观看| 欧美日韩色综合| 免费中文字幕日韩欧美| 久久综合九色欧美综合狠狠| 亚洲国产精品va在线观看黑人| 黑人巨大精品欧美一区二区| 性欧美大战久久久久久久免费观看| 欧美视频免费在线| 国产精品一区二区在线观看不卡| 欧美日韩国产页| 一区二区三区中文在线观看| 国产乱码精品一区二区三| 久久精品国产精品亚洲综合| 国产精品永久免费在线| 欧美大香线蕉线伊人久久国产精品| 国产精品国产自产拍高清av王其| 欧美高清在线播放| 美女性感视频久久久| 欧美精品日韩一本| 亚洲国产小视频| 亚洲欧洲精品一区二区| 国产一区二区三区免费在线观看| 在线不卡a资源高清| 久久九九久久九九| 欧美精品一区在线观看| 1204国产成人精品视频| 亚洲激情视频在线观看| 国产欧美精品在线观看| 夜夜嗨av一区二区三区免费区| 久久久久久久综合色一本| 欧美性做爰毛片| 午夜欧美精品| 亚洲最快最全在线视频| 欧美成人自拍视频| 亚洲在线免费观看| 国产精品视频网站| 亚洲欧美日韩国产中文| 欧美色图麻豆| 亚洲无亚洲人成网站77777| 久久精品一区二区| 国产一区二区三区自拍| 暖暖成人免费视频| 久久大逼视频| 国产日韩在线亚洲字幕中文| 欧美成人亚洲成人日韩成人| 国产精品不卡在线| 一本色道久久加勒比88综合| 亚洲片国产一区一级在线观看| 欧美日韩视频不卡| 激情亚洲网站| 欧美日韩成人激情| 欧美一区二区女人| 一区电影在线观看| 国产精品videossex久久发布| 1000部国产精品成人观看| 中文在线资源观看视频网站免费不卡| 亚洲国产成人午夜在线一区| 亚洲视频图片小说| 欧美三级乱人伦电影| 伊人久久大香线| 亚洲二区三区四区| 久久精品综合| 欧美不卡一区| 国产精品每日更新| 羞羞漫画18久久大片| 日韩午夜在线视频| 国产精品黄色| 久久久免费精品| 亚洲伦理在线| 久久久久久999| 亚洲国产精品久久久久久女王| 欧美一区二区三区在线观看| 亚洲欧美日韩高清| 国产酒店精品激情| 欧美日本国产一区| 欧美高清影院| 亚洲精品视频一区二区三区| 99视频国产精品免费观看| 极品av少妇一区二区| 欧美在线一二三| 亚洲麻豆视频| 99视频在线精品国自产拍免费观看| 国产日韩欧美中文| 久久久久网址| 影音欧美亚洲| 先锋影音一区二区三区| 欧美日韩精品一区二区在线播放| 性欧美大战久久久久久久免费观看| 国产精品乱码妇女bbbb| 国产精品久久久久久久久久久久久久| 国产欧美日韩视频在线观看| 欧美视频精品在线观看| 一本色道88久久加勒比精品| 亚洲级视频在线观看免费1级| 欧美激情第1页| 欧美一区二区播放| 欧美成人一区二区三区| 国产亚洲观看| 国产亚洲午夜高清国产拍精品| 国产精品青草久久久久福利99| 亚洲一区二区三区在线观看视频| 久久精品噜噜噜成人av农村| 国产精品乱码久久久久久| 久久久久久久久久久久久9999| 亚洲桃色在线一区| 亚洲图片自拍偷拍| 亚洲视频二区| 99国产精品视频免费观看| 欧美激情综合色| 欧美伊久线香蕉线新在线| 亚洲一区二区三区成人在线视频精品| 亚洲在线观看视频网站| 国产在线拍偷自揄拍精品| 国产精品美女www爽爽爽视频| 久久久精品国产免费观看同学| 亚洲美女黄色片| 在线电影欧美日韩一区二区私密| 精品动漫3d一区二区三区免费| 韩国久久久久| 欧美视频精品在线| 欧美日韩免费在线| 亚洲欧美日韩一区二区三区在线观看| 亚洲第一免费播放区| 亚洲裸体俱乐部裸体舞表演av| 亚洲第一精品夜夜躁人人爽| 久久久久久亚洲精品中文字幕| 亚洲深夜福利网站| 国产午夜精品一区理论片飘花| 国内综合精品午夜久久资源| 亚洲观看高清完整版在线观看| 亚洲精品一区久久久久久| 国产亚洲欧美日韩精品| 欧美va亚洲va香蕉在线| 亚洲永久免费视频| 久久久久久黄| 亚洲激情在线播放| 这里只有视频精品| 美女网站在线免费欧美精品| 韩国免费一区| 国产精品免费看久久久香蕉| 国产日韩一区二区三区| 一区二区三区我不卡| 国产精品日产欧美久久久久| 欧美日韩国产小视频| 亚洲欧美日本视频在线观看| 夜夜嗨av色综合久久久综合网| 99国产精品视频免费观看| 国产精品免费视频观看| 中文有码久久| 久久久精品2019中文字幕神马| 欧美日韩精品伦理作品在线免费观看| 欧美区一区二区三区| 国产亚洲欧美aaaa| 激情久久久久| 久久男人av资源网站| 亚洲一区二区三区精品动漫| 国产亚洲欧美一级| 欧美日本在线| 亚洲精品免费在线| 日韩亚洲欧美高清| 香蕉久久国产| 久久www成人_看片免费不卡| 在线精品视频一区二区三四| 欧美性生交xxxxx久久久| 久久精品观看| 美日韩精品视频| 国产视频久久久久久久| 国产在线拍揄自揄视频不卡99| 欧美日本乱大交xxxxx| 香港久久久电影| 可以免费看不卡的av网站| 国产精品高清免费在线观看| 精品成人一区二区三区四区| 欧美黄色网络| 国产午夜精品美女视频明星a级| 亚洲第一成人在线| 欧美韩日一区二区三区| 免费短视频成人日韩| 久久久久久97三级| 小嫩嫩精品导航| 亚洲精品美女在线| 国产精品久久久久久久久久ktv| 欧美日韩国产三区| 亚洲第一二三四五区| 99re热这里只有精品视频| 在线免费观看日韩欧美| 麻豆精品在线观看| 欧美视频二区| 午夜伦理片一区| 亚洲人成在线观看| 亚洲国产精品va在线观看黑人| 国产亚洲精品美女| 久久动漫亚洲| 欧美激情二区三区| 在线日本成人| 国产精品视频一二| 久久青青草综合| 妖精视频成人观看www| 亚洲毛片网站| 这里只有精品视频在线| 国产精品免费区二区三区观看| 亚洲国产精品va| 久久久久久久久岛国免费| 国产日韩欧美在线| 99香蕉国产精品偷在线观看| 亚洲欧美清纯在线制服| 欧美日韩卡一卡二| 免费成人激情视频| 欧美乱在线观看| 欧美成人在线免费观看| 欧美小视频在线观看| 在线观看日韩www视频免费| 亚洲人成人99网站| 久久免费视频这里只有精品| 日韩视频一区二区在线观看| 欧美有码视频| 正在播放欧美一区| 欧美国产精品专区| 亚洲一二三四区| 久久精品国产亚洲一区二区三区| 久久久久久久久蜜桃| 欧美一区二区三区精品电影| 蜜臀av性久久久久蜜臀aⅴ| 亚洲天堂av在线免费观看| 亚洲人成人99网站| 免费观看成人网| 亚洲狼人精品一区二区三区| 18成人免费观看视频| 亚洲激情一区二区三区| 国产精品视频免费观看www| 午夜国产欧美理论在线播放| 欧美激情综合亚洲一二区| 极品裸体白嫩激情啪啪国产精品| 国产一区999| 欧美日韩午夜| 欧美日韩日日夜夜| 亚洲深夜激情| 欧美精品国产精品| 欧美jizzhd精品欧美巨大免费| 欧美成人亚洲| 国产一区二区三区精品久久久| 欧美福利一区二区三区| 久久久www| 欧美午夜在线一二页| 欧美一区二区三区免费观看| 欧美久久99| 欧美成人免费观看| 久久综合色88| 好吊色欧美一区二区三区四区| 欧美14一18处毛片| 欧美日韩国产123区| 国产婷婷一区二区| 亚洲精品视频一区| 欧美一二三区精品| 国产欧美一区二区精品性色| 亚洲精品美女在线| 久久麻豆一区二区| 久久久亚洲精品一区二区三区| 激情综合激情| 亚洲永久精品大片| 99在线热播精品免费| 国产三区二区一区久久| 国产精品免费一区豆花| 日韩视频一区二区三区在线播放| 欧美色图首页| 亚洲无线一线二线三线区别av| 国产一区久久久| 欧美大秀在线观看| 日韩午夜电影| 欧美三区在线观看| 亚洲在线视频一区| 欧美日韩在线播放三区四区| 国产精品成人观看视频免费|