GIS+=地理信息+行業+大數據——基於雲環境流處理平臺下的實時交通創新型app
應用程序已經是近代的一個最重要的IT創新。應用程序是連接用戶和數據之間的橋梁,提供即時訪問信息是最方便且呈現的方式也是easy理解的和令人愜意的。
然而,app開發人員。尤其是後端平臺能力,一直在努力跟上用戶的期望。記得第一次基於WAP技術的移動互聯網的日子嗎?過度炒作和預期不匹配的教訓。
36大數據專稿,原文作者:Ronnie Beggs, 本文由36大數據翻譯組-張小順翻譯向36大數據投稿,並授權36大數據獨家公布。不論什麽不表明來源於36大數據和譯者的轉載均為侵權。
在已經收錄的app應用程序中交通app已經處於率先地位,幫助遊客和乘客計劃(或又一次計劃)他們的旅行。然而。有多少次你使用一個應用程序依照最短的行車時間和最不擁擠的標準來計劃你的路線。但你仍然遲到?這正是。新南威爾士州運輸問題(TFNSW),澳大利亞政府機構負責管理的道路和公共交通網絡的悉尼和新南威爾士州(NSW)地區。澳大利亞,已經正在與Sqlstream合作處理的問題。
推動創新
這項倡議作為黑客馬拉松的實時交通應用程序開發始於2014年底。有50個左右的團隊進入。8個最有前途和創新的想法被TFNSW選擇並通過贊助在2015年年初推出。前五個應用程序已經啟動,有很多其它的尾隨。每個側重於旅行體驗的不同方面。
能夠到rms.nsw.gov.au站點獲得可用的應用程序和App Store的下載鏈接的完整描寫敘述。
Snarl 一款面向客戶提供接近其旅遊路線或位置的最新道路事故信息及網絡擁堵信息的工具。
TripGo 一款面向想要獲取最快捷旅程、或選擇最高效公共交通工具及基於生活和工作日歷須要設計智能線路信息客戶所提供即時旅程建議的個性化出行管家。
Auto 一款面向常常去一些地方旅行而且希望看到當前旅遊時間幫助這些客戶計劃什麽時候出發服務的一款工具。
Plan A 一款面向日程繁忙客戶提供最新阻塞信息、建議旅行時間及提醒客戶何時出發以確保可以準時達到目的地服務的一款工具。
EasyDrop 一款交互式工具來管理商用送貨司機日常的交貨時間表及提供最快的路線和最新的交通信息服務的一款工具。
(實時交通應用程序。端到端的旅程時間)
所以假設你在新南威爾士州地區,你正在嘗試使用一種提供準確、實時更新的應用程序。如像計劃的那樣準時到達,你非常可能正在使用TfNSW’s中某一個基於sqlstream流處理、實時數據中心和大數據技術支持的應用程序。
下一代IT實時應用程序體系架構
下一代的web應用程序平臺必須擴展到一個高速增長的應用程序社區提供準確、實時的信息,並支持同樣的核心平臺架構的很多應用程序。傳統的web架構提供按需訪問。但僅僅能提供基於數據庫存儲的歷史內容。正如傳統的企業數據管理架構,數據流管理平臺提供了更大的數據管理應用程序的實時可擴展性。
這並非說,現有的數據倉庫是冗余的,遠非如此。未來是一個集成的、統一的數據管理體系結構,利用最好的成熟技術的優勢。
TfNSW部署的旅行實時數據系統(TTDS,the Travel Time Data System )
主要web體系結構組成部分例如以下:
Data Warehouse(數據倉庫)主記錄保存在數據倉庫。在這樣的情況下。SQLServer。是數據挖掘平臺,趨勢分析和企業報告。SQLServer數據倉庫有非常多數據源,包含現有的企業系統。以及業務流量數據和通過實時數據流管理平臺的流媒體數據。
Real-time Data Hub for Enterprise Apps(企業應用實時數據中心)實時業務智能平臺是基於SQLstream’s SmartCity StreamApp建立的。業務用戶通過實時地圖為基礎的儀表盤和警報獲得可操作的見解。分析均來自超過10000輛輸入車載GPS和傳感器數據流的數據流,並結合數據倉庫中的歷史趨勢數據。
Scalable Web API Platform for Real-time Access(可擴展的web實時訪問接口平臺) web應用程序為智能手機應用程序提供了一個REST API接入接口。該接口支持行程時間更新,交通流量、事故信息和人群來源的實時查詢。當app訪問量添加時,額外的webserver資源加入到集群中。
Real-time Middleware(實時中間件) 跨應用和分布式server集群的可擴展性須要一個中間件基礎架構(Apache Kafka)。
實時交通應用API
應用程序開發者能夠訪問基於HTTP 1.1的移動應用程序流API。
該API連接到SQL數據流的實時應用平臺,並支持下面HTTP請求。
該API是基於道路網絡,交通流和事件。以及計算行程時間而提供服務的。
Config API(配置API):返回API的URI和client的配置值。
Route API(路線API):接受端到端的旅程路線的路徑和出發/到達時間。並返回在該道路上的路線行駛的時間和事故。
Progress API(進展API):接受設備的位置,速度和航向,返回在這條道路的旅程時間和當前事故。
Events API(事件API):返回道路網上的全部事故。
第三方開發人員也有機會獲得server端API開發自己的內部部署或基於雲的流處理應用程序。server端API通過第三方SQLstream Blaze系統提供實時交通數據。
實時旅行時間計算
帶有實時更新行程時間規劃是交通應用中最流行的一個類別。準確行程時間必須依據在該時間點道路上實際的交通量來計算。這就是大多數設備和web應用失敗的原因,單獨使用眾包的數據和歷史趨勢信息是不夠的。
行程時間數據系統結合車輛GPS數據和應用程序數據包及整個路網實時的交通流量和擁堵警報採用不同的計算方法。
SmartCity StreamApp包含實時交通理流量和擁堵分析儀表盤,是供內部使用,以交互的方式顯示整個道路網絡及基於地圖的儀表盤。
然而,應用程序開發者如今可以提供旅客訪問同樣的數據,通過他們的智能手機。以下的樣例是基於web版本號的Snarl’s應用程序提供最新的道路事故信息和交通擁堵信息。
路網表示為10米路段的GIS數據庫,共同擁有8000萬路段為新南威爾士州的網絡。
所述的SQLstream平臺更新交通流量和擁塞事件的預測過同一時候道路段和實時的每一個新的數據記錄。當中對於每一道路段的平均速度計算例如以下。
-
端到端的行程時間是通過10米道路段端到端的路由功能函數來計算的。
-
車輛的全球定位系統數據是用來計算車輛在過去15分鐘內走過的道路段的平均速度。
-
假設在過去的15分鐘沒有車輛走這一段路。那就用28天歷史平均水平相比15分鐘時間用於這條路。也就是說,周六上午9點的下一個最好的選擇將是平均28天的窗體內全部曾經周六的的上午9點/ 15分鐘時間內。
-
極端情況下,在過去28天沒有車輛行駛記錄,那就採用限速牌中的速度。
最大或者最小的行程時間的變化是基於方差和上面的計算方法而來的。方差的計算即至少兩個車輛的報道已超過不論什麽10m道路段。
實時更新被傳輸到兩個運營中心,交通流量和預測警報以彩色編碼和地圖作為顯示。也能夠通過移動應用流API向實時智能應用程序提供請求服務。
這些新的應用對通勤者意味著什麽呢?
下一代實時交通應用程序為乘客提供準確、可靠的行程時間和其它交通相關信息。
遠離依賴歷史和人群來源的數據意味著更高的可靠性,準確性和及時
性。然而,實時處理要求也須要改變思維方式。
通過擴展傳統的企業數據管理架構來擁抱數據流管理的優點,一個支持應用的實時平臺已經交付,規模與數據的增長和應用的吸收,而且有有利於全部相關方。
GIS+=地理信息+行業+大數據——基於雲環境流處理平臺下的實時交通創新型app