趙正+呂浩涵
【摘要】 流式處理既可以對海量數據實時分析以減少延遲,又可以對海量價值比較低的數據進行預處理再存儲,有效節省存儲空間,有利于提高后續數據處理的效率。本文在對三種流式處理框架分析的基礎上,采用流式處理框架,建立實時交通信息流式處理模型,從數據的實時采集、數據緩沖、流式計算及數據存儲方面來進行分析。
【關鍵詞】 流式處理框架 交通信息 應用
一、前言
隨著經濟的快速發展及城市化進程的加快,機動車的數量越來越多,交通需求與道路設施之間的矛盾愈發尖銳,掌握實時交通信息狀況,合理選擇出行路線,成為人們出行前不得不考慮的問題。計算機應用系統的不斷發展、通信網絡技術和傳感器的不斷進步,數據采集、數據傳輸能力大大增強,使人類能夠獲取實時交通信息,如交通實驗觀測數據、交通導航服務信息、交通傳感器網絡監控數據、交通實時速度數據、交通攝像機監控數據等,這種在動態環境中產生的信息構成了連續不斷的流式數據。先存儲后處理是傳統的數據處理方式,而這種方式無法滿足海量數據實時處理的需求,流式處理應運而生。流式處理既可以對海量數據實時分析以減少延遲,又可以對海量價值比較低的數據進行預處理再存儲,有效節省存儲空間,有利于提高后續數據處理的效率。
二、流式處理框架介紹
1、流式處理Storm。Storm是一個免費開源的分布式實時計算系統,簡化了流數據的可靠處理,可用于任意編程語言。使用時,先要設計一個用于實時計算的圖狀結構,這個圖狀結構將會被提交給集群,由集群中的masternode(主控節點)分發代碼,將任務分配給workernode(工作節點)執行。一個圖狀結構中包括bolt和spout兩種角色,spout負責發送數據流,bolt負責轉換數據流,同時bolt可以完成計算、過濾等操作。
2、流式處理Spark。Spark是一種開源集群計算環境,Spark啟用了內存分布數據集,除了能夠提供交互式查詢外,它還可以優化迭代工作負載。Spark是在Scala語言中實現的。Spark可用來構建大型的、低延遲的數據分析應用程序。Spark在處理前按時間間隔預先將Stream數據分成小的時間片斷(幾秒),以類似batch批量處理的方式來處理這小部分數據。
3、流式處理Samza。Samza是一個開源框架,它是一個分布式流處理框架,專用于實時數據的處理。Samza是在Hadoop基礎上建立的,而且使用了LinkedIn自家的Kafka分布式消息系統。Samza可以幫助開發者構建應用、處理消息隊列、更新數據庫、計數以及其他的聚合、轉換消息等等。
三、實時交通信息的流式處理模型
對實時交通信息的處理,流式處理框架可以發揮重要作用。利用流式處理框架,建立實時交通信息流式處理模型,主要包括數據采集、數據接入、流式計算和數據存儲四個過程。交通數據采集子系統從采集設備上實時地獲取交通信息,然后把數據匯總后轉發給緩沖系統,緩沖系統為數據傳輸到計算系統起到緩沖作用,協調采集數據的速率和計算系統處理數據的速率。然后流式計算系統對信息進行相應的實時計算處理,并將計算結果存入存儲單元。各個過程分析如下:
1、數據采集。實時交通信息數據采集主要通過環形感應線圈、雷達、圖像傳感器、紅外線傳感器等裝置來實現,根據城市路網結構、主要干道交通流歷史數據,合理地分布交通流檢測裝置,可以有效地采集到城市交通網絡狀況信息。實時交通信息數據采集需要保證采集速度快、可靠性高、能實時監聽數據變化。
2、數據接入。考慮到采集數據的速度和數據處理的速度可能不同步,需要對數據進行緩沖處理,并且要保證延遲性不能太長。為此可以采用分布式發布訂閱系統,其中包括一些消息生產者以及消息訂閱者,消息生產者主要用于收集數據,多個服務器進行緩沖,而消息訂閱者主要對數據訂閱。利用這種緩沖處理,有利于控制和優化數據流經系統的速度。
3、流式計算。流式計算有著實時性要求高、持續計算、數據產生速率不定的特點。數據收集產生的流式數據速率快,需要計算系統能實時計算,有足夠的低延遲性,結果反饋需要保證時效性。同時,流式計算環境中大多數的流式數據是不被保存的,且一般只使用一次、易丟失,計算系統需要有容錯能力。數據的產生是動態的,速率在前后時刻可能發生變化,因此計算系統要有良好的伸縮性,有效利用資源。在實時場景中,可以引入內存數據庫及分布式應用程序協調服務器,盡量保證流式計算有很好的處理效果。
4、數據存儲。根據實時交通信息監測數據,異常檢測、異常狀況分析、路況分析、下一時段交通流量預測等業務不同的需求對結果進行不同方式的存儲處理。
結論:本文在對三種流式處理框架分析的基礎上,采用流式處理框架,建立實時交通信息流式處理模型,從數據的實時采集、數據緩沖、流式計算及數據存儲方面來進行分析,說明流式處理框架在實時交通信息處理中有很大的實用性。
參 考 文 獻
[1] 閔真. 基于物聯網技術的交通信息采集系統[D].南昌:南昌大學(碩士學位論文),2012.
[2] 方艾芬,蔡崗,繆新頓. 基于大數據的機動車緝查布控平臺構建[J]. 警察技術. 2014(06).
[3] 孟小峰,慈祥. 大數據管理:概念、技術與挑戰[J]. 計算機研究與發展. 2013(01).