重庆气象服务接口系统接入CIMISS的技术方法研究与实现
2016-12-31史利汉
赵 芳 史利汉 魏 威
重庆气象服务接口系统接入CIMISS的技术方法研究与实现
赵 芳1史利汉2魏 威3
1.重庆市气象信息与技术保障中心,重庆 401147 2.重庆市气象局,重庆 401147 3.重庆华云气象科技开发有限公司,重庆 401147
从存储策略、表结构设计、数据格式,接口参数、适用场景等多个方面对重庆本地气象数据环境和CIMISS进行比对和分析,找到两者之间的差异和映射关系,对重庆气象数据服务接口进行改造,完成重庆气象服务接口系统接入CIMISS的目标。
CIMISS;CQMISS;数据服务接口;移植
引言
重庆气象信息中心自2007年开始打造本地的气象数据支撑平台——重庆气象信息共享系统CQMISS(ChongQing Meteorological Information Service System),采用Mysql存储基础气象数据及产品,并遵循SOA标准以统一服务接口方式面向重庆气象业务和科研服务。基于目前重庆本地数据环境的应用情况,如何实现从CQMISS到CIMISS的平滑过渡,对本地数据服务接口进行改造是非常关键的一步。本文通过对两种数据环境进行详细的差异分析,最终确定移植方案并实现接入目标。
1 CQMISS现状分析
重庆气象数据支撑平台整体架构遵循SOA标准设计,建立数据产品资源池和业务功能资源池,以服务接口的方式支撑各个业务系统的建设。其中重庆气象信息共享系统CQMISS现已开发webservice基础接口23个,注册用户200多个,粗略统计每天调用次数60万余次,数据下载量40G左右。
要在用户和业务系统不做任何改动的情况下实现接入目标,就必须保证接口的参数输入和结果输出不变。对重庆数据接口进行改造,核心代码优先调用MUISC,从CIMISS获取数据。经过分析,此次主要对日常业务中使用的最广泛的五个接口进行改造。
2 CQMISS与CIMISS差异分析
2.1 数据存储差异
CIMISS数据库采用ORACLE,本地数据库采用Mysql。两种存储环境存在多种不同,经过比对得出移植改造造成的影响差异。
2.1.1存储策略差异
CQMISS和CIMISS均根据数据采集频率、数据大小制定相应存储策略。CIMISS数据库通过ORACLE的表分区功能实现,CQMISS则根据存储策略制定分表策略,以年分库,或年或月或旬建表,由入库程序自动完成。
2.1.2表结构差异
气象资料存储结构依据资料传输格式、要素关系及应用习惯进行设计。基于气象资料传输传输的标准化,大多数CQMISS表结构设计与CIMISS一致;一部分因设计时考虑应用需求方向不同存在差异。
2.1.3数据单位差异
CQMISS环境下的入库策略大多将数据文件直接解码入库,保留原始的数据单位、占位补齐,不做修改;CIMISS在解码时会对数据做一定处理,使得存储的数据更有利于直接应用。
2.1.4特征值差异
CIMISS环境中对各种特征值有非常规范和详细的定义,如缺测用999999表示,不观测和无数据用999998表示等。而CQMISS中对缺测、不观测等情况造成的要素缺失,均用相应占位的“/”表示,如温度缺测,表示为“////”。为保证输出一致,需要对特征值做相应处理。
2.2 接口差异
2.2.1使用场景差异
此次改造中,CQMISS涉及的几个接口均为通用接口,为适用于所有资料多种场景的基础接口。CIMISS提供应用的MUSIC接口,多为定制接口,适用于不同资料、不同场景。需要对多种资料的定制接口进行分析,找到与CQMISS接口应用场景更相近的接口,以确定对接方案。
2.2.2 参数差异
接口的参数差异主要表现在资料类型、时间、要素等方面[1]。
3 具体实现
经过前面的差异分析,遵循CIMISS已提供服务的数据从CIMISS获取,CIMISS未提供服务的数据及本地特色产品仍从CQMISS数据环境获取的原则,确定CQMISS改造方案。改造方案根据数据表结构的差异分为结构相似和结构不同两种情况。代码修改包括本地服务接口与MUSIC资料代码、要素参数的映射,提交参数获取CIMISS数据,对返回输出的格式化等等。改造后流程如下图:
3.1 结构相似的数据接入改造
(1)建立CQMISS与MUSIC元数据信息映射表。该表的设计是整个改造过程中最为关键的一步,需要在表中详细体现出两个数据环境中的具体差异及映射关系。
(2)根据CQMISS用户提交的参数,查询缘数据信息映射表,转化为MUSIC匹配的参数。
(3)根据参数判断适用场景,选择相应的MUSIC接口。提交参数,调用接口从CIMISS获取数据。
(4)依照映射表中CQMISS的要素单位和长度,对获得的数据进行格式化转换,包括特征值的转换,并返回给用户。
3.2 结构不同的数据接入改造
结构不同资料的属个别现象,找不到相似规律,需具体情况具体处理,找到用户提交参数与数据表之间的关系及映射算法。以土壤水分逐小时资料为例,getedatatoarray接口在接收到参数后,需要从要素参数中解析出土壤深度和要素。相应的MUSIC接口选择“按时间、区站号、土壤深度检索农气资料数据要素”,提交参数后需要对返回结果再做多条合并,保证按用户要素顺序返回至客户端。
4 存在问题
改造后从功能上实现了本地数据服务接口到CIMISS的移植。但需对每一个输出数据点作格式化处理,数据量较大时存在时间损耗,接口性能会下降。因大批量数据需求主要面向科研业务,对时效性要求不高,可以接受;对日常实时预报预警业务无影响[2]。
5 结论
通过对重庆气象数据服务接口进行改造,实现了在业务用户及应用系统不需要做任何改动的情况下,服务接口从本地数据环境到CIMISS数据环境的移植,完成重庆气象服务接口系统接入CIMISS的目标。同时,CQMISS和CIMISS两个数据环境互为补充和备份,任意一方发生故障,管理人员只需要稍作配置上改动,即可完成切换,提高了数据服务系统可靠性。
[1]熊安元,赵芳,王颖,等.全国综合气象信息共享系统的设计与实现[J].应用气象学报,2015,26(4).
[2]孙周军,肖文名,等.基于SOA的数据访问通用服务系统研究与应用[C]//第31届中南六省区,2013.
Research and implementation of Chongqing meteorological service interface system access CIMISS Technology
Zhao Gang1Shi Lihan2Wei Wei3
1 Chongqing Meteorological Information and Technical Support Center, Chongqing 401147, China 2 Meteorological Bureau of Chongqing Municipality, Chongqing 401147 3 Chongqing Huayun Meteorological Science and Technology Development Co., Ltd., Chongqing 401147
This paper from storage strategy,structure design,data format and multiple aspects of interface parameters,the application scenes of Chongqing local meteorological data environment and CIMISS for comparison and analysis,find the difference and mapping relations between the two,the transformation of Chongqing meteorological data service interface,complete Chongqing meteorological service system access interface CIMISS.
CIMISS;CQMISS;data service interface;transplantation
P456.7
A
1009-6434(2016)09-0112-02
赵芳(1980—),女,汉族,湖北宜都人,本科学历,工程师,重庆市气象信息与技术保障中心,从事气象信息共享与数据管理工作。