APP下载

雨量数据图形处理分析显示系统开发及应用

2016-07-10王囝囝邹善勇刘晓初

安徽农业科学 2016年5期
关键词:类库数据库系统雨量

王囝囝 邹善勇 刘晓初

摘要 介绍了市级雨量数据图形处理分析显示系统的设计思路及其功能特点。该系统引用MeteoInfo类库开发,基于数据库系统,采用模块化设计,由独立的模块完成数据录入、质量控制及分析处理等功能;该系统具有高度自动化、使用方便简捷等特点,满足业务工作的雨量数据监控、图形显示等需要,在各级气象部门具有很好的推广和实用价值。

关键词 雨量数据图形处理分析显示系统;开发;应用;雨量计色斑图;MeteoInfo类库

中图分类号 S16 文献标识码 A 文章编号 0517-6611(2016)05-220-05

Abstract We introduced the design thought and functional characteristics of processing analysis system of municipal rainfall process data graphical display system.This system introduced MeteoInfo library development, and adopted modular design based on database system.Independent module was used to complete the data entry, quality control, analytical processing and so on.The system had the characteristics of high automation, simple usage and so on, which met the requirements of rainfall data monitoring and graphical display of operation service.This system had high promotion and practical values in all levels of meteorological departments.

Key words Rainfall process data graphical display system; Development; Application; Rainfall pattern; MeteoInfo class library

随着气象现代化业务的快速推进,各地气象部门加大投入建设各种仪器观测设备,获取高时空分辨率的观测资料。其中自动雨量站作为建设中的重点,数量快速增加。如何快速有效地处理、分析、显示高密度的雨量数据,以促进气象预报服务能力水平的提高,成为各地气象部门急需解决的问题。各地气象部门结合当地实际工作需求开发出大量实用、高效的雨量显示分析处理程序。大连地区地处辽宁半岛南端,三面环海,地质环境复杂,辖域内夏季强对流天气多发,容易促发山洪地质灾害。因此,充分利用加密自动站雨量数据做好强降水天气的预警工作,能够提升大连地区防灾减灾整体能力。

在开发大连区域雨量数据图形处理分析显示系统时,技术人员参考各地气象部门开发的系统平台设计思路[1-7],设计开发了大连地区市级雨量数据图形处理分析显示系统作为开展日常业务工作的支撑工具,在日常的短临预报预警工作中发挥出重要作用。笔者对该系统的设计思路、功能特点及具体实现进行了介绍,以期为有同样开发需求的技术人员提供借鉴作用。

1 设计思路

雨量数据图形处理分析显示系统作为开展日常业务工作的基础工具,满足业务工作需要且稳定运行是首要的研发目标,因此需要符合高时效性、可靠性、可扩展性等原则。

雨量数据图形处理分析显示系统基于C/S结构,采用模块化设计,由数据录入系统、数据库系统和数据分析显示系统3部分组成。数据录入系统完成对各自动雨量站的采集,进行质量控制后操作入库;数据库系统对所有的站点数据进行统一存储管理;数据分析显示系统用于对自动站雨量的图形监控分析显示。该系统采用Dot Net软件开发技术,基于SQL SERVER 2005数据库系统开发,适用于Windows系列操作系统。系统结构设计合理、操作简捷、运行速度快、自动化程度高。

2 系统功能及实现

2.1 数据库系统

雨量数据图形处理分析显示系统处理整个大连区域所有雨量站点,包括山洪站、海岛站、浮标站等共计219个(图1)。各站点10 min上传一组温度、降水、风向、风速等气象要素数据。站点多、数据上传频度高,对数据库的操作频繁,因此数据库设计的优劣是确定后续数据量大、访问用户多时是否能够确保响应及时高效。在对比各种数据库系统且综合考虑性能、开发技术难度和人员学习难度等因素的情况下,决定采用SQL SERVER 2005数据库系统,作为当前主流流行的商用数据库系统,其具有功能强大、维护操作简单等特点,很适合该项目的建设。

