基于企业级地理信息系统服务平台的气象信息检索平台的设计与实现

2011-06-29 06:12刘孙俊
成都信息工程大学学报 2011年6期
关键词:信息检索站点气象

张 进, 李 超, 刘孙俊

(成都信息工程学院计算机学院,四川成都610025)

1 引言

随着中国气象事业的发展和气象科学知识的普及,气象信息在政府决策层起着越来越重要的作用,并且产生了显著的社会和经济效益。近些年,因气象信息尤其是灾害气象信息的作用而在气象灾害中减少的经济损失越来越多,充分体现出气象信息尤其是灾害性气象信息的重要价值。

地理信息系统(GIS)是近年来迅速发展起来的,介于地球科学与信息科学之间的交叉学科,也是一门地学空间数据与计算机技术相结合的新型空间信息技术。由于气象领域涉及到大量的数据和图形信息,GIS以其独特的空间分析功能展现出巨大的潜能。随着计算机技术、网络技术、数据库技术的发展以及不断深入,在GIS基础上出现的WebGIS呈现出新的特点和趋势,对GIS的不足之处提供了很好的解决方案。ArcGIS Server是一个基于Web服务技术的企业级GIS解决方案,提供创建和配置GIS应用程序和服务的基本框架,可以满足各种客户端的需求,其最大的优势在于提供基于网络的GIS服务而不仅仅是信息的共享[1]。ArcGIS Server和其他的ArcGIS系列软件一样后台都是基于Arcobjects组件搭建而成,集中管理并以网络为核心支持多用户的GIS应用,提供了地图查看,地图编辑,查询信息等服务[2-3]。

气象是一个信息密集型的行业,气象资料包括地面、高空、农业、海洋、卫星、雷达等各种气象观(探)测记录,以及由这些记录加工处理而成的各类气象数据集,各种气候统计值和数值分析资料,气象服务产品等。近年来,由于中国各省市综合观测系统的建立和完善,大量的气象资料汇集到了信息管理部门,气象部门初步实现了由手工抄录,原始资料服务向信息化资料服务的转变。但随着气象业务服务领域的不断拓展,气象资料种类多,结构复杂,数据量庞大,中国气象系统内、外对气象信息的需求也越来越大,信息的数据量也越来越大,传统的气象信息服务方式已经不能满足业务需求。在此大背景下,从2006年陆续有气象部门结合自己的需求和已经成熟的WebGIS技术推出了更能满足本部门需求的基于ArcGIS Server的气象信息检索平台。

该气象信息检索平台与以往的气象信息检索平台相比有很大的不同,首先它是基于简单灵活的REST服务架构风格,具有很好的扩展性和易用性。地图服务可以配置为动态地图服务,也可以配置为切片服务,具有良好的兼容性。同时系统采用灵活的配置开发模式,全部功能均采用widget模式开发,然后采用config.xml进行集中配置,使系统具有良好的易用性和可扩展性。

2 ArcGIS Server的体系结构

基于ArcGIS Server构建的气象信息检索平台在层次上可以分为3个层次:用户层,应用层和数据层。气象信息检索平台架构图如图1所示。

用户层:包括了基于B/S架构的web浏览器,该层可以调用应用层开发的功能和提供的服务,供用户使用相应的功能。

应用层:又可分为GIS服务器和Web服务器,GIS服务器层主要负责处理Web浏览器发送的请求,并根据用户的请求通过jsp向数据层请求数据。管理员主要是通过Web服务器对数据库中的气象信息数据进行管理。

图1 气象信息检索平台系统架构图

GIS服务器宿主了所有的GIS资源,并且把这些GIS资源当做服务发布到客户端。GIS服务器由一个SOM(服务器对象管理器)和多个SOC(服务器对象容器)组成,其中SOM会在机器里面启动一个管理服务进程,而这个服务负责管理分布在服务器容器上的服务器对象;SOC则是SOM启动的一个进程,负责宿主服务器对象[4]。

Web服务器层是运行Web应用程序的机器,负责响应客户端浏览器的请求并且向数据层发出请求,对气象信息数据进行编辑。

