宁夏气象数据共享查询系统的设计与实现*

2015-05-25 00:33李新庆单新兰
关键词:宁夏气象检索

李新庆,单新兰,岳 勇

(宁夏气象信息中心,银川 750002)

宁夏气象数据共享查询系统的设计与实现*

李新庆,单新兰,岳 勇

(宁夏气象信息中心,银川 750002)

为进一步改善宁夏气象数据服务水平、规范CIMISS用户数据接口,提升CIMISS基础数据库检索效率,采用VC++和CIMISS API技术设计实现了宁夏气象数据查询系统;系统为授权用户提供从CIMISS基础库中的数据查询、图形展示、导出等功能;系统已经投入到业务使用中,应用结果表明系统对开展气候分析、天气预报、气象资料科研提供有力支撑。

CIMISS;API;数据查询

全国综合气象信息共享平台CIMISS(China Integrated Meteorological Information Service System)是中国气象局构建的气象信息网络系统的核心业务框架,它是包含数据收集、处理、分发、服务、存储管理、业务监控一体化的气象信息业务平台[1],它采用国家、省两级布局,由一个国家中心和31个省级中心组成[2],它是连接气象服务业务、预报预测业务和气象观测业务的一个纽带和桥梁,并向气象业务提供共享服务的基础信息平台。CIMISS系统着重解决气象数据从数据源到最终用户的收集、处理、存储和共享服务的问题[3],为用户提供了覆盖14大类的气象数据[4],囊括了地面、高空、海洋、辐射、服务产品、卫星数据和雷达数据等实时气象数据资料,为各用户单位提供气象基础数据支撑。为提升宁夏全区数据共享服务需求,对CIMISS系统开展本地化应用与研究,采用VC++和CIMISS API(Application Program-ming Interface,应用程序编程接口)设计实现区(省)级气象数据共享查询系统,系统可以满足宁夏气象各个业务用户对实时气象数据的共享和检索需求,并能为预报预测提供有力的数据支撑。

1 CIMISS系统功能介绍

CIMISS系统主要分为5个应用系统,包括数据收集分发系统(CTS),加工处理系统(DPC)、存储管理系统(SOD)、共享服务系统(GDS)和业务监控系统(MCP)[5]。各个系统通过消息的传递、文件共享服务的交互实现业务协作,并统一由业务监控系统进行业务调度控制、配置管理和总体业务监控,CIMISS逻辑结构如图1所示。

数据收发系统主要功能包括数据收集、数据分发和处理、数据补调、数据存档和管理、数据监视等;加工处理主要功能包括数据解码、质量控制、产品生成;存储管理需提供主要包括数据的存储和管理、数据备份和恢复、数据迁移和回迁等功能;共享服务系统主要功能包括数据和产品检索下载、数据产品目录服务、数据产品的显示和统计等;业务监控系统包括实时业务监视、控制、告警和用户管理等。

2 CIMISS API接口

CIMISS系统提供了GDS数据访问接口,它屏蔽后台Oracle数据库的底层细节[6],为省级用户提供了一个可以定制的API编程接口[7],气象业务系统通过调用部署在本地的API客户端提交数据请求,获取数据。API方式比较有针对性,实时性比较好,能够满足各用户的使用需求。CIMISS API逻辑结构如图2所示。系统采用VC++MFC设计软件客户端,向GDS发送数据检索请求,接收用户参数并进行校验,GDS进行身份认证服务后,通过读取参数校验规则对检索参数进行校验,校验完成后GDS对SOD请求数据,完成数据拷贝、数据处理和数据导出功能,并生成日志。

图1 CIMISS逻辑结构[5]

图2 CIMISS API逻辑结构

3 系统实现关键技术

3.1 CIMISS API检索数据步骤

目前,CIMISS仅提供了支持C++语言的应用程序编程接口,通过接口,气象业务系统通过调用部署在本地的API客户端提交数据请求,获取气象要素实时数据。

进行客户端开发时,需要依赖CIMISS提供的DLL动态链接库“libGdsAPI.dll”、“libcurl.dll”、“7z.dll”,以及“7z.exe”、“gdsAPIDef.h”、“gdsAPI.h”、“gdsAPI.cpp”、“libGdsAPI.conf”文件,各类文件功能如表1所示。

表1 CIMISS客户端依赖文件

使用CIMISS API检索数据步骤:系统初始化时,在调用开始需要先加载动态库,调用InitDataLibrary();进行用户认证,调用checkUser("gds","gds"),只有验证成功后,才能进行数据检索;数据检索时,需要声明返回结构;按照接口说明,传入合理的参数值,等待并取得结果;解析返回数据。

目前,系统支持五类气象要素资料(气温、降水、风、湿度、气压、地温和天气现象),系统界面如图3所示。

图3 CIMISS数据共享查询系统界面

3.2 使用CIMISS API接口实现要素查询

系统在检索实时气象要素数据时,需要采用CIMISS API提供的数据检索通用接口,CIMISS为用户提供了五类检索通用接口[8],接口类型见表2。

表2 CIMISS数据检索通用接口

