鄭 凱,張 健,毛文迪,李國(guó)良
(黃河水利委員會(huì)河南水文水資源局,河南 鄭州 450004)
水文測(cè)驗(yàn)數(shù)據(jù)的數(shù)字化是水文信息化的基礎(chǔ),尤其是水文人工測(cè)驗(yàn)數(shù)據(jù)的數(shù)字化。目前黃河測(cè)區(qū)水文人工測(cè)驗(yàn)原始資料基本采用紙質(zhì)或 Excel 電子文檔記載,沒(méi)有形成水文大數(shù)據(jù)環(huán)境[1],無(wú)法實(shí)時(shí)在線進(jìn)行數(shù)據(jù)的提取、審查和整編;同時(shí),隨著水文自動(dòng)監(jiān)測(cè)設(shè)備的推廣使用,海量的自動(dòng)監(jiān)測(cè)數(shù)據(jù)沒(méi)有進(jìn)行摘錄和整編格式轉(zhuǎn)換,無(wú)法直接用于資料整編[2-3]。這種狀況導(dǎo)致黃河測(cè)區(qū)水文測(cè)驗(yàn)數(shù)據(jù)出錯(cuò)率較高,成果時(shí)效性低,數(shù)據(jù)無(wú)法深度融合和共享,不能滿足新時(shí)期黃河水文信息化、現(xiàn)代化發(fā)展的需求。
因此,基于網(wǎng)絡(luò)協(xié)同的方式,構(gòu)建黃河水文測(cè)驗(yàn)數(shù)據(jù)在線處理系統(tǒng)(以下簡(jiǎn)稱在線處理系統(tǒng)),實(shí)現(xiàn)水文測(cè)驗(yàn)數(shù)據(jù)的實(shí)時(shí)、動(dòng)態(tài)處理和存儲(chǔ),提升水文資料在站整編的工作效率和成果質(zhì)量迫在眉睫。
水文測(cè)驗(yàn)原始資料數(shù)據(jù)庫(kù)是構(gòu)建在線處理系統(tǒng)的基石,在線處理系統(tǒng)基于 SQL Server 數(shù)據(jù)庫(kù),按照 SL/T 324—2019《水文數(shù)據(jù)庫(kù)表結(jié)構(gòu)及標(biāo)識(shí)符》和 SL 323—2010《實(shí)時(shí)雨水情數(shù)據(jù)庫(kù)表結(jié)構(gòu)與標(biāo)識(shí)符》等規(guī)范,進(jìn)行黃河水文測(cè)驗(yàn)原始資料庫(kù)表結(jié)構(gòu)的設(shè)計(jì),包括水準(zhǔn)、水位、流量、輸沙率、泥沙水樣、降水量、蒸發(fā)量、水溫、氣溫等 50 個(gè)數(shù)據(jù)表,具體如表 1 所示。
表 1 黃河水文測(cè)驗(yàn)原始資料數(shù)據(jù)表
在線處理系統(tǒng)采用 B/S 技術(shù)架構(gòu)體系,用戶可通過(guò)瀏覽器實(shí)現(xiàn)對(duì)服務(wù)器的訪問(wèn)。系統(tǒng)由采集層、數(shù)據(jù)層、應(yīng)用層、顯示層組成,前端瀏覽器實(shí)現(xiàn)部分業(yè)務(wù)邏輯,大量的業(yè)務(wù)處理都在服務(wù)器端通過(guò)調(diào)用相應(yīng)的業(yè)務(wù)服務(wù)完成,具體技術(shù)架構(gòu)如圖 1所示[4-5]。
圖 1 系統(tǒng)技術(shù)構(gòu)架
1)采集層。主要指在線處理系統(tǒng)相關(guān)數(shù)據(jù)收集途徑。
2)數(shù)據(jù)層。主要指水文測(cè)驗(yàn)原始資料數(shù)據(jù)庫(kù),存儲(chǔ)各類測(cè)驗(yàn)及計(jì)算的數(shù)據(jù)。
3)應(yīng)用層。主要指對(duì)用戶提交的指令,以及水位、流量、含沙量等要素?cái)?shù)據(jù),進(jìn)行校驗(yàn)、處理和計(jì)算等再加工后,將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中,或?qū)?shù)據(jù)庫(kù)中的數(shù)據(jù)提取后返回給顯示層。
4)顯示層。是指用戶所見(jiàn)的人機(jī)交互界面,主要功能是為用戶提供水位、流量、含沙量等測(cè)驗(yàn)項(xiàng)目的人機(jī)交互。
測(cè)驗(yàn)人員使用移動(dòng)端或 PC 端通過(guò)用戶名和密碼,經(jīng)身份驗(yàn)證后登錄在線處理系統(tǒng),不同的用戶被賦予不同的角色,而不同的角色被賦予不同的權(quán)限,因此用戶通過(guò)被授予的相應(yīng)權(quán)限訪問(wèn)相應(yīng)的業(yè)務(wù)服務(wù)。管理員用戶可以進(jìn)行用戶、角色、權(quán)限等的管理,以及菜單設(shè)置等操作;測(cè)站用戶可以進(jìn)行數(shù)據(jù)查詢、修改與刪除、錄入與計(jì)算、審查,以及錯(cuò)情登記、成果表打印等操作;勘測(cè)局或水文局用戶可以進(jìn)行審查規(guī)則設(shè)置、任務(wù)制訂等操作。具體業(yè)務(wù)流程如圖 2 所示。
在線處理系統(tǒng)功能模塊包括數(shù)據(jù)查詢、錄入與計(jì)算、審查和系統(tǒng)設(shè)置等模塊,功能組成如圖 3所示。
數(shù)據(jù)查詢模塊實(shí)現(xiàn)水位、流量、含沙量等水文要素記載表的詳情查看,修改,刪除和打印等功能。
經(jīng)用戶登錄認(rèn)證,不同的用戶具有不同的數(shù)據(jù)查詢權(quán)限:測(cè)站用戶僅能查詢本站的水文要素?cái)?shù)據(jù),可以進(jìn)行數(shù)據(jù)的修改和刪除;勘測(cè)局或水文局用戶可以查詢到所轄所有水文站的數(shù)據(jù),但無(wú)法修改和刪除數(shù)據(jù)。
記載表打印基于 Print.js 插件,實(shí)現(xiàn)系統(tǒng)前端報(bào)表頁(yè)面的在線打印。
數(shù)據(jù)錄入與計(jì)算模塊可實(shí)現(xiàn)以下功能:
1)數(shù)據(jù)人工在線填報(bào)與計(jì)算功能。對(duì)水位、流量、含沙量等人工測(cè)驗(yàn)項(xiàng)目數(shù)據(jù),在線處理系統(tǒng)基于 handsontable.js 插件,在前端網(wǎng)頁(yè)設(shè)計(jì)了測(cè)驗(yàn)數(shù)據(jù)記載表格,對(duì)單元格進(jìn)行數(shù)據(jù)類型、有效位數(shù)的校驗(yàn),并通過(guò)單元格響應(yīng)事件,設(shè)置了計(jì)算公式,實(shí)現(xiàn)數(shù)據(jù)的在線處理。
2)數(shù)據(jù)導(dǎo)入功能。對(duì)水位、流量、含沙量等人工測(cè)驗(yàn)項(xiàng)目的 Excel 數(shù)據(jù)文檔進(jìn)行上傳,文檔經(jīng)過(guò)字段解析后,解析結(jié)果保存到水文測(cè)驗(yàn)原始資料數(shù)據(jù)庫(kù)。
3)數(shù)據(jù)摘錄與整編格式轉(zhuǎn)換功能。對(duì)水位、降水量等自動(dòng)監(jiān)測(cè)數(shù)據(jù),在線處理系統(tǒng)可根據(jù)極值、弦差、變幅等因素制定摘錄方案,選取摘錄方案后,進(jìn)行數(shù)據(jù)摘錄,可進(jìn)行原始數(shù)據(jù)和摘錄數(shù)據(jù)的過(guò)程對(duì)比,生成摘錄評(píng)估報(bào)告,還可進(jìn)行不同摘錄方案下摘錄數(shù)據(jù)的對(duì)比。數(shù)據(jù)摘錄后,在線處理系統(tǒng)會(huì)按照整編成果數(shù)據(jù)表的形式,對(duì)自動(dòng)監(jiān)測(cè)數(shù)據(jù)進(jìn)行整編格式轉(zhuǎn)換。
數(shù)據(jù)審查模塊通過(guò)繪制圖形和設(shè)置審查規(guī)則對(duì)水位、流量、含沙量等水文要素?cái)?shù)據(jù)進(jìn)行合理性檢查,主要包括以下功能:
圖 2 業(yè)務(wù)流程圖
圖 3 在線處理系統(tǒng)功能結(jié)構(gòu)組成
1)審查規(guī)則制定與功能設(shè)置。將黃河水文資料成果匯刊技術(shù)規(guī)程和整匯編專家的審查經(jīng)驗(yàn)數(shù)學(xué)化,建立數(shù)學(xué)模型,以審查項(xiàng)目為單元,細(xì)化成一系列的審查規(guī)則。
2)自動(dòng)審查功能。根據(jù)審查規(guī)則,對(duì)某一時(shí)段內(nèi)的水文要素?cái)?shù)據(jù)進(jìn)行批量自動(dòng)審查,對(duì)審查結(jié)果進(jìn)行選取和保存,自動(dòng)生成錯(cuò)情登記表。
3)圖形化審查功能。基于 ECharts 可視化圖表庫(kù),繪制斷面流速圖、水位流量關(guān)系圖、實(shí)測(cè)大斷面圖等圖形,測(cè)站人員可借助圖形進(jìn)行人工審查[6]。
在線處理系統(tǒng)設(shè)置模塊包括用戶、組織機(jī)構(gòu)、角色、權(quán)限的管理及測(cè)站設(shè)置等功能,主要用于用戶注冊(cè)、組織機(jī)構(gòu)管理、權(quán)限授予、測(cè)站信息管理等操作,基于 RBAC(Role-Based Access Control)進(jìn)行設(shè)計(jì),可通過(guò)對(duì)用戶賦予不同的角色,實(shí)現(xiàn)對(duì)用戶訪問(wèn)數(shù)據(jù)的有效控制和隔離[7-8]。
測(cè)驗(yàn)人員登錄在線處理系統(tǒng)后,對(duì)水準(zhǔn)、流量、含沙量等人工測(cè)驗(yàn)項(xiàng)目數(shù)據(jù)進(jìn)行實(shí)時(shí)填報(bào),數(shù)據(jù)經(jīng)格式校驗(yàn)后,采用對(duì)應(yīng)的計(jì)算公式進(jìn)行數(shù)據(jù)處理,計(jì)算結(jié)果保存到水文測(cè)驗(yàn)原始資料數(shù)據(jù)庫(kù)中。而針對(duì)水位、降水量等自動(dòng)監(jiān)測(cè)數(shù)據(jù),測(cè)驗(yàn)人員可按照摘錄算法進(jìn)行摘錄選取,并進(jìn)行整編格式轉(zhuǎn)換[9],其結(jié)果保存到水文測(cè)驗(yàn)原始資料數(shù)據(jù)庫(kù)中,參與水文資料實(shí)時(shí)在線整編。水文要素?cái)?shù)據(jù)入庫(kù)后,測(cè)驗(yàn)人員選取起止時(shí)間,可實(shí)時(shí)在線查詢?cè)摃r(shí)間段內(nèi)的水文要素記載表,單擊“詳情”“修改”“刪除”和“打印”等按鈕,可進(jìn)行相關(guān)操作,如查看某測(cè)次的流速儀法測(cè)流記載表等,還可根據(jù)預(yù)先設(shè)置的審查規(guī)則進(jìn)行某一時(shí)段內(nèi)水位、流量、含沙量等水文要素?cái)?shù)據(jù)的批量自動(dòng)審查。
在線處理系統(tǒng)于 2020 年 5 月在黃河水文河南測(cè)區(qū)投入運(yùn)行,測(cè)區(qū) 27 處水文站、203 處雨量站均采用該系統(tǒng)進(jìn)行水文測(cè)驗(yàn)數(shù)據(jù)的處理。在線處理系統(tǒng)符合基層水文站的測(cè)算需求和使用習(xí)慣,能滿足測(cè)站、勘測(cè)局、基層局對(duì)水文測(cè)驗(yàn)數(shù)據(jù)實(shí)時(shí)及動(dòng)態(tài)處理的要求,能同步查看測(cè)驗(yàn)結(jié)果,并將數(shù)據(jù)存入水文測(cè)驗(yàn)原始資料數(shù)據(jù)庫(kù)中,以備實(shí)時(shí)進(jìn)行水文資料在線整編。
在線處理系統(tǒng)應(yīng)用后,對(duì)于人工測(cè)驗(yàn)數(shù)據(jù),實(shí)現(xiàn)輸沙率測(cè)驗(yàn)記載表和泥沙水樣處理記載表等表間數(shù)據(jù)的相互調(diào)用,避免了數(shù)據(jù)重復(fù)錄入產(chǎn)生的錯(cuò)誤,對(duì)測(cè)站原始錄入數(shù)據(jù)的格式、有效位數(shù)等進(jìn)行自動(dòng)審查,可發(fā)現(xiàn)并提示數(shù)據(jù)錄入中存在的問(wèn)題。對(duì)于水位、降水量等自動(dòng)監(jiān)測(cè)數(shù)據(jù),數(shù)據(jù)摘錄和整編格式轉(zhuǎn)換過(guò)程費(fèi)時(shí)費(fèi)力,通常人工處理需要近半個(gè)月的時(shí)間,而應(yīng)用在線處理系統(tǒng)后,僅需 1 d 即可完成。
在線處理系統(tǒng)以水文測(cè)驗(yàn)數(shù)據(jù)為依托,采用微軟 C# 開(kāi)發(fā)語(yǔ)言、SQL Server 數(shù)據(jù)庫(kù)及 ECharts 可視化圖表庫(kù)等技術(shù),開(kāi)發(fā)完成了水位、流量、含沙量等水文要素?cái)?shù)據(jù)的查詢,錄入,計(jì)算,摘錄與整編格式轉(zhuǎn)換,合理性審查,圖表顯示,成果打印等應(yīng)用模塊,構(gòu)建了水文測(cè)驗(yàn)原始資料數(shù)據(jù)中心,把碎片化的單一水文要素?cái)?shù)據(jù)處理軟件有效地融合到一個(gè)系統(tǒng)中,從而通過(guò)網(wǎng)絡(luò)協(xié)同的方式進(jìn)行水文測(cè)驗(yàn)數(shù)據(jù)的在線計(jì)算和處理,并實(shí)時(shí)存儲(chǔ)到數(shù)據(jù)中心,實(shí)現(xiàn)了數(shù)據(jù)的融合與共享及測(cè)區(qū)自下而上數(shù)據(jù)的互聯(lián)互通。
在線處理系統(tǒng)應(yīng)用后,不但提高了測(cè)區(qū)內(nèi)水文人工測(cè)驗(yàn)數(shù)據(jù)的準(zhǔn)確率與記載格式的規(guī)范度,也解決了自動(dòng)監(jiān)測(cè)數(shù)據(jù)的摘錄與數(shù)據(jù)格式轉(zhuǎn)換等資料整編難題,節(jié)省了大量時(shí)間和人力,實(shí)現(xiàn)了水文測(cè)驗(yàn)數(shù)據(jù)的“日清月結(jié)”,提升了水文資料在站整編的工作效率和成果質(zhì)量,滿足了黃河水文現(xiàn)代化建設(shè)的要求。但系統(tǒng)尚未開(kāi)發(fā)水位流量關(guān)系輔助定線功能,水文數(shù)據(jù)審查規(guī)則的制定還處于初級(jí)階段,不夠全面,一些經(jīng)驗(yàn)性的審查規(guī)則尚無(wú)法形成數(shù)學(xué)模型,系統(tǒng)日志方面的設(shè)計(jì)也有諸多不足,有待今后進(jìn)一步研究和完善。