卢静媛 刘财福 时建国 关兴中
摘要:整合现有资源以实现资料整编在线化是水文资料整编工作的重难点,提出了一种基于SOA体系的水文资料在线整编系统,在与南方片水文资料整汇编软件系统(SHDP系统)、江西省水文监测系统兼容的同时,可实现“一处填写、多处录入”,减少了不必要的数据重复录入,实现整编工作的效益最大化。该整编系统可拆分为独立部署的服务单元,与SHDP系统、江西省水文监测系统通过数据交换服务进行交互,能够复用这些系统的已有功能;系统还能实时预览整编结果,对其进行交叉审查,提高了水文整编工作的效率,保证了整编成果的质量。
关键词:水文资料整编;在线整编系统;SOA体系;系统兼容;Web应用
中图法分类号:P337
文献标志码:A
DOI:10.15974/j .cnki. slsdkb.2020.10.014
1 研究背景
我国地形复杂,水资源分布时空不均,是世界上人均水资源最为贫乏的国家之一。开展水文资料整编工作有助于充分了解某一地区的用水、集水情况,以便对后续发生的一系列水文事件作出最优判断[1]。2004年,长江水利委员会水文局率先开展了在线水文资料整编系统的平台开发工作,主导开发了“南方片水文资料整汇编软件系统”客户端(以下简称“南方片系统”),实现了水文资料的整编数据录入、处理、报表生成、整编表项、汇编数据输出等功能,该系统在行业内逐步得到了推广使用。2019年,江西省响应水利部的工作要求,建立了“江西省水文监测系统”(以下简称“监测系统”),初步实现水文资料在线导人,人工观测数据、各项监测成果以及人工录入数据的录入、校对、复核3道工序流程,达到水文资料监测及整编“日清月结”的考核指标要求。
南方片系统和监测系统无法完全满足水文资料整编工作的需求,具体原因有:①南方片系统是资料整编系统,采用的是C/S架构(客户端/服务器架构),监测系统采用B/S架构(浏览器/服务器架构),二者难以交互;②监测系统只包含简单的资料整编功能,缺少原始数据溯源及成果合理性分析功能,从南方片系统中迁移数据到监测系统中时,数据的重复录入增加了用户工作量,且有出错风险;③监测系统中的数据审查较为简单,缺乏流程性和实时性,且尚无法实现全省交叉审查。本文提出了一种基于SOA体系的水文资料在线整编系统(以下简称“整编系统”),通过Web应用的形式,实现了与监测系统、南方片系统的衔接。
2 系统设计
整编系统中的数据可与南方片系统中的数据进行双向导人导出,提高了水文资料整编工作效率,减少了人为误差[2]。整编系统可运行于内网环境中,保证了数据的安全性;采用B/S架构,用户无需下载专门的客户端即可在线使用,同时采用SOA体系将系统拆分成数个子服务单元,热点服务可以进行负载均衡、冗余部署,提高了系统稳定性。系统升级时无需更新整个系统,只需更新对应的服务单元即可,对原有系统进行扩展也十分便捷,不会影响原系统的正常使用。
整编系统设计主要实现以下功能:
(1)对测站原始资料的收集、整理及合理性检查,解决目前江西省水文测站资料分散整编、整编方法不统一等问题,确保水文监测资料的准确性、合理性、标准性,能够输出符合水文年鉴图表要求的格式文件。
(2)实现统一、规范的水文监测资料原始数据及成果的提交、审查、汇交及共享功能。提高水文资料整编成果的汇交及审查效率,做到水文监测资料标准化管理。
(3)减少测站人员对数据的重复录入,做到“一处填写、多处录入”,统一数据源,确保与其他业务系统整编成果数据的一致性,提高数据准确性。
传统的软件开发已经经历了面向过程、面向对象和面向构件几个阶段[3],现阶段SOA体系(基于服务的软件开发体系)已较为成熟,具有跨语言、跨平台、抽象化、透明化、通用化等特点。整编系统可以按照基本功能单元拆分成数个松耦合紧内聚的服务单元,不同服务单元之间通过规定好的接口进行Web通信[4],并且各细粒度的服务单元还可以通过组合形成粗粒度的服务单元。系统采用B/S架构,相较于C/S架构具有配置要求低、无需特定客户端、更新容易、交换数据方便快捷等优点,用户只需使用通用浏览器访问网页即可使用相关功能。整编系统体系结构共分为5层,见图1。
业务支撑层是系统的核心,为应用用户层提供数据支撑,系统的主要数据处理过程都在该层完成。业务支撑层包含基本信息管理、數据管理、辅助定线、数据分析、审查管理、文档管理和系统管理等服务单元,各服务单元将公共服务组件封装对外提供实现数据共享,对上层提供应用接口便于访问数据,上层以RESTful风格便捷地访问数据,并根据业务需求的不同自由组合不同的服务。
2.1 基本信息管理
基本信息管理服务包含一系列预设的信息表[5],用户可在线输入,或将表(模板文件)下载到本地,填写完毕后再上传,系统会自动分析并检测数据的正确性和合理性。
2.2 数据管理
传统水文测验工作需要先将测验数据录入/导人到监测系统中,然后再手工录入/导人到南方片系统中,重复录入极易出错。整编系统中,只需测站人员完成一份人工观测及测验记载数据,成果数据会自动生成,并且通过系统提供的数据双向导人导出功能与南方片系统的数据无缝对接,通过RPC远程调用能够直接将数据录入到监测系统中,统一数据源,确保其他业务系统的整编成果数据一致性,提高数据准确性。
数据是整编系统的基石,只有数据准确才能正常开展后续的计算工作,导人数据后,数据管理服务会对数据进行必要的正确性和合理性检查,避免后续计算失败。通过自动采集数据、人工录入数据、离线交换数据和在线交换数据4种方式向系统输入数据。数据处理具体过程见图2。
(1)数据输入系统。对于遥测数据可设定采用自动采集数据方式,或将Excel结果文件导人到系统中,其余数据采用人工录入或填写Excel文件的方式导人到系统中,数据通过异常检测模块检测后才可进入下一步处理。由于自动采集数据量大(每5 min采集一次),故平台可以根据测站特性,在不破坏数据特征点的情况下进行精简摘录,摘录成果需反映水位变化的完整过程,并满足计算日平均水位和推算流量的需求。
(2)在线交换数据。指同一系统在运行过程中通过网络交换数据。由于系统已对数据进行了处理,故在线交换数据可越过数据异常检测环节直接进入下一环节。
(3)数据异常检测单元。通过预先设定的数据规则对输入的数据进行正确性和合理性检查,例如数据缺失、位数错误、单位错误、数据超出范围、数据错位和数据明显不合理等,数据管理服务对异常数据进行高亮处理后,以可视化形式进一步处理。
(4)人工數据审核。操作员可直接修正明显不合理的数据,或将出错数据以最小单位驳回。
(5)存人原始库。待人工审核通过后存人原始数据库中,对原始数据库中的数据不允许直接修改,只允许读取和插入,每进行一次插入操作都要记录详细操作日志,便于后期溯源。
2.3 辅助定线
辅助定线能够对已有的规范数据进行分析整理,以图表的形式对水位一流量、水位一流速、水位一面积等关系模型进行符合测站特性的定线工作。该模块能够提供可视化操作界面,测站人员可以直接在界面上通过设定检测参数、选择模型、划分定线时段等定线操作。计算机会根据用户的设置进行自主定线,综合对比不同模型后,计算出水位一流量关系曲线入库,并将定线数据自动导人到南方片系统中;南方片系统中已经定线的成果数据也可导人到监测系统中。
2.4 数据分析
根据系统获取到的数据和计算出的关系模型进行数据分析,得到水文站点的一系列过程线和对照图。系统根据预先设定的规则进行检测,对异常数据进行标注并转交“审查管理”服务单元。水位、流量、沙量、水温、降水量、蒸发量等内容经审查后,可导出为规范的月报表。
2.5 审查管理
相较于监测系统的审查功能,整编系统的审查管理可以做到“随整编随检查”,实现审查资料交汇、专家指派、任务分配、合理性检查、结果确认等工作一体化;记录详细操作日志,使所有审查操作均可溯源,达到对整编过程及整编结果综合审查的目的;提高了水文资料整编成果汇交和审查的效率,实现了水文监测资料标准化管理。
图3为审查管理的具体流程,由图3可知:①管理员负责新建审查主题,为有资格的审查人员随机指定审查项目,进行单站合理性检查和综合合理性检查。②单站合理性检查主要对单站资料进行检查,每条栏目旁均有规范格式和参考示例供审查人员快速核对。若检查出错情,会生成错情登记表交由审查人员登记,并交由管理员进行查复处理;对于确定的错情,同意处理;对于有争议的错情,需要移交给省局进行仲裁,最终生成错情登记表。③综合合理性检查主要对相邻站点进行检查,尤其是需要对用到相邻站点的过程线资料进行检查;界面会并列显示相邻站点,自动高亮相差较大的数据,其余同单站合理性检查相同。
用户可随时通过统一的Web GIS界面,在地图上或以表格方式查询审查进度及错情统计等信息。
2.6 文档管理和系统管理
不同级别的水文管理部门可以向指定单位或指定人员发送文件,对方下载接收到的文件并永久保存。同时,所有用户的操作都会记录在操作日志中,日志提供查询和筛选功能,不可予以删除,管理员在系统管理中对用户进行管理。
3 系统应用效果分析
该整编系统采用SOA体系,易部署、易更新、易扩展,各个服务单元在规划阶段均实现统一化、规范化,设有专门与南方片系统数据库或监测系统进行交互的服务单元,用户在整编系统中录入的数据均可通过该服务单元导人到南方片系统数据库或者监测系统中。同时,整编系统中的正常数据流转不受该服务单元的影响,对于无需与南方片系统或者监测系统进行交互的用户,可以在部署时直接移除该服务单元。
相较于南方片系统和监测系统,整编系统具有以下优点:
(1)易部署、易更新、易扩展、易使用。系统各服务单元之间不会形成递归依赖,只会依赖最少的必要服务,各服务单元均可独立部署在不同的服务器中进行通信;用户只需在统一的前端人口进行数据录入;系统的更新扩展十分便捷,由于系统主要采用接口服务,增加手机APP、微信公众号人口功能,只需开发对应的前端界面,无需对后端做较大修改。
(2)整编系统与南方片系统、监测系统之间交互方便,不易出错。系统内部采用RESTful接口进行交互,并设有与南方片系统进行交互的功能,用户在整编系统中录人数据,经系统检查后,可以录入南方片系统的数据库中;对于南方片系统中已有的整编成果,也可导人整编系统中。该系统还设有与检测系统进行交互的服务单元,对于以前需要手工录入的数据,该服务单元采用RPC远程调用的形式,直接调用监测系统的接口,将系统中的数据返回给监测系统。
(3)可实时预览、导出整编成果。系统拥有图形化数据预览界面,以图表的形式展现整编数据及成果,也可通过WebGIS界面在地图上点击、筛选对应测站详情。系统可随时导出整编成果书,以更规范的形式供用户查看。
(4)随整编随检查,水文监测资料实现标准化管理。系统实现了审查资料交汇、专家指派、任务分配、合理性检查、结果确认等工作一体化,每一步工作都会记录详细操作日志,使所有审查操作均可溯源,达到对整编过程及整编结果综合审查的目的,提高水文资料整编成果汇交和审查的效率。
4 结语
传统的水文资料整编过度依赖人工操作,不同单位开发的水文资料整编系统相互兼容性不强。本文提出了基于SOA体系构建的水文资料整编系统,将系统分解为多个可以独立部署的服务单元,通过独立的数据交换服务单元与南方片系统、监测系统进行交互,不同服务单元之间可以根据不同的要求进行功能的组合,实现无侵入式开发部署。该系统可以做到“一处填写、多处录入”,避免了因人员手工重复录入造成的错误,也实现了与其他水文系统的兼容,复用了其他水文系统的优势,提高了水文整编工作的效率,保证了整编成果的质量。
参考文献:
[1] 韦贤彬.水文资料在线整编系统设计与应用[J].水利信息化,2018(3):61-64.
[2] 张超,徐正坤.如何提高水文资料整编精度的思考[J].河南水利与南水北调,2017,46(12):45-46.
[3]周晓强.Web服务异步调用模型的研究与实现[D].武汉:武汉理工大学,2009.
[4] 陈文燕.基于SOA软件体系的研究与设计[D].合肥:合肥工业大学,2009.
[5]SL 247-2012水文资料整编规范[S].
(编辑:李晓濛)
作者简介:卢静媛,女,硕士,主要从事水文资料及数据库管理方面的工作。E-mail:29955214@qq.com