数据层:主要负责存储气象信息等数据,其中空间数据存储在Geodatabase,而实时的气象信息数据则存储在关系数据库中,管理人员可以通过ArcGIS Server管理页面对Geodatabase空间数据库进行管理,通过用户层对气象信息数据进行编辑,从而通过如此配置可以实现数据的有效管理[5]。

3 气象信息检索平台的设计原则

3.1 数据标准化处理

数据标准化处理是构建稳定,高效数据库的基础。气象信息涉及到很多学科数据,这些数据存在多源等特点,没有统一的格式标准,而这其中最重要的就是地图坐标系的统一和建立统一的存储格式。目前存在多种坐标系统和投影方式,为了统一坐标系统,所以所有坐标系统均采用WGS-84大地坐标系。

3.2 数据质量控制

为了提高数据的质量,提高数据库的高效性,系统制定了一系列的质量控制标准,主要包括:数据属性的精度,数据的完整性,数据的更新等。

4 气象信息检索平台的功能设计

GIS气象信息检索平台是根据业务发展而开发的应用平台,主要功能涉及气象信息检索平台应用范围的基础地理信息数据组织入库、地图制作、平台界面布局设计、自动站信息检索、观测资料详细信息查询、气象要素插值生成等值线和等值面等[6]。

4.1 地图的基本操作

基本操作包括最基本的浏览地图的操作功能、漫游、放大、缩小、鹰眼等,可以让用户随意的浏览地图。

4.2 数据管理

数据管理包括了对空间数据的管理和气象信息数据的管理。其中空间数据主要是地理信息数据,气象数据则包括站点的基本信息,实时的气象信息数据和历史的气象信息数据。

4.3 站点气象信息检索

根据行政区划、日期、时刻、显示类型、站点类型将所选择的要素的统计信息和图表信息在弹出框上予以显示,这里指的是根据范围检索。其中行政区划包括省、市、村;时刻精确到小时;显示类型包括:气压、气温、风场、相对湿度、小时降雨量;站点类型包括:基准站、基本站、一般站、区域站。

4.4 站点信息查询

根据用户点击的站点显示站点的详细信息、包括站点的基本信息,人员信息和描述信息,并且根据站点的观测类型显示其详细信息,其中观测类型包括:地面观测、高空观测、雷达观测、卫星观测、农气观测、环境观测、装备观测、通讯观测。

4.5 要素差值

根据用户选择的差值字段、等间距、生成等值线或者等值面,当需要生成新的结果时首要要清楚上次结果,以免产生图形的叠加。

5 气象信息检索平台的实现

气象信息检索平台主要功能涉及到了基础地理信息数据组织入库、地图制作、站点信息检索、观测资料详细信息查询、气象要素差值生成等值线和等值面等。

针对系统的目的和以上设计思路,气象信息检索平台客户端代码是基于ArcGIS Server API for Flex(ArcGIS Server API for Flex可以说是ArcGIS Server的扩展开发组件,可以在使用ArcGIS Server服务的基础上开发web应用,可以使ArcGIS Server提供的各种服务和flex提供的各种组件很好的结合,构建较好的web GIS应用)由ActionScript完成了气象信息检索的功能,并且通过JSP完成对数据库的访问并以XML格式返回给Flex客户端。Web服务器端是基于J2EE架构由flex和java语言开发。

气象信息检索平台的开发环境:Myeclipse;FB3-WWEJ-Plugin;ArcGIS API for Flex;jdk-6u1-windows-i586-p;agslib-1.3-2009-10-31。