数据库结构设计是否合理,在存储处理大数据量时性能表现差异明显。考虑到各自动站点观测的气象要素多达50多项,其中许多要素并未用于雨量监测预警业务,因此在设计数据库表结构时,仅设计存储部分要素的字段结构,减轻数据库存储的压力;由于各站点24 h不间断采集数据,数据库记录数快速增加,在兼顾数据库访问效率的时候需考虑数据的实时库和历史库的自动转换。系统建立了实时库和历史库,当实时库数据量达到一定量级后将自动转存至历史库;当检索数据时,系统能够自动跨越实时库和历史库完成用户的查询操作,实现面向用户的透明化操作。

2.2 数据录入系统

数据录入系统按结构和功能划分为数据实时监控扫描模块、数据质量控制模块、数据资料录入模块和数据库备份模块4个模块。

2.2.1 数据实时监控扫描模块。大连地区的自动站仪器设备采购于多个厂家,各厂家都提供了数据库和文件系统2种数据检索方式。系统在采集各站点数据时,由于各厂家设备配备的数据库系统类型多样、数据库表字段结构差异大,难以直接应用,尝试过同步各产品的数据库数据至自定义的雨量数据分析系统的数据库内,但在长时间的测试过程中发现经常出现对方数据库系统响应缓慢,甚至无法建立链接的情况。分析原因主要在于对方数据库在频繁响应数据同步模块的同步操作的同时,还需完成大量站点的数据录入操作,数据库负担重,难以保障同步操作过程数据的完整性。因此,系统在录入数据操作时考虑另外一种处理方案,解析处理各站点的数据文件,解析入库操作,降低数据库的操作频度。

各站点的雨量数据上传后存储在信息中心的FTP服务器上,数据实时监控模块对服务器的特定目录进行实时监控扫描,当扫描到有新文件生成时,将新文件取到本地目录,为数据的后续处理做好准备。系统在获取数据的过程中,获取临近时间段内FTP服务器和本地目录的文件列表,对比文件列表,监测到新文件启动数据下载操作,从而保证数据获取的及时性,确保新数据生成时能够被扫描监测到,但不重复获取数据,提高数据的处理效率,保证数据库系统的高时效性,能够实时反映雨量的变化分布情况。

2.2.2 数据质量控制模块。由大量监测仪器设备高频度采集的数据经常会因为仪器设备故障出现格式错误、无效记录等数据,而错误记录的混入会影响系统的应用,导致业务人员对天气变化形势的误判,因此数据的质量是确保系统是否满足实际工作需要的关键,而确定错误数据文件中剔除无效信息,确保数据记录的有效性成为必须解决的问题,数据质量控制是其中的关键操作。在系统的开发过程中,通过对数据文件的格式规范、观测仪器的性能参数和观测特点进行研究,在对大连当年的气候特点、历史降水特点的分析基础上,制定出资料提取、剔除的规范。针对自动站数据文件为文本文件的特点,在数据处理前依据标准文件格式进行正则表达式的匹配操作的预处理,剔除掉格式不规范的数据。自动站设备采集的雨量数据在时间和空间上具有一定的连续性,当与前后时次和临近数据相比出现异常跳跃时,可以根据数据质量的检验规范进行数据取舍操作;当数据超出仪器设备的观测范围时,即可判断数据无效。数据的质量监控操作只能提高数据质量,难以做到完全排除无效记录,因此需要对程序的操作记录进行日志记录,便于业务人员后续分析质控程序的性能,调整完善数据质控系统。

2.2.3 数据资料录入模块。数据资料录入模块主要对经过质控操作后的数据进行入库操作。数据入库操作要求高效、快速,在保证数据高完整度、低冗余的要求下,实现数据的批量录入,降低对数据库链接操作的频度,减轻数据库的压力。当数据入库操作出现错误的时候,进行事物回滚操作,对录入的不完整的数据进行删除,记入日志文件;当检索到数据已经录入时,不进行录入操作,避免数据重复。

