陳瑜彬 鄒冰玉 牛文靜 秦昊
摘要:針對目前我國主要流域防洪預報調(diào)度信息化平臺建設中普遍存在的數(shù)據(jù)處理效率低下、資源共享能力偏弱、軟件通用程度欠缺、立體化功能不全等不足,基于面向大數(shù)據(jù)平臺的網(wǎng)絡化服務理念,設計開發(fā)了流域防洪預報調(diào)度一體化系統(tǒng)。介紹了該系統(tǒng)的總體設計方案,并重點闡述了面向?qū)ο蟮拇髷?shù)據(jù)封裝、河網(wǎng)空間拓撲關系概化、契約模式的網(wǎng)絡服務構(gòu)建以及基于JSON的海量數(shù)據(jù)傳輸?shù)汝P鍵技術。系統(tǒng)在長江流域防洪預報調(diào)度決策中的成功應用驗證了其可靠性、實用性和擴展性。
關 鍵 詞:洪水預報; 防洪調(diào)度; 預報調(diào)度一體化; 大數(shù)據(jù); 網(wǎng)絡服務; 陸氣耦合
作為國家信息化的重要組成部分、水利現(xiàn)代化的基礎和標志,伴隨著計算機技術的推廣和應用,水利信息化近年來取得了飛速發(fā)展,全國主要流域的防洪預報與水庫調(diào)度系統(tǒng)日益健全、完善,逐步邁向自動化[1-4]。然而,隨著水文氣象數(shù)據(jù)種類繁多且逐年增多、業(yè)務對象不斷擴展且日趨復雜、系統(tǒng)用戶與日劇增且形式多樣,已有信息化平臺建設逐步顯現(xiàn)出數(shù)據(jù)處理效率低下、資源共享能力偏弱、軟件通用程度欠缺、立體化功能不全等不足[5-7]。具體表現(xiàn)在:① 數(shù)據(jù)處理能力偏弱,且缺乏統(tǒng)一的數(shù)據(jù)處理標準,而且水利部、流域機構(gòu)以及?。ㄊ校┓姥床块T各自為政,信息共享程度不高,形成了許多信息孤島,難以滿足當前水利信息建設工作中的一體化整體調(diào)控要求;② 兩大業(yè)務系統(tǒng)(洪水預報、防洪調(diào)度)平行式獨立建設,彼此業(yè)務耦合度低,無法滿足水利工程大規(guī)模投產(chǎn)后多阻隔河流防洪調(diào)度業(yè)務需求;③ 系統(tǒng)整體功能不健全、可擴展性不強、用戶處理單一,無法滿足不斷增多且復雜多變的管理層級、業(yè)務對象擴展需求。綜上,如何建設滿足流域洪水預報調(diào)度實際工作需求的一體化集成系統(tǒng)成為我國水利相關從業(yè)人員無法回避的重大實際問題[8-12]。
本次研究基于大數(shù)據(jù)平臺的網(wǎng)絡化服務理念,設計開發(fā)了流域防洪預報調(diào)度一體化系統(tǒng)。通過面向?qū)ο蟮拇髷?shù)據(jù)封裝、河網(wǎng)空間拓撲關系概化、契約模式的網(wǎng)絡服務構(gòu)建以及基于JSON的海量數(shù)據(jù)傳輸?shù)汝P鍵技術實現(xiàn)了洪水預報與防洪調(diào)度兩大業(yè)務相關海量數(shù)據(jù)的快速處理、分享與分析,提升了調(diào)度方案的在線編制能力,實現(xiàn)了公眾服務的實時擴展。目前,該系統(tǒng)已在長江流域投入使用,為長江流域防洪調(diào)度決策提供了強有力的技術支撐,并推廣應用至廣東省西江、北江、東江、珠江三角洲等10個流域。實例應用表明,該系統(tǒng)有效實現(xiàn)了資源整合與業(yè)務協(xié)同,具有擴展性好、數(shù)據(jù)處理能力強、深度耦合陸氣信息源等特點和優(yōu)勢,可為我國流域防洪調(diào)度管理工作提供切實可行的技術支撐平臺。
1 系統(tǒng)總體設計
1.1 系統(tǒng)總體架構(gòu)
流域防洪預報調(diào)度一體化系統(tǒng)以數(shù)據(jù)庫為基礎,以預報調(diào)度計算為核心,以輔助防汛抗旱決策為目標,集中服務于變化環(huán)境下的流域防洪預報調(diào)度管理工作。系統(tǒng)由數(shù)據(jù)層、業(yè)務層、應用層和信息安全管理體系等4個部分組成。
數(shù)據(jù)層是系統(tǒng)的“地基”,主要負責基礎資料和運行數(shù)據(jù)的存儲、修改等工作,同時為外部數(shù)據(jù)交互提供統(tǒng)一的數(shù)據(jù)庫訪問接口,并分別通過優(yōu)化前端緩存與連接池來加快數(shù)據(jù)傳輸速度;業(yè)務層是系統(tǒng)中連接“應用層”與“數(shù)據(jù)層”的中間紐帶,負責所有的數(shù)據(jù)處理交換以及業(yè)務規(guī)則的制定調(diào)整,主要功能包括模型計算服務、GIS類服務和資源管理類服務(如短信服務、郵件服務、傳真服務、推送服務);應用層是系統(tǒng)的“窗口”,主要用于展現(xiàn)相關的用戶管理、業(yè)務計算結(jié)果與信息交互等業(yè)務邏輯,主要功能包括水雨情監(jiān)視、防洪形勢分析、調(diào)度方案生成與評價等;信息安全管理是系統(tǒng)的“護衛(wèi)隊”,通過物理安全、網(wǎng)絡安全、信息安全及安全管理等多方面,為系統(tǒng)可能面臨的病毒泛濫、惡意軟件、信息失控、數(shù)據(jù)中斷等復雜應用環(huán)境提供相應的應急防御措施與安全保障[13-16]。此外,為進一步保障預報調(diào)度決策的信息安全,系統(tǒng)采用細粒度授權(quán)訪問模式與數(shù)據(jù)加密控制等手段,實現(xiàn)用戶權(quán)限與角色、功能緊密掛鉤,切實保障信息服務的可追溯性和底層數(shù)據(jù)的數(shù)據(jù)庫。
系統(tǒng)總體架構(gòu)如圖1所示。各模塊彼此關聯(lián)且相對獨立,有效實現(xiàn)邏輯計算業(yè)務與基礎單元的自主劃分與個性化調(diào)整,有效保證系統(tǒng)的安全性、魯棒性與穩(wěn)健性。
1.2 系統(tǒng)部署
為提高多用戶并發(fā)訪問時的計算速度和處理效率,系統(tǒng)采用圖2所示的分布式部署方案,所有服務均部署在分布式計算節(jié)點并利用集群進行統(tǒng)一管理,通過負載均衡機制保證實時響應用戶請求。其中,計算服務器是所有服務的總訪問入口,主要負責分發(fā)服務與管理集群;各計算節(jié)點是具體的處理單元,主要負責相關的洪水預報、防洪調(diào)度及查詢服務。實際應用時,用戶通過客戶端將相關需求傳遞到計算服務器,由計算服務器實時監(jiān)視所有節(jié)點當前運行狀況并從中找到負載最小的節(jié)點分發(fā)請求,當節(jié)點完成計算后逐層將結(jié)果返回用戶。
1.3 系統(tǒng)集成
系統(tǒng)嚴格遵循國家、行業(yè)技術標準和規(guī)范,利用SOA架構(gòu)實現(xiàn)了數(shù)據(jù)、接口及預報調(diào)度模型方案等多個業(yè)務的松散式集成,具體體現(xiàn)在4個方面:① 結(jié)合《實時雨水情數(shù)據(jù)庫表結(jié)構(gòu)與標識符》、水情專用數(shù)據(jù)庫以及其他數(shù)據(jù)庫表結(jié)構(gòu),完成了數(shù)據(jù)的標準化集成工作;② 對于需要海量數(shù)據(jù)處理、大數(shù)據(jù)分析的應用,以及自動計算的定時任務,采用數(shù)據(jù)交互的方式,通過消息隊列(MQ)發(fā)送數(shù)據(jù)處理請求,待計算完成后,直接從數(shù)據(jù)庫中獲取計算結(jié)果; ③ 對業(yè)務應用系統(tǒng)中的短信、傳真、郵件等業(yè)務進行應用接口集成,實現(xiàn)了各類業(yè)務的統(tǒng)一管理發(fā)布;④ 在分別開發(fā)完成各業(yè)務功能模塊后,首先按照系統(tǒng)總體架構(gòu)和菜單體系進行無縫集成,然后完成預報模型和方案(主要為模型或方案的參數(shù))的深度集成,實現(xiàn)數(shù)據(jù)資源管理類、應用拓展類、業(yè)務支撐類的相對獨立且有彼此耦合。
2 系統(tǒng)構(gòu)建關鍵技術
2.1 面向?qū)ο蟮拇髷?shù)據(jù)封裝技術
水文數(shù)據(jù)體量龐大、來源廣泛、類型繁多,通常涉及水文、氣象、水庫等多個部門,既包括水位、流量、雨量、蒸發(fā)等結(jié)構(gòu)化數(shù)據(jù),又包括輸沙率、河道地形、水文年鑒等半結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)[17-20]。如目前長江流域每天接收來自長江水利委員會水文局15個分中心、14個?。ㄖ陛犑校┧木?、中國氣象局、湖北省氣象局、三峽梯調(diào)中心、金沙江調(diào)控中心以及各支流集控中心等數(shù)十家單位(部門)的實時觀測數(shù)據(jù)約97萬條,年接收數(shù)據(jù)量約3.54億條。為高效合理使用這些數(shù)據(jù),滿足預報調(diào)度的使用需求,系統(tǒng)通過數(shù)據(jù)清洗、分析、歸類,采用面向?qū)ο蠹夹g將水文信息封裝為河道、水庫和雨量3個差異較大且彼此關聯(lián)的對象,并在此基礎上實現(xiàn)數(shù)據(jù)的可視化。具體來講,首先將各個對象劃分為相對獨立的基礎單元(如變量數(shù)目、內(nèi)在方法、單元屬性),然后隱蔽數(shù)據(jù)處理、數(shù)據(jù)挖掘、模型計算等技術細節(jié),只保留有限數(shù)據(jù)接口與外部進行數(shù)據(jù)交互。以圖3所示河道對象為例,通過個性化地封裝其成員屬性基本信息(如站名、站號、站別、防洪信息、歷史信息、實時信息、預報模型)與成員方法(如觸發(fā)式預報計算、專家交互式預報計算、成果保存、成果發(fā)布),既能直觀清晰地描述河道類水文信息,又可協(xié)助系統(tǒng)用戶以按圖索驥的方式快速獲得相關信息,進而顯著增強數(shù)據(jù)信息的可讀性與交互性。
2.2 基于河網(wǎng)空間拓撲關系概化圖的預報調(diào)度一體化技術? 隨著水庫群等水利工程的興建,河流的天然狀態(tài)已逐漸改變,河流上的預報點與調(diào)度點已成為緊密相連、密不可分的兩個關聯(lián)體,以串聯(lián)、并聯(lián)或混聯(lián)方式存在,相互制約影響,形成牽一發(fā)而動全身的局面。因此,系統(tǒng)針對當前預報與調(diào)度業(yè)務分離信息與模型共享困難、人機交互缺乏人性化、重復開發(fā)難以管理以及實時預報調(diào)度方案制作時效差等一系列弊端,研究提出了基于河網(wǎng)空間拓撲關系概化圖的預報調(diào)度一體化技術,以滿足變化環(huán)境下流域防洪預報調(diào)度的業(yè)務需求。以流域大型水庫、重要水文站、防汛節(jié)點等為關鍵控制斷面,利用空間位置與水力聯(lián)系構(gòu)建形成水庫、湖泊、防洪對象有序關聯(lián)的拓撲關系概化圖,采用通用數(shù)據(jù)接口對數(shù)值天氣預報、降雨徑流模型、洪水演進模型及調(diào)度模型進行無縫耦合處理,實現(xiàn)河系的河庫(湖)聯(lián)動、有序連續(xù)演算的預報調(diào)度一體化功能,從而形成了涵蓋河系概化圖構(gòu)建和預報調(diào)節(jié)點計算的預報調(diào)度一體化技術。詳細介紹如下。
(1) 河系概化圖構(gòu)建。通過分析流域預報節(jié)點、調(diào)度節(jié)點的拓撲關系,明確各節(jié)點對象的鏈接關系,采用對象符號抽象形成表達流域河網(wǎng)關系的有序樹,如圖4(a)所示,然后設置河系概化圖各節(jié)點對象的屬性(如基本信息、防洪信息以及預報調(diào)度模型選擇),并采用靜庫容調(diào)洪演算或水動力學模型實現(xiàn)關鍵控制節(jié)點的調(diào)度計算。
(2) 預報調(diào)度節(jié)點計算。采用樹形分層方法保證關鍵節(jié)點依據(jù)上下游拓撲關系順序計算,具體步驟為:首先根據(jù)樹形結(jié)構(gòu)劃分計算層次,此時計算層數(shù)與樹的深度相同;然后從最高級葉結(jié)點開始,按照從高到低的原則逐級計算至根結(jié)點,其中同一層次的所有節(jié)點同時完成相關計算,下一層次只能在上一層次結(jié)點全部計算完畢后開始。以圖4(b)所示的7層樹形結(jié)構(gòu)為例,將按照“7→6→5→4→3→2→1”次序逐層逐站由流域上游向下游演算。
需要說明的是,在開展預報調(diào)度作業(yè)時,系統(tǒng)可以提供自動、半自動及交互3種計算模式,實現(xiàn)流域內(nèi)河系所有預報、調(diào)度節(jié)點的連續(xù)預報或調(diào)度作業(yè)。其中,自動計算模式對各節(jié)點的中間計算過程不進行干預;半自動計算模式中用戶可以對指定節(jié)點的中間計算過程進行交互式修正;交互計算模式則可對所有節(jié)點的中間計算過程進行人工調(diào)整。
2.3 面向水文預報的網(wǎng)絡服務構(gòu)建技術
為了滿足SOA無狀態(tài)和獨立自治的原則,實現(xiàn)傳統(tǒng)的水文預報程序能夠服務化,系統(tǒng)通過對預報計算模型進行解耦并重新封裝,具體流程為:① 預報計算模型解耦。按照水文預報的流程,將計算過程分解成各個子單元,每個子單元作為單獨的功能封裝成服務進行發(fā)布。每個子單元完全獨立,子單元之間沒有功能和調(diào)用關系上的依賴,同時具有高復用性。② 預報計算模型封裝。封裝的目的是為了讓相互依賴的功能能夠獨立運行。預報模型計算需要進行大量的數(shù)據(jù)庫操作,所以封裝的重點之一是所有模塊都可以獨立的訪問數(shù)據(jù)庫。為提高效率避免數(shù)據(jù)庫連接占用大量時間,采用數(shù)據(jù)庫連接池分配數(shù)據(jù)庫資源,在系統(tǒng)初始化時統(tǒng)一建立連接,當服務需要使用數(shù)據(jù)庫時,直接從連接池中獲取資源,使用完后由連接池回收以便循環(huán)利用。在封裝時,選用了WCF作為服務框架,引入契約模式對預報計算模型進行封裝。WCF是Windows平臺上開發(fā)分布式應用最佳的實踐方式,該框架使用.NET環(huán)境,能夠很好地集成原有C號以及Visual Basic的預報計算程序,同時提供廣泛的網(wǎng)絡服務協(xié)議支持,在安全性上也有相應的模塊作為保證。
所構(gòu)建的網(wǎng)絡服務既可為跨平臺操作系統(tǒng)(如Windows、IOS、Android)提供通用的數(shù)據(jù)接口、確保預報計算的一致性和通用性,又可利用分布式部署方式來確保核心業(yè)務的計算效率,顯著增強系統(tǒng)的擴展性和安全性。
2.4 基于JSON的海量數(shù)據(jù)傳輸技術
考慮到絕大多數(shù)操作系統(tǒng)和硬件設備均支持HTTP協(xié)議,系統(tǒng)選用報文交互方便且支持多終端接口的HTTP協(xié)議作為數(shù)據(jù)傳輸協(xié)議,使用類表述性狀態(tài)傳遞(Representational State Transfer,REST)風格調(diào)用服務,即通過URL鏈接發(fā)布相關服務;同時,考慮到標準REST風格無法滿足復雜結(jié)構(gòu)的服務請求,系統(tǒng)采用GET和POST兩種請求完成所需服務操作,其中GET表示發(fā)送參數(shù)僅包含基本數(shù)據(jù)類型的服務,POST表示發(fā)送參數(shù)包含復雜數(shù)據(jù)類型的服務。此外,引入JSON格式傳遞規(guī)模巨大的數(shù)據(jù)以減小不必要的信息量,加快請求的響應速度。在實際應用中,用戶只需向相應URL地址輸入所需參數(shù),系統(tǒng)將首先對原始數(shù)據(jù)集進行序列化操作,然后將所得字節(jié)流進行壓縮運算傳遞給用戶,客戶端對相關數(shù)據(jù)進行解碼操作便可得到預報站點信息,數(shù)據(jù)傳輸流程見圖5。
3 工程應用
3.1 應用實例
流域防洪預報調(diào)度一體化系統(tǒng)依托國家防汛抗旱指揮系統(tǒng)二期工程建設項目,以滿足長江防洪興利調(diào)度實際需要為目標開發(fā)設計。系統(tǒng)以大型水庫、重要水文站、防汛節(jié)點等為控制斷面,構(gòu)建了長江流域27個預報調(diào)度體系,囊括9 200余個遙測報汛站點、341個預報節(jié)點、695套預報方案、35個調(diào)度節(jié)點、100余套調(diào)度方案,實現(xiàn)了水雨情在線監(jiān)視、洪水預報實時調(diào)度、防洪形勢動態(tài)分析、預警風險安全評估及洪水演進多層級模擬等復雜功能,為長江流域水文氣象預報、洪水演算、優(yōu)化調(diào)度和決策會商提供了強有力的技術支撐。
系統(tǒng)自2015年投運以來,運行安全穩(wěn)定。尤其是在應對2016~2017年長江流域大洪水時,成功服務國家防總與長江防總聯(lián)合會商近300次,發(fā)布各類分析材料、預報成果及調(diào)度方案近2 000期。該系統(tǒng)不僅實現(xiàn)了長江流域防洪興利綜合調(diào)度全覆蓋,而且實現(xiàn)了國家防總、長江防總、省市防指與干支流控制性水庫間遠程異地協(xié)同會商和決策分析,為長江防洪科學調(diào)度指揮決策提供了有效支撐。此外,依托廣東省中小河流水文監(jiān)測系統(tǒng)建設洪水預報預警系統(tǒng)I標項目,成功實現(xiàn)該系統(tǒng)技術的推廣應用。
3.2 典型功能
3.2.1 水雨情監(jiān)視功能
系統(tǒng)以WebGIS、過程線和表格等方式在3D地圖上動態(tài)展示各監(jiān)測站點的空間分布特征,并在站點名稱附近標注實時水雨情信息,方便防汛人員及時掌握最新動態(tài)。同時,系統(tǒng)采用Tab頁展示水庫站、水文站、雨量站等不同監(jiān)測對象的詳細信息。
3.2.2 洪水預報調(diào)度功能
針對洪水預報調(diào)度這一核心業(yè)務,系統(tǒng)提供了符合實際河網(wǎng)拓撲關系的河系概化圖,分別采用不同幾何圖形代表水庫站、水文站、虛擬站等不同對象,采用矢量箭頭表征對象之間的水力聯(lián)系,直觀展示流域各控制斷面的連接關系。在此基礎上,用戶既可以通過自動、半自動或交互式操作方式來制作發(fā)布河系洪水預報調(diào)度方案,又能夠?qū)蝹€節(jié)點或任意斷面的預報結(jié)果進行精細化調(diào)整。
3.2.3 三維洪水模擬功能
系統(tǒng)采用建筑信息建模技術構(gòu)建了基于WebGIS的三維場景,融合實時水雨情及預報調(diào)度信息,實現(xiàn)了重點區(qū)域關鍵信息的三維展示,并利用信息框、圖表、過程線、分級圖或剖面圖等手段綜合展示了實時及預報調(diào)度成果信息。
4 結(jié) 論
重大水旱災害一直是制約我國流域用水安全、沿岸人民安康的重要因素,科學高效地實現(xiàn)流域防洪預報調(diào)度意義重大。本研究基于面向大數(shù)據(jù)平臺的網(wǎng)絡化服務理念,設計開發(fā)了流域防洪預報調(diào)度一體化系統(tǒng),并詳細介紹了系統(tǒng)實現(xiàn)的關鍵技術及典型功能。該系統(tǒng)在長江流域長期實踐應用中運行穩(wěn)定可靠,尤其是在2016~2017年長江流域大洪水防洪中,為防汛減災實時聯(lián)動決策提供了強有力的信息支撐和科學依據(jù),社會和經(jīng)濟效益顯著。此外,該系統(tǒng)以其良好的技術支撐能力,已成功推廣應用至廣東西江、東江、北江及珠江三角洲等地區(qū)。
參考文獻:
[1] 胡四一,宋德敦,吳永祥,等.長江防洪決策支持系統(tǒng)總體設計[J].水科學進展,1996(4):4-15.
[2] 陳昂,隋欣,廖文根,等.基于數(shù)據(jù)云的水利信息化數(shù)據(jù)共享體系構(gòu)建模式[J].科技導報,2014,32(34):53-57.
[3] 黃瓅瑤,羅斌,朱思蓉,等.基于WebGIS的水庫群調(diào)度拓撲設計分析與應用[J].人民長江,2018,49(13):99-103.
[4] 王浩,俞科慧.基于洪水模擬和預報的三維仿真系統(tǒng)設計[J].中國防汛抗旱,2014,24(3):24-27,45.
[5] 丁斌,吳暉.新疆塔里木河流域信息化規(guī)劃設計研究[J].水資源與水工程學報,2017,28(4):158-161.
[6] 張大偉,權(quán)錦,何曉燕,等.基于地理信息系統(tǒng)的一維潰壩洪水分析系統(tǒng)研發(fā)及應用[J].水利學報, 2013,44(12):1475-1481,1487.
[7] 王妍,楊樸.北京市河長制信息系統(tǒng)設計與研發(fā)[J].中國水利,2018(18):46-49.
[8] 黃少華,丁志良,王漢東,等.基于三維GIS的水庫洪水調(diào)度模擬系統(tǒng)研究[J].人民長江,2013,44(7):95-99.
[9] 丁斌,姚保順,杜文.黃河防洪調(diào)度綜合決策會商支持系統(tǒng)建設[J].水資源保護,2017,33(6):55-59.
[10] 雷曉輝,蔡思宇,王浩,等.河流水資源調(diào)度關鍵技術及通用軟件平臺探討[J].人民長江,2017,48(17):37-45.
[11] 程春田,王本德,李成林,等.白山、豐滿水庫群實時洪水聯(lián)合調(diào)度系統(tǒng)設計與開發(fā)[J].水科學進展,1998(1):30-35.
[12] 吳捷,徐學飛.李仙江流域梯級水電站洪水預報設計與應用[J].人民長江,2011,42(24):21-24.
[13] 藍家萬,陳森林,李建華.基于Web Service的防洪調(diào)度決策支持系統(tǒng)[J].水電能源科學,2005(5):86-88,1.
[14] 秦昊,陳瑜彬.長江洪水預報調(diào)度系統(tǒng)建設及應用[J].人民長江,2017,48(4):16-21.
[15] 何欣欣,羅軍剛,解建倉.陜西省最嚴格水資源考核管理系統(tǒng)研究與實現(xiàn)[J].水資源與水工程學報,2016,27(3):55-60.
[16] 賈化樂.陸渾水庫洪水預報程序設計[J].人民長江,2013,44(19):40-43.
[17] 喻杉,羅斌,張恒飛.長江流域防洪調(diào)度決策支持系統(tǒng)設計初探[J].人民長江,2015,46(21):5-7,26.
[18] 劉榮華,劉啟,張曉蕾,等.國家山洪災害監(jiān)測預警信息系統(tǒng)設計及應用[J].中國水利,2016(21):24-26.
[19] 陳軍飛,鄧夢華,王慧敏.水利大數(shù)據(jù)研究綜述[J].水科學進展,2017,28(4):622-631.
[20] 羅毅君,呂石生,劉雨,等.湖南省基于云架構(gòu)的山洪災害監(jiān)控預警系統(tǒng)設計與實現(xiàn)[J].中國防汛抗旱,2017,27(1):99-103.
(編輯:常漢生)