而在系统中通过对ArcGIS REST API提供的简单、开放的接口来访问和使用ArcGIS Server发布的服务,使用URL可以获取和使用服务中的每一个资源和操作。FlexViewer是ESRI公司利用Flex技术,基于本身已开发好的Flex API包开发的一个成熟的WebGIS实例框架。其完全是开放的,可以从官方网站上的Code Gallery直接下到源码,下载完成后解压直接导入Adobe Flex 3 Builder项目即可使用。FlexViewer从2009年在社会上出现以来,引发了一场热烈的WebGIS开发热潮。其完美的将Server Flex API的优点展现出来,使很多第一次见到这种体验效果的人心潮澎湃。Flex API最大优势也许就在此,就是依靠了一个具有很好用户体验效果的平台FLEX。在气象信息检索平台的实现中就使用了FlexViewer这个开源框架,降低了开发的复杂度和开发时间,并且由于FlexViewer框架是得到长时间验证的WebGis解决方案,所以具有一定的稳定性。

FlexViewer的整体结构如图2所示。

ViewverContainer:继承自Group,应用了单例模式,是FlexViewer中各个模块的容器。

ConfigManager:FlexViewer通过配置文件来组织数据,功能和UI。ConfigManager的职责就是解析配置文件,并且进行分发,由需要模块进行接收。

UIManager:UIManager通过配置文件对UI进行统一的配置。

MapManager:map是Gis的基础,MapManager并不是对map的简单封装,而是提供了与map相关的操作。

WidgetManager:WidgetManager是对Widget进行管理的组件,其中根据配置文件创建Widget信息列表,加载Widget,布局Widget,销毁Widget等。

图2 FlexViewer的整体结构

图3 FlexViewer的初始化过程

FlexViewer初始化过程如图3所示。ConfigManager,UIManager,WidgetManager,MapManager在各自的初始化过程中对相应的事件进行监听,一旦ViewverContainer初始化完成,派发除CONTAINERINITIALIZED事件,其他的准备工作将顺其自然。

气象信息检索平台是由系统的生命周期对整个流程进行控制,其生命周期如下:

(1)用户通过客户端浏览器访问气象信息检索平台,则系统初始化flex应用容器 ;

(2)flex应用容器加载config.xml文件,并且初始化界面风格 ;

(3)根据 config.xml文件中配置的地图服务的地址,系统加载ArcGIS Server服务 ;

(4)系统根据用户的请求加载相应的config.xml文件中的widget,并且通过widget和系统业务逻辑进行交互,返回数据,解析并且显示。

图4 气象信息检索平台的流程图

图5 气象信息检索平台界面图

6 结束语

系统利用GIS和数据库技术,提出利用J2EE架构来实现集GIS功能和气象数据检索功能于一体的气象信息检索平台,并且在此基础上实现了西藏气象信息检索平台,提供西藏气象信息的可视化管理,增强了西藏气象信息数据的安全性,共享性,使西藏各级气象部门可以轻松的通过管理平台对基础数据和气象数据进行管理并且通过气象信息检索平台的可视化页面根据条件对数据进行检索。研究只在ArcGIS Server的应用方面做了初步的尝试,相信随着时间的推移,将会有越来越多的新技术应用WebGIS,而ArcGIS Server将会有更好的发展前景和趋势。

[1]郭婧,张立朝,王科伟.基于ArcGIS Server构建地理信息服务[J].测绘科学,2007,32(3):91-93.

[2]刘俊,谭建军.基于ArcGIS Server的网络农田地理信息系统设计与实现[J].广东农业科学,2009(9):224-227.

[3]韩立森,王翠茹,袁和金.Web服务在GIS中的研究与应用[J].华北电力大学学报,2004,31(2):69-72.

[4]毛峰,沈小华.ArcGis8开发与实践[M].北京:科学出版社,2002.

[5]沈百玲.ArcGIS Server体系结构和开发简介[R].北京:ESRI中国(北京)有限公司,2004.

[6]陆守一.地理信息系统实用教程[M].北京:中国林业出版社,1998.

[7]胡洁.Flex完全自学手册[M].北京:机械工业出版社,2009.

猜你喜欢
信息检索站点气象
气象树
《内蒙古气象》征稿简则
基于Web站点的SQL注入分析与防范
2017~2018年冬季西北地区某站点流感流行特征分析
大国气象
美丽的气象奇观
首届欧洲自行车共享站点协商会召开
怕被人认出
医学期刊编辑中文献信息检索的应用
在网络环境下高职院校开设信息检索课的必要性研究