2.2.4 数据库备份模块。系统所需处理的数据类型多、数据量大,当数据库系统长时间运行,随着数据量的增加,系统处理响应能力不断下降。为了保证数据处理的高效性,有必要对数据库的历史数据进行备份,增加系统的安全性和灵活性。该模块能够实现数据的自动增量备份导入功能,当需要对数据进行迁移操作时可以运用该模块完成数据库的移植工作。

2.3 数据分析显示系统

分析显示系统是整个系统的核心部分,主要通过处理数据库中的雨量数据实现雨量数据的监控报警,提供柱形、平面分布等多种图形产品。

2.3.1 累计雨量实时监控。

按照中国气象局业务规定《气象灾害预警信号发布与传播办法》要求,当特定时长范围内降雨量达到一定级别时,需要发布对应级别的暴雨预警信号,因此实际业务工作中,业务人员非常关注一定时段内各站点累计降水量。系统提供累计雨量实时监控图,方便用户掌握各站点的雨量情况。雨量监控图在设计时参考上级业务管理部门对雨量数据量级规定,以不同颜色表示小雨、中雨、大雨、暴雨等级别;在设计图形纵坐标标注时,考虑到该地区降雨情况特点,按照不同的雨量级别将纵坐标进行不等距的划分。暴雨过程在整个降水过程中所占比例有限,因此对暴雨以下量级降水分配更大区间长度,以促使图形显现更加美观。图形横坐标标注各站点名称,并以不同颜色区分基本站、区域站和山洪站等级别,由于全部站点过多无法全部进行显示,因此默认对累计雨量排名前60位的站点进行排序显示(图2)。预报业务工作中,经常将20:00作为一天的起始时刻,因此该监控程序在无人工干预的情况下,默认从20:00开始计算到当前时刻的累计雨量;当降水过程持续时间过长、降水起始时刻开始于20:00以前,此时可以通过功能按钮指定降水过程的起始时刻,然后由系统自动计算起始时刻至当前时刻各站点的累计雨量。程序在非实时监控状态下,可以检索任意时间段各站点的累计雨量。

2.3.2 单站点雨量时序图。

在取得各站点累计降水数据后,通常业务人员还关注某一站点一定时间段内逐小时、逐10 min的降水时序图,获取该站点降水强度信息。业务人员在操作时,通过鼠标选中各站点的柱形图形后,双击操作后调出各站点部分气象要素的时间变化序列图(图3);还可以通过功能按键进行时间显示间隔的切换。

2.3.3 雨量区域分布图。雨量区域分布图可以直观地掌握降水的分布情况,在实际业务工作中得到广泛应用。通常在区域分布图的制作过程中,都需要对各站点数据进行插值分析、绘制等值线,然后进行填色操作。常用的绘图软件GrADS和Surfer的二次开发的工作主要是通过开发数据接口将现有数据转换其支持的数据格式,然后通过后台批处理的方式调用出图,但这种操作方式难以实现对图形内容风格的细粒度操作,在多方调研分析后决定采用开源的MeteoInfo.dll类库进行二次开发,从而实现产品的灵活定制。

气象数据图像分析系统MeteoInfo是由中国气象科学研究院王亚强对气象数据显示、分析功能而开发的类库。该类库支持多种气象数据格式,包括MICAPS第一类数据、第十一类数据、第十三类数据以及GRIB格式资料、NetCDF格式资料等,同时还支持多种地理数据格式,包括ESRI的Shape格式地图数据、GrADS格式地图数据、MICAPS格式地图数据;其提供统一的函数接口,能将各种数据转换成经过插值后的格点数据,插值过程还可基于不同参数满足不同功能需求。

基于MeteoInfo类库进行桌面程序的开发主要是通过引用类库中的LayersLegend、MapView和MapLayout 3个控件,LayersLegend是管理MapFrame和Layer,MapView是地图显示控件,MapLayout是图形版面管理控件,使用MeteoInfo桌面软件可以很容易理解这几个控件的用途[8]。通过C#语言引用类库的函数,可以完成插值、等值线分析等操作,按照MeteInfo.dll类库的要求自定义好填色调色板文件后,结合地理Shape文件可以做出直观的雨量分布图(图4)。雨量区域

