基于CIMISS的辽阳地区中央指导报数据下载入库软件的设计与实现

2018-06-13 09:56高凌峰赵婷婷胡小康杨冰王雪莹白志娜
科学与财富 2018年13期
关键词:数据库

高凌峰 赵婷婷 胡小康 杨冰 王雪莹 白志娜

摘 要:以.NET、c#和MySQL数据库技术为依托,建立基于CIMISS的辽阳地区中央指导报数据下载入库软件,该软件由数据下载模块、数据库系统、数据入库模块和定时任务模块构成。各模块相对独立,提高了该软件的稳定性、安全性和可维护性。通过使用CIMISS数据系统的C#客户端接口定时下载中央指导报文本文件,文件解码后写入本地MySQL数据库,使数据查询更加方便快捷和历史资料的保存,为辽阳预报水平的提高积累资料。

关键词: CIMISS; 中央指导报;MySQL;数据库

中央指导报是中央气象台对市级城镇预报的指导,是市级气象部门城镇预报的一项重要参考产品,中央指导报数据的及时、稳定和准确对每日城镇预报很有意义,中央指导资料的存储和历史资料归档对市级气象部门对中央指导产品的检验、预报经验总结至关重要。因此一个及时、穩定的产品获取渠道和方便、快捷、稳定的存储方式至关重要。

国家综合气象信息共享系统,简称CIMISS,辽宁省CIMISS与2017年建设完成并投入业务使用,该系统信息数据是由辽宁省信息服务中心维护,数据入库问题维护更加及时,而卫星小站数据是由本市信息保障部门进行维护存在维护不及时和数据解码滞后等问题,所以本软件选用更加及时稳定的CIMISS来获取中央指导报数据。

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。因为其速度快、可靠性抢和适应性好,该软件选取MySQL数据库作为中央指导报数据存储服务器。

1辽阳地区中央指导报数据下载入库软件总体结构

软件设计框架如图1,由中央指导报数据下载模块、MySQL数据存储系统、中央指导报数据解码入库模块和定时任务模块构成。

2辽阳地区中央指导报数据下载入库软件模块设计

2.1中央指导报数据下载模块设计

气象数据统一访问接口(MUSIC),是基于全国气象综合信息共享平台的(CIMISS)的数据环境。利用其面向气象业务和科研提供的标准的C#应用程序编程接口,通过使用下载服务的文件的方法(callAPI_to_downFile)将中央指导报数据接口(getSevpFileByTime)的文本文件下载到本地。当任务任务完成时返回值为1。具体代码如下。

String userId = "*********";//

String pwd = "********";//

String interfaceId = "getSevpFileByTime";

Dictionary params1 = new Dictionary

{

{ "dataCode", "SEVP_WEFC" },

{ "times", timefordata }

};

String saveDir = Application.StartupPath + @"\中央指导报";

RetFilesInfo retFilesInfo = new RetFilesInfo();

client.initResources();

int rst = client.callAPI_to_downFile(userId, pwd, interfaceId, params1, saveDir, retFilesInfo);

2.2 MySQL数据存储系统设计

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。因为其速度快、可靠性强和适应性好,该软件选取MySQL数据库作为中央指导报数据存储服务器。

通过C#,利用SQL语句新建库“lyqxt”,并在库中建立表“中央指导报”。并根据中央指导报文本文件格式建立列标,依次为预报时效站号,温度,湿度,风向,风速,气压,降水量 ,总云量,低云量,天气现象,能见度,最高气温,最低气温,最大湿度,最小湿度,24小时降水,12小时降水,12小时总云量,12小时低云量,12小时天气现象,12小时风向,12小时风速。为了避免重复入库和提高检索效率,定义“预报时效站号”列为主键和索引。

2.3中央指导报数据解码入库模块设计

中央指导报文本文件中存储了全国2599个国家站未来168小时内的城镇预报结论,其中包含辽阳地区三个国家站,站号依次为54345、54347、54348。该模块利用C#语言将下载到本地的中央指导报文本文件读入内存并从其中检索出上述三站的全部预报产品,以字符串形式写入一维字符串数据内。当提取完全部站点信息后将中央指导报产品数据批量写入MySQL中央指导报数据库。

2.4定时任务模块设计

中央指导产品每日两次分别在1:00和14:00左右写入CIMISS数据系统,数据源稳定但写入时间每日会有所不同,为了保证第一时间获取到中央指导产品,该软件定义DataTable格式全局变量dt进行任务存储,存储信息依次为任务时间、任务类型、数据名称、时间特征、循环特征五项,为了增加人机交互性能选取dataGridView控件来直观显示dt内存储的任务信息。

添加timer控件,并定义interval属性为1000以实现每秒进行一次任务判断。通过对系统时间与任务时间进行比较,当系统时间大于任务时间时执行中央指导报文本下载模块,如果下载成功执行入库模块并更新任务信息为下次任务的信息,反之如果下载失败则等待下次任务判断。当任务超过规定时效未完成此次任务,循环特征标记为一次并形成下次下载任务。

3小结

随着计算机水平的发展,数值模式产品发展迅速,一款稳定准确的模式产品对市级预报员的参考意义重大,中央指导报是中国气象局下发的十分具有参考意义的指导产品。辽阳地区中央指导报数据下载入库软件能够实现及时、准确和稳定获取中央指导报信息,对预报员对中央指导报的获取、分析至关重要。

参考文献:

[1]熊安元,赵芳,王颖,等.全国综合气象信息共享系统设计与实现 [J] .应用气象学报,2015,26(4):500-512.

[2]史彩霞,黎颖智,张许斌.基于CIMISS的广西气象服务信息综合业务系统的设计与实现 [J].气象研究与应用,2016,37(4):82-85.

[3]杨群娜,陈素英,谢礼江,等.气象网站公众互动栏目的设计与实现 [J]广东气象,2016,38(3):50-52,55.

猜你喜欢
数据库
数据库
数据库
数据库
数据库
数据库
数据库