其中,系统主要运用了站点要素类资料数据接口和站点要素类资料文件接口。站点要素类资料数据接口可以根据条件返回台站类要素资料数据信息,返回结果为符合条件的要素数据流对象,它可以作为数据检索和查询使用。站点要素类资料文件接口根据条件返回台站类要素资料数据信息,返回的结果为符合条件的要素文件,它可以作为数据文件导出和下载使用。

通过调用表2所示的通用接口方法,可以实现气象要素的实时检索和查询。这里站点要素类型资料数据接口,GDS面向业务系统提供的getStaEleData()方法覆盖了地面资料(10 min、逐小时、日值、月值、旬值、年值)、风能、辐射资料、沙尘资料、酸雨等103类资料编码[9],在进行数据检索和查询时,需要设置相应资料类型编码。

进行要素查询时,查询条件是以键和值(key-value)的形式给出的,一次检索请求可通过设置多个不同的键值对,共同组成一个查询条件。关键代码为

以气温要素为例,检索和查询多站点小时数据界面见图4。

图4 CIMISS数据共享查询系统界面

3.3 TeeChart组件实现要素图形化展示

系统采用TeeChart Pro ActiveX控件实现气象要素的图形化展示功能,Teechart是由西班牙的Steema公司研发的一系列图表控件的简称[10]。它是专门为C++编写的一款功能强大的图形工具软件包,它可以在包括VC++、VB、.NET等多种编程环境下使用。

系统主要采用TeeChart控件中的Fast-Line进行绘图,Fast-Line绘制的图形都直接在Windows GDI上运行,因此可以增加系统绘制曲线的运行速度[11]。

TeeChart自身提供了图片保存方法来导出图片,为系统授权用户提供图片导出功能,关键代码为

采用TeeChart控件绘制的CIMISS气温要素实时数据系统界面见图5。

图5 多站点气温要素实时数据图形展示

4 结 论

采用基于CIMISS API设计实现宁夏气象数据共享查询系统,为授权用户提供从CIMISS基础数据库和实时数据库中检索气象数据资料[12],并提供数据查询、图形展示和数据导出功能。系统具有安装部署简单、数据检索效率高、系统维护成本低等特点,不但能够满足宁夏气象部门对实时气象数据的检索需求,而且还可以为其他省级气象部门CIMISS本地化应用起到借鉴作用。

[1]赵芳.全国综合气象信息共享平台CIMISS总体业务及数据构架[R].国家气象信息中心,2013

[2]赵芳,马强.新一代天气雷达信息共享平台总体设计说明书[R].国家气象信息中心,2010

[3]杨润芝,马强,李德泉,等.内存转发模型在CIMISS数据收发系统中的应用[J].应用气象学报,2012,23(3):376-383

[4]沈坚.全国综合气象信息共享平台(CIMISS)总体设计架构[R].国家气象信息中心,2011

[5]赵芳.全国综合气象信息共享平台(CIMISS)总体业务架构[R].国家气象信息中心,2011

[6]王曼燕,邓莉,赵芳,等.CIMISS中气象卫星数据存储和服务模型[J].安徽农业科学,2012,40(8):4785-4789

[7]何文春.CIMISS应用服务接口(API)介绍[R].国家气象信息中心,2013

[8]马强.CIMISS应用检索接口(API)用户手册[M].北京:轻工业出版社,2011

[9]马强,杨润芝.CIMISS-GDS应用检索接口(API)用户手册[M].北京:轻工业出版社,2013

[10]程华、王华闯.TeeChart 8.0控件组在激光测距软件中的应用[J].工业控制计算机,2013,26(4):39-42

[11]文治洪、胡文东.使用Chart控件实现生理信号的实时显示[J].电子设计工程,2011,19(5):63-66

[12]杨艺,唐灿.一种启发式Web信息检索方法[J].重庆工商大学学报:自然科学版,2010,27(2):139-144

Design and Implementation of Ningxia Meteorological Data Share Query System

LI Xin-qing,SHAN Xin-lan,YUE Yong

(Ningxia Meteorological Information Center,Yinchuan 750002,China)

For improving Ningxia meteorological data service,standardizing user interface for CIMISS meteorological database and promoting retrieval efficiency of CIMISS database,this paper designs Ningxia meteorological data query system by VC++and CIMISS API.The system is accessible to authorized users for data query,graphical displaying and exporting from CIMISS basic data base.In application of the system,the results show the system is very supportive for climate analysis,weather forecasting and meteorological materials research.

CIMISS;API;Data Query

TP399

A

1672-058X(2015)03-0055-05

10.16055/j.issn.1672-058X.2015.0003.012

2014-08-18;

2014-09-20.

国家发展和改革委员会项目(TC09EL42);宁夏气象信息中心青年基金课题(NQ2014113).

李新庆(1983-),男,陕西周至人,助理工程师,硕士,从事气象资料应用研究.

猜你喜欢
宁夏气象检索
气象树
《内蒙古气象》征稿简则
宁夏
大国气象
美丽的气象奇观
宁夏煤电博弈
宁夏
专利检索中“语义”的表现
宁夏:首办立法论辩会
国际标准检索