分布系统基于GIS系统,可以实现图形的漫游、无极缩放等功能,方便呈现更多的雨量信息细节。系统在开发的过程中,还扩展了控件功能,在MapView控件上绘制出图例图,并实现对站点雨量数据的统计功能,可以较为方便地获取所有站点雨量数据的区间分布情况。

MeteoInfo类库不仅支持桌面程序的开发,同时还支持IronPython脚本程序的调用开发。系统可以通过脚本程序后台自动获取数据,按照设计好的版式进行出图,此项功能可以用于对图形美观程度要求较高的工作(图5)。

2.3.4 雨量数据的表格方式显示。

由于实际工作中业务人员还常关注各站点所在区域等更具体的信息,因此系统设计时还提供表格浏览数据的方式,以表格的方式浏览各站点的站号、站名、站点所在区域、雨量信息等具体信息(图6),方便业务人员提取制作发布预警信号。

3 应用效果

雨量数据图形处理分析显示系统开发完成后部署在大连地区各区市县气象部门应用,取得很好的效果。

该系统建成前,各部门处理使用雨量数据只能各自处理。由于软件开发水平参差不齐,导致统计的雨量数据常出现不一致的情况,制作出雨情分布图美观程度也难以达到各级领导的需求。该系统的建设使得雨量数据可以实现对质控后的数据统一入库管理,提供了一个供各部门使用的统一平台,能方便地实现雨量数据的监控、图形显示,显著提高了工作效率。

4 小结

(1) 系统通过数据录入操作,建立数据库系统对站点数据进行存储,提供方便的数据录入检索功能,方便业务人员分析处理数据。

(2) 研究了自动站雨量数据的质量监控技术方法,对入库数据进行质量控制,提高了数据质量,保证生成产品的有效性。

(3) 根据各项业务规定,制作生成多种雨量数据的监控图形产品,多方面地获取大连地区全域雨量数据的变化信息,促进工作效率的提高,提升了服务的手段和能力水平。

(4)该系统的建立为开展预报预警服务业务和天气个例总结工作提供了一个很好的平台和支撑。基于MeteoInfo类库的开发经验,也为后期业务系统平台的开发奠定了基础。将系统所使用的Shape文件替换成其他地区的信息,匹配好站点信息,也可以将系统推广到其他地区应用。安装部署也较为简单,具有较好的推广价值和前景。

参考文献

[1]肖天贵,肖光梁.高原山地短临预警预报系统的设计与构建[J].高原山地气象研究, 2012,32(3):46-49.

[2]梁丰.对流天气临近预报业务系统的新发展[J].沙漠与绿洲气象,2011,5(6):1-6.

[3]郑永光,王洪庆,陶祖钰,等.Windows下二维气象绘图软件-客观分析诊断图形系统[J].气象, 2002,28(3):42-45.

[4]皮学贤,,蔡勋,宋君强.气象可视化原形系统的设计与实现[J].计算机工程与科学, 2001,23(1):51-54.

[5]李培军,张维峰,郭洪涛.气象资料三维化技术中的插值问题[J].气象科学, 2005,25(6):617-623.

[6]和青芳.计算机图形学原理及算法教程[M].北京:清华大学出版社,2006:156-164.

[7]李大为,隋东,黄振.沈阳天气预报业务自动化平台的开发研制[J].气象与环境学报,2006,22(2):69-71.

[8]王亚强.MeteoInfo-Help-1.0-Chinese[Z].2012.

猜你喜欢

类库数据库系统雨量
宁夏红柳沟流域水沙变化及产沙分析
基于小波去噪的称重雨量数据分析
Python在数据可视化中的应用
数据库系统shell脚本应用
数据结构可视化类库的设计与实现
微细铣削工艺数据库系统设计与开发
实时数据库系统数据安全采集方案
SL—1 型雨量传感器故障分析排除和维护
核反应堆材料数据库系统及其应用
流域平均雨量