佘 東,朱曉彥,丁 俊
(安徽工業(yè)經(jīng)濟職業(yè)技術學院計算機系,安徽 合肥230051)
我國是一個多地質(zhì)災害國家,由地質(zhì)災害引發(fā)的滑坡、崩塌、泥石流、地面塌陷和地裂縫等給人民生活造成了極大的隱患。利用網(wǎng)絡,將遍布在各自動監(jiān)測站的位移傳感器、雨量計、視頻監(jiān)測信息所生成的水文、土壤等地質(zhì)數(shù)據(jù)發(fā)布到云計算平臺,通過虛擬機進行集中計算處理,生成相關預警信息,并生成Web Service,發(fā)布到用戶電腦和手機中,能有效即時的進行地質(zhì)災害預警,指導災后重建,緩解人民群眾生命財產(chǎn)損失。
現(xiàn)有的地質(zhì)災害預警一般采用傳統(tǒng)的廣播、短信等預警方式。通過收看天氣預報,向相關部門打電話、發(fā)短信等方式通知,這些方法內(nèi)容單一,信息不夠全面,且實時性不強,無法即時有效的開展地質(zhì)災害預防和救援。部分地市在上述方法基礎上建立了地質(zhì)災害預警系統(tǒng),通過野外實時調(diào)查數(shù)據(jù)和現(xiàn)有資料數(shù)據(jù)進行比對,進行統(tǒng)計分析,建立預警模型(見圖1),該方法較好的解決了地質(zhì)災害預警的科學性問題,但該方法需要各地市建立相應的數(shù)據(jù)服務器進行計算存儲,軟硬件投資較大,且需要大量的專業(yè)技術人才,產(chǎn)生的數(shù)據(jù)又是局部的,無法即時的進行數(shù)據(jù)共享,導致所建立預警模型也是局部的,缺少全局信息,形成所謂的信息孤島,給災害預防和救援帶來不便。

圖1 現(xiàn)有的地質(zhì)災害預警系統(tǒng)示意圖
目前,學術界對云計算(Cl oud Co mputing)還沒有一個標準定義。一般認為云計算是虛擬化(Virtualization)、并行計算(Parallel Co mputing)、分布式計算(Distributed Computing)、網(wǎng)格計算(Grid Co mputing)、效用計算(Utility Co mputing)、網(wǎng)絡存儲(Net work Storage Technologies)、負載均衡(Load Balance)等傳統(tǒng)計算機和網(wǎng)絡技術發(fā)展融合的產(chǎn)物[1]。云計算主要包括以下3個層次的服務:基礎設施即服務(IaaS),平臺即服務(PaaS)和軟件即服務(SaaS)[2]。筆者主要涉及平臺即服務(PaaS)和軟件即服務(SaaS)。SaaS(Soft ware-as-a-Service)是一種通過Internet提供軟件的模式,各地市地質(zhì)災害預警相關部門,無需安裝軟件,直接使用預警中心提供的基于Web的軟件服務,來即時的進行地質(zhì)災害預警處理。PaaS(Platform-as-a-Service)實際上是指將軟件研發(fā)的平臺作為一種服務,以SaaS的模式提交給用戶。筆者通過建立省一級的地質(zhì)信息云計算平臺,將服務器集中管理,通過服務器虛擬化建立地質(zhì)災害預警私有云,為SaaS模式提供應用。
虛擬化(Virtualization)在云計算中,主要指平臺虛擬化,它是基于云平臺架構的基礎性設計方法,它允許將服務器、存儲設備等其他硬件資源作為一個資源池,系統(tǒng)可以根據(jù)用戶需要來動態(tài)分配這些資源。筆者所用的虛擬化主要指服務器虛擬化,即將多個服務器操作系統(tǒng)利用虛擬化技術應用于同一服務器上,而不是像早期開發(fā)要分別運行在多個獨立的物理服務器中。通過這一方法,可以讓單一的物理服務器上運行多個虛擬服務器,并提供良好的安全性和隔離性,服務器虛擬化通過虛擬機監(jiān)視器(V MM)和虛擬化平臺(Hyper visor)提供對服務器硬件設備的抽象和對虛擬服務器的管理。
目前,常用的服務器虛擬化產(chǎn)品主要包括V Mware公司的v Sphere、V Mware Server、V Mware Wor kstation、V Mware Player、V Mware ESX Server;Micr osoft公司的 Hyper-V、Virtual PC,Virt ual Server;Citrix公司的Xen;IBM公司的z V M、Power V M等。筆者采用原生虛擬化,即虛擬化平臺直接運行在硬件之上的不是宿主操作系統(tǒng),采用Micr osoft的Hyper-V2.0虛擬化平臺。使用該平臺每臺實體服務器可同時執(zhí)行1024臺虛擬機,每臺虛擬機可虛擬12個網(wǎng)絡接口,處理32個虛擬處理器,并提供了其它豐富的指令集和設備接口。目前最新的Hyper-V3.0已于2012年9月5日發(fā)布,性能得到進一步的提高。

