葉 茂,繆 綸,,任國源
(1. 中國水利水電科學研究院,北京 100038;
2. 北京中水科信息技術有限公司,北京 100038)
太倉市縣級基礎水信息平臺設計與建設
葉 茂1,2,繆 綸1,2,,任國源1
(1. 中國水利水電科學研究院,北京 100038;
2. 北京中水科信息技術有限公司,北京 100038)
建立統(tǒng)一高效的基礎水信息平臺是基層水利單位信息化建設的重點任務。結(jié)合水利工作不斷發(fā)展的業(yè)務需求,以太倉市水利基礎水信息平臺建設為基礎,探討利用 SOA 架構(gòu)并運用云計算的新理念,Web GIS 和Web Services 技術,深入研究 1個數(shù)據(jù)庫,1 套標準,1 張圖,1個平臺,1個門戶——“五個一”的縣級基礎水信息平臺的搭建,對提高水利業(yè)務的管理水平和效率具有重要的意義。
智慧水務;決策指揮;融合;共享;協(xié)同
水利領域是信息化建設開展較早的領域,近些年水利信息系統(tǒng)在水情測報預報、水質(zhì)監(jiān)測、防汛指揮調(diào)度、水土流失監(jiān)測、電子政務等方面得到廣泛應用。
太倉市為江蘇省下屬縣級市,太倉水利單位原已建立了不同類型、規(guī)模的數(shù)據(jù)庫和應用系統(tǒng),根據(jù)調(diào)查分析,這些基礎水利信息具有信息量大、地域性強、信息種類全等特點。然而,由于水利領域本身業(yè)務的復雜性,使得開發(fā)的系統(tǒng)存在一些問題,限制了現(xiàn)有系統(tǒng)作用的發(fā)揮及水利領域信息化的進一步發(fā)展。存在的主要問題如下:
1)系統(tǒng)平臺化理念欠缺。很多基礎水利業(yè)務應用系統(tǒng)只考慮各自的基本需求,沒有規(guī)劃業(yè)務系統(tǒng)之間協(xié)同的需求,沒有統(tǒng)一的對外發(fā)布窗口,缺乏系統(tǒng)整合,缺少一個能夠融合各個不同系統(tǒng)主要信息的公共的多信息展示平臺,這樣造成信息資源共享困難,業(yè)務協(xié)同操作復雜,信息基礎設施資源難以整合,軟、硬件資源環(huán)境得不到高效利用,應用系統(tǒng)的性能得不到優(yōu)化,遺產(chǎn)系統(tǒng)無法重用和集成。
2)系統(tǒng)的開放程度低。開發(fā)時,大多數(shù)基礎水利應用系統(tǒng)主要考慮解決當前問題,較少考慮發(fā)展需要,系統(tǒng)的開放性和可擴展性較差。隨著水利業(yè)務的發(fā)展,相應應用系統(tǒng)的升級改造難度大、費用高;且易造成新老版本之間的不兼容,增加了版本更替的工作量和難度。
3)基礎水利信息標準與規(guī)范缺乏。在數(shù)據(jù)庫建設中,只有少量數(shù)據(jù)編碼,如河流、流域、水文測站、行政區(qū)劃等的編碼有一些標準規(guī)范可循,大部分數(shù)據(jù)庫建設及數(shù)據(jù)編碼標準都存在內(nèi)容龐雜交叉,強制性條文和推薦性條文混淆,對強制性標準難以實施監(jiān)督,編制、修訂周期過長等問題,更有一部分數(shù)據(jù)庫建設僅針對某個應用系統(tǒng),很難實現(xiàn)數(shù)據(jù)庫的統(tǒng)一管理,難以實現(xiàn)數(shù)據(jù)資源的高度共享。
針對存在的問題,在目前水利信息化工作基礎上,運用云計算的新理念、Web GIS 和 Web Services技術,采用面向服務的體系架構(gòu)(SOA),結(jié)合縣級水利工作不斷發(fā)展的業(yè)務需求,從更深層次上研究如何實現(xiàn) 1個數(shù)據(jù)庫,1 套標準,1 張圖,1個平臺,1個門戶—— “五個一”的縣級基礎水信息平臺,旨在利用信息化技術,有效整合水利普查基礎數(shù)據(jù),提高工作規(guī)范、效率、共享程度、查詢效率、時效性,節(jié)約辦公成本,提高野外工作適應性。
“五個一”是縣級基礎水信息平臺系統(tǒng)建設的核心基礎,“五個一”架構(gòu)主要為 1個數(shù)據(jù)庫、1 套標準規(guī)范、1 張 GIS 地圖、1個平臺、1個門戶的需求,以及水信息平臺系統(tǒng)的功能需求。
1.1 1個數(shù)據(jù)庫的需求
以 1個數(shù)據(jù)庫為中心,能夠進一步清理水利部門間協(xié)同的業(yè)務和信息流程。作為水利普查工作的成功典范,涉及的海量水利普查數(shù)據(jù)亟需系統(tǒng)化入庫整理,1個數(shù)據(jù)庫便于這些海量信息的統(tǒng)一存儲、調(diào)用和規(guī)范管理。
1.2 1套標準規(guī)范的需求
在縣級基礎水信息平臺研發(fā)過程中,涉及的水利數(shù)據(jù)豐富、業(yè)務眾多、需求多樣、流程繁雜,為實現(xiàn)這些內(nèi)部信息資源的協(xié)同共享,需要基于統(tǒng)一的標準規(guī)范進行平臺建設,同時還需要與上級主管部門相關業(yè)務系統(tǒng)或平臺進行信息對接與協(xié)同共享,更需要在國家、省級等信息標準基礎上研究屬于縣級基礎水利并契合具體實際的標準規(guī)范。
1.3 1個平臺的需求
1.3.1 硬件資源利用的需求
管理人員能統(tǒng)一管理所有的硬件資源,通過Web 頁面訪問的方式查看、管理資源;用戶在授權后,可按需自助申請所需的動態(tài)資源池里的計算與存儲資源;管理員可根據(jù)資源狀況相應地給用戶分配虛擬機;用戶在任務完成后,由系統(tǒng)收回資源。
平臺能夠?qū)悩?gòu)的服務器統(tǒng)一集成到云計算平臺中,提高不同服務器之間的可替換性和兼容性,減少由于服務器型號不同對系統(tǒng)性能產(chǎn)生的影響。
水信息平臺在云計算的技術支持下,有效均衡同一服務器內(nèi)不同類型資源的使用,不同應用之間的資源分配。實現(xiàn)有效的資源管理,提高資源利用率,減少資源浪費。避免系統(tǒng)瓶頸的出現(xiàn),保障系統(tǒng)的正常運行。
1.3.2 遺產(chǎn)系統(tǒng)重用的需求
現(xiàn)有的河道巡查、防汛防旱決策系統(tǒng)等遺產(chǎn)系統(tǒng)在日常工作中仍然發(fā)揮巨大作用。但由于原始開發(fā)單位不同,文檔信息不全,需采用“零修改”的方式進行遺產(chǎn)系統(tǒng)的遷移和維護。具體來說,就是將遺產(chǎn)系統(tǒng)直接集成無縫遷移至云平臺的虛擬機上,使得用戶依然可以使用遺產(chǎn)系統(tǒng),而且能夠提供一站式的訪問和交互。同時為保護遺產(chǎn)系統(tǒng)的數(shù)據(jù),可根據(jù)需要在水信息平臺中統(tǒng)一設置分級權限,實行對遺產(chǎn)系統(tǒng)的數(shù)據(jù)管理與維護。
1.3.3 業(yè)務系統(tǒng)集成的需求
在水信息平臺業(yè)務應用系統(tǒng)開發(fā)與應用方面,很多應用系統(tǒng)不僅有各自獨立的基本需求,同時各業(yè)務系統(tǒng)之間也有協(xié)同的需求,需要實現(xiàn)重點的、相關的業(yè)務系統(tǒng)聯(lián)動,實現(xiàn)信息資源共享化,業(yè)務協(xié)同簡潔化。因此,對于業(yè)務系統(tǒng)的集成需求是能夠提供統(tǒng)一的、標準規(guī)范的管理方式,使得系統(tǒng)可以以“一站式”的服務訪問機制提供給用戶。
1.4 1個門戶的需求
對水信息平臺的訪問涉及到多業(yè)務、用戶、權限的操作模式[1],在 1個數(shù)據(jù)庫、1 套標準、1個站圖、1個平臺的支撐之下,需運用一站式門戶訪問以更好地體現(xiàn)各業(yè)務系統(tǒng)的統(tǒng)一集成、各權限用戶的單點登錄特征,探索業(yè)務條塊結(jié)合、并重的信息交換與共享機制,理順行業(yè)信息資源縱向流動與屬地其他同級部門間橫向交換間的關系;實現(xiàn)信息資源的協(xié)同與共享;呈現(xiàn)管理的標準化和服務的規(guī)范性。
1.5 水信息平臺示范系統(tǒng)的功能需求
構(gòu)建的縣級基礎水信息平臺具體功能需求涉及到水利規(guī)劃、水利建設、水利工程、農(nóng)村水利、水務、河道、水資源、防汛防旱、水政監(jiān)察 9 類水利業(yè)務管理需求,以及人員管理、內(nèi)部辦公、外部行政 3 類事務管理需求[2],共 12 類功能需求。
2.1 SOA 與 Web 服務
由于縣級基礎水利數(shù)據(jù)組成是海量的異構(gòu)數(shù)字化資源,如何選取適合的技術手段有效應對不斷增長的業(yè)務和數(shù)據(jù)需求是目前需要解決的關鍵問題。當前主流的信息化平臺已經(jīng)開始廣泛采用SOA 架構(gòu),這個架構(gòu)可以使信息化平臺具有快速適應業(yè)務需求變化的能力。
SOA 是一個組件模型,將服務通過這些服務之間定義良好的接口和契約聯(lián)系起來,使得構(gòu)建在各種系統(tǒng)中的服務可以以一種統(tǒng)一和通用的方式進行交互。目前,通用的接口技術包括 COBRA,JAVA RMI,COM,Web 服務等,其中 Web 服務技術可有效解決信息系統(tǒng)之間的互操作問題,成為實現(xiàn) SOA最通用的技術。Web 服務在 SOA 中實現(xiàn)系統(tǒng)之間的松耦合,實現(xiàn)系統(tǒng)之間的整合與協(xié)同。
2.2 統(tǒng)一數(shù)據(jù)訪問中間件
縣級基層水利管理單位系統(tǒng)環(huán)境相對復雜且配置相對較低,硬件系統(tǒng)和操作軟件繁多,如何跨平臺、數(shù)據(jù)庫解決系統(tǒng)中數(shù)據(jù)交互的難題,目前國內(nèi)外主流的技術是引入統(tǒng)一訪問中間件技術。
統(tǒng)一數(shù)據(jù)訪問中間件用來處理服務層與用戶界面層和數(shù)據(jù)層之間的交互操作,將用戶和數(shù)據(jù)訪問的復雜性相隔離,對數(shù)據(jù)庫連接和訪問進行有效管理,同時能夠處理異構(gòu)數(shù)據(jù)庫間的連接問題。通過對數(shù)據(jù)庫連接和訪問機制的管理,改善網(wǎng)絡上多用戶訪問數(shù)據(jù)庫的性能,優(yōu)化網(wǎng)絡傳輸,支持與多種數(shù)據(jù)庫的連接。中間件獨立于系統(tǒng)軟件或服務程序,通過中間件,應用程序可以工作于多平臺或操作系統(tǒng)環(huán)境。
2.3 MVC 設計模式[3]
在基層水利信息平臺構(gòu)建中,系統(tǒng)設計涉及到水利規(guī)劃、建設、水工程等 9個分類,業(yè)務相對獨立,但是數(shù)據(jù)存在大量的交叉應用。且同類數(shù)據(jù)有可能存在于不同的數(shù)據(jù)庫中,這樣易造成數(shù)據(jù)的不一致。引進 MVC 結(jié)構(gòu)可以解決這一技術難題。
MVC 是一種程序開發(fā)設計模式,可實現(xiàn)顯示模塊與功能模塊的分離。提高程序的可維護性、移植性、擴展性與重用性,降低程序的開發(fā)難度。
MVC 中 M 指業(yè)務模型,V 指用戶界面,C 是控制器。使用 MVC 的目的是將 M 和 V 的實現(xiàn)代碼分離,從而使同一個程序可以使用不同的表現(xiàn)形式,如一批數(shù)據(jù)可以分別用柱狀圖、餅圖來表示。C 存在的目的是確保 M 和 V 的同步,一旦 M 改變,V 應該同步更新。在 J2EE 下,可以在集成開發(fā)環(huán)境下通過拖動控件來完成頁面開發(fā),使用由用戶部件根據(jù)模板配置組成的組合頁面。
MVC 結(jié)構(gòu)主要分模型、視圖、控制器 3 層,是為同樣的數(shù)據(jù)提供多個視圖的應用程序而設計的,可很好實現(xiàn)數(shù)據(jù)層與表示層的分離,框架如圖1 所示。
圖1 MVC 框架結(jié)構(gòu)
2.4 SSH 構(gòu)架
SSH(Struts-Spring- Hibernate)是目前較流行的一種 Web 應用程序開源框架。其中 Struts 能更好地分離視圖層和控制層,對數(shù)據(jù)進行封裝;Spring 用依賴注入模式大幅度減少了程序之間的耦合性,很好地實現(xiàn)各種 JAVA 的設計模式;Hibernate 將對數(shù)據(jù)庫的操作面向?qū)ο蠡σ恍?shù)據(jù)庫操作進行封裝。
圖2 水信息平臺服務簇結(jié)構(gòu)圖
通俗的說,假設要建立一個地區(qū)的管網(wǎng),建成的管網(wǎng)系統(tǒng)是 JSP 呈現(xiàn)的視圖,而系統(tǒng)從何而來?首先需要鋪設管道,即 Hibernate 產(chǎn)生的數(shù)據(jù),管道有長、短,需要切割,這是對數(shù)據(jù)的操作。安裝管道,則是 Struts 的工作,這個過程分工明確,有的負責挖坑,有的負責埋管,有的負責填土。Spring 負責中間傳遞,讓 Hibernate 和 Struts 工作互不干擾。最終一個管網(wǎng)系統(tǒng)鋪設完畢,看到的是現(xiàn)成系統(tǒng),卻看不見制作過程。
因此在縣級基礎水信息平臺建設中,得到的是最終展示的結(jié)果,利用 SSH 模型,只需要數(shù)據(jù)采集而不管加工過程就能得到想實現(xiàn)的目的,且這個過程可以影響所有的視圖。
3.1 示范系統(tǒng)功能需求與軟件設計關聯(lián)
縣級基礎水信息平臺以 1個數(shù)據(jù)庫、1 套標準為基礎,立足于 1個云平臺,具體包含 12 類功能需求。其中前 9 項既包括業(yè)務前臺展示需求,也包括業(yè)務后臺管理需求,后 3 項屬于綜合類服務需求,人員管理包括對單位、部門、人員、權限等功能的設置。平臺綜合 12 類功能需求,以統(tǒng)一門戶形式訪問和 GIS 圖綜合展示[4],在軟件設計上可分為 13個獨立的應用服務簇,如圖2 所示。統(tǒng)一門戶包括對權限角色的分配和各類服務的集成,GIS 管理具體包含各業(yè)務的前臺服務和名錄庫 GIS 動態(tài)展示。
3.2 統(tǒng)一門戶
3.2.1 門戶集成
門戶集成是水利信息化體系結(jié)構(gòu)中重要的一部分,因為門戶能夠降低成本、提高用戶的訪問效率。采用“軟件即服務(SaaS)”的理念和云服務技術,以門戶的方式統(tǒng)一管理基于水利業(yè)務的云服務簇,為解決跨部門、異構(gòu)的業(yè)務系統(tǒng)的協(xié)同與信息共享,提供有效的解決方案,通過各個系統(tǒng)實現(xiàn)單點登陸(SSO)和門戶集成,實現(xiàn)“一站式”的訪問機制,支持多終端訪問?!耙徽臼健庇脩趄炞C確保門戶可用的關鍵在于用戶本身僅需要驗證 1 次,即可使用該門戶提供的所有權限范圍內(nèi)的服務。單點登錄,要求該門戶上所集合的各個服務都能利用或集成相同的網(wǎng)絡驗證方案,同時實現(xiàn)內(nèi)容合并,從完全不同的來源搜集內(nèi)容,然后在單一界面(門戶)中顯示內(nèi)容。通過使用內(nèi)容合并功能,門戶可顯示統(tǒng)一的視圖,其中內(nèi)容可能屬于不同的所有者,來自不同的生產(chǎn)位置或包含在不同的系統(tǒng)中。門戶通過將不同來源的數(shù)據(jù)和功能集中到一個根據(jù)單獨用戶的需求而自定義的可訪問包,從而實現(xiàn)這些益處,如圖3 所示。
圖3 統(tǒng)一門戶
3.2.2 權限管理
該模塊是提供給所有相關系統(tǒng)中對應服務的一個權限認證接口。某系統(tǒng)用戶需要調(diào)用該系統(tǒng)下的某個服務時,需要查看當前該用戶是否有該服務的訪問權限。各個系統(tǒng)需要向接口輸入對應服務的服務名和用戶名,接口返回用戶權限,權限認證的流程如圖4 所示[5]。
3.3 服務簇
根據(jù)太倉市水務局各業(yè)務工作的需求,平臺總共分為 13個獨立的服務簇。
以水務服務簇為例,主要分為水務基本和每月報表2 大業(yè)務管理模塊。水務基本業(yè)務管理包括自來水廠、城鎮(zhèn)污水廠、農(nóng)村生活污水處理和農(nóng)村接管設施的管理,主要實現(xiàn)數(shù)據(jù)的增加、刪除、修改等維護和管理操作;每月報表業(yè)務管理主要對 3個旬報表(每旬進行 1 次數(shù)據(jù)采集生成的報表)和1個月報表等 4個報表業(yè)務的管理。模塊數(shù)據(jù)由水利站填寫上報,在科室審核通過后匯總生成。
圖4 權限認證流程
在基本業(yè)務信息列表頁面提供了對該業(yè)務的增加、刪除、修改、查看和搜索操作的入口,同時在增加、查看和搜索結(jié)果查看等頁面中也有回到信息列表的鏈接。刪除操作在信息列表頁面即可操作;修改和編輯頁面會對數(shù)據(jù)進行校驗,如果校驗失敗會重新回到修改和編輯頁面。如圖5 所示,該圖能清晰地反應各工作流的流程。
圖5 水務基本業(yè)務管理界面協(xié)作圖
其他業(yè)務服務簇均可按照相應的業(yè)務流程進行類似設計。
縣級基礎水信息平臺是一個復雜的軟件系統(tǒng),運用 MVC,Web Service,Web 程序開源框架,JQERY,F(xiàn)LEX 等開發(fā)技術與工具軟件提供完整解決方案,采用 B/S 模式,運行在 Web 服務器上。能夠為機關及各水利站及時提供各類水利綜合業(yè)務信息,為基層水利建設與日常工作提供科學依據(jù)和有效支持。
縣級基礎水信息平臺目前在太倉水利局試用,經(jīng)過日常各部門及下屬水利站工作使用的考驗,證明了縣級基礎水信息平臺的設計可行、數(shù)據(jù)正確、系統(tǒng)可靠。水信息平臺具有內(nèi)容全面、功能強大,數(shù)據(jù)查詢資料詳細具體、結(jié)果可靠,先進高效、方便實用,人機界面友好、操作方便等特點。
系統(tǒng)在設計開發(fā)之初就充分考慮了可移植性的問題,因此,各服務可單獨可組合,直接移植到其他地市級水利部門管理應用,對于水利信息化發(fā)展具有重要的現(xiàn)實意義。
[1] 陳渝,王俊. 縣級水利信息系統(tǒng)建設研究[J]. 昆明理工大學學報:理工版,2002 (12):124-126.
[2] 巧云. 縣級小型水利工程信息化管理系統(tǒng)的開發(fā)與實現(xiàn)[D]. 呼和浩特:內(nèi)蒙古師范大學,2012: 15-21.
[3] 張永謙,劉輝,黃力. 關系數(shù)據(jù)庫中時態(tài)數(shù)據(jù)的實現(xiàn)方法[J]. 成組技術與生產(chǎn)現(xiàn)代化,2003 (3): 56-59.
[4] 鄒嘉德. 縣市水利工程信息化管理系統(tǒng)的研究與開發(fā)[D].揚州:揚州大學,2010: 25-30.
[5] 王西海. 河南省水利普查數(shù)據(jù)處理系統(tǒng)建設探討[J]. 治淮,2002 (12): 23-26.
Design and Construction of County-level Water Information Platform in Taicang City
YE Mao1,2, MIAO Lun1,2, REN GuoYuan1
(1. China Institute of water resources and Hydropower Research, Beijing 100038, China;
2. IWHR BEIJING IWHR-ZSK Information technology Co., Ltd, Beijing 100038, China)
The key task of information construction in grass-roots units of water resources is constructing unified and efficient water information platform. Combining with the evolving business requirements of water resources work, the article discusses the new concept of utilizing SOA framework and applying cloud computing, the technology of WebGIS and Web Services, intensively studies the establishment of county-level basic water information platform consisting five elements---one database, one standard, one picture, one diagram, one platform and one portal, which is of great significance to the improvement of technical proficiency and efficiency of water resources management.
county-level; basis; water resources informatization; information platform; SOA; cloud computing; the business management
TP393;TV213.4
A
1674-9405(2014)01-059-05
2013-10-11
葉 茂(1979-),男,四川成都人,工程師,主要從事信息網(wǎng)絡安全、系統(tǒng)集成方面的研究。