圖2 基于云計算的地質(zhì)災害預警系統(tǒng)結構圖
如圖2所示,系統(tǒng)總體設計分為3層:感知層、網(wǎng)絡層和應用層。
1)感知層 利用現(xiàn)有的分布在各地的地質(zhì)、水文、氣象等監(jiān)控站采集數(shù)據(jù),通過安裝DTU(Data Transfer unit,數(shù)據(jù)傳輸單元),將串口數(shù)據(jù)轉換為IP數(shù)據(jù)或?qū)P數(shù)據(jù)轉換為串口數(shù)據(jù),再通過無線通信網(wǎng)絡 GPRS(General Packet Radio Service,通用分組無線服務)傳送至微軟云計算平臺(部分數(shù)據(jù)亦可通過GSM、超短波、北斗衛(wèi)星等通信方式傳輸),云計算平臺通過無線終端設備、GPRS DTU接收軟件接收傳輸?shù)臄?shù)據(jù)[3]。部分通訊距離較長,環(huán)境惡劣的監(jiān)測站可使用RTU(Remote Ter minal Units,遠程終端單元)來進行數(shù)據(jù)監(jiān)測傳輸。
2)網(wǎng)絡層 云平臺在接收到數(shù)據(jù)后,將其傳送至云服務器,系統(tǒng)對采集到的信息進行數(shù)據(jù)管理、數(shù)據(jù)分析,并結合以往標準化數(shù)據(jù)進行地質(zhì)災害預警分析,生成地質(zhì)災害預警模型,對預警結果進行可視化顯示,并在分析超過預警臨界點時,自動發(fā)出預警提示信息[4],如圖3和圖4所示。
3)應用層 傳統(tǒng)的預警方式一般通過廣播、電話、短信等方式進行內(nèi)部預警(對相關負責人和災害處理人員)和外部預警(對全體公眾)。對公眾,因只需要知道簡要信息(如災害易發(fā)地不要去等),通過電視廣播、短信等方式就足夠了。但對內(nèi)部預警人員這些信息是不夠的(需即時了解災害的動態(tài)信息,以便即時開展災害預防和災后重建)。筆者通過云計算平臺在網(wǎng)絡層將預警數(shù)據(jù)模型生成Web Service,顯示在網(wǎng)站上。內(nèi)部預警人員可通過登錄網(wǎng)絡和智能手機調(diào)用Web Service的方法即時掌握地質(zhì)災害的最新信息,即時進行災害預處理和災后救援工作。

圖3 地質(zhì)災害預警分析子系統(tǒng)模塊
為保持Micr osoft的Hyper-V平臺的整體兼容和高效,云服務器采用 Windows Ser ver2008 R2,云數(shù)據(jù)端采用微軟的SQL Ser ver2008,系統(tǒng)軟件開發(fā)采用基于C#的微軟VS2010。對通過GPRS DTU接收軟件接收來的數(shù)據(jù),系統(tǒng)直接轉換存儲到SQL Ser ver2008中。同時,為方便網(wǎng)站和智能手機調(diào)用,利用VS2010平臺內(nèi)建的對 Web Ser vice的支持,將數(shù)據(jù)信息直接生成基于XML的Web Ser vice。動態(tài)網(wǎng)站使用ASP.NET技術的進行構建和使用,通過ADO.NET調(diào)用SQL Server2008中的數(shù)據(jù)或直接調(diào)用Web Ser vice,完成地質(zhì)災害預警平臺網(wǎng)站的建設。

圖4 雨量監(jiān)測子系統(tǒng)
由于智能手機的普及和GIS技術的成熟,項目組利用Android平臺架構,調(diào)取服務器產(chǎn)生的Web Ser vice,通過對Web Ser vice返回值進行數(shù)據(jù)比對,顯示相應的藍色(初級,提醒注意)、黃色(災害發(fā)生,注意警戒)、橙色(災害較為嚴重)、紅色(災害非常嚴重)預警信息。并通過對Google Map Api的二次開發(fā),自定義地圖圖層,將災害預警信息顯示在地圖上,方便用戶查詢[5],并可通過動態(tài)鏈接,顯示詳細的災害預防和救援網(wǎng)頁信息。
該預警平臺的使用,減輕了各地市對災害預警系統(tǒng)的重復投入,通過省一級的云計算平臺,實現(xiàn)了網(wǎng)路虛擬環(huán)境中地質(zhì)、氣象、水文等部門的數(shù)據(jù)共享,具有較高的性價比。該系統(tǒng)的建立,有效的增加了地質(zhì)災害預警的先期性和實時動態(tài)性,具有較強的實用性。在實際使用中,仍需進一步加強各部門聯(lián)系,規(guī)范各監(jiān)測站數(shù)據(jù)接口,加強數(shù)據(jù)安全保護,開發(fā)更多的Web Service應用,使系統(tǒng)性能得到進一步的提高。
[1]曾文英,趙躍龍,尚敏 .云計算及云存儲生態(tài)系統(tǒng)研究[J].計算機研究與發(fā)展,2011,48(z1):234-239.
[2]楊嫻,陳麟 .云計算環(huán)境下的應用虛擬化的研究[J].軟件,2012,33(4):74-77.
[3]何光軍,管群,韋方強,等 .基于云計算的災害數(shù)據(jù)處理方案的研究與設計[J].計算機工程與科學,2012,34(3):74-79.
[4]陳琳,齊文新,齊宇 .基于云計算的自動氣象監(jiān)測網(wǎng)絡系統(tǒng)[J].計算機應用,2012,32(5):1415-1417.
[5]佘東 .基于WebService的地質(zhì)災害預警系統(tǒng)的設計與實現(xiàn)[J].西安文理學院學報(自然科學版),2012,15(2):111-113.