基于中间件技术的FGIS与PGIS对接实现技术研究
2013-10-18杨扬,周路
●杨 扬,周 路
(1.江苏省消防总队,江苏 南京 210036;2.南京市消防支队,江苏 南京 210036)
消防地理信息系统(FGIS)作为灭火救援指挥系统建设的一个重要组成部分,为实现基于“一张图”的消防队站、道路水源、装备、人员等灭火救援指挥要素的可视化展示、分析,以及基于地理信息的可视化调度、接处警信息数据研判等应用提供了基础。在FGIS建设过程中,充分共享PGIS大比例尺矢量图、高分辨率影像图、道路、治安监控、标准地址库等已有地理信息数据资源,既节省了FGIS建设投资,又减轻了业务图层数据采集、维护的压力,是目前FGIS建设的最佳选择。
1 PGIS与FGIS简介
1.1 FGIS概况
FGIS遵循消防信息化建设一体化的设计原则,覆盖公安部消防局、总队、支队和大(中)队用户,以地图应用为目标,实现对消防一体化软件的地理应用支撑和消防业务地理信息数据统一展现。FGIS基于ESRI ArcGIS构建,按照公安部消防局、总队二级分布式部署方式,统一制定消防地图显示比例尺与信息分类标准,建立消防地理信息数据库,提供统一的地图服务和标准地址数据管理。FGIS使用统一的导航电子地图,各消防总队在实际应用中,需要加载使用本省大比例尺地图数据,进行数据共享和叠加。
1.2 PGIS 概况
PGIS是公安信息资源整合和深层次应用的技术平台[1],它以警用电子地图为核心,以地理信息技术为支撑,以服务与公安业务管理、信息共享和决策支持的可视化为目标。PGIS根据统一标准规范,由公安部统一组织开发,按部、省、市三级分布式部署,它能够为各类应用开发提供统一的基础服务与应用空间信息。PGIS平台的核心是“三库一平台”[2]。“三库”指地理信息数据库、标准地址库、业务地理关联库。地理信息数据库就是地图库,包括标准化的影像地图、矢量地图。标准地址库,指具有空间属性的门牌地址信息资源库。业务地理关联库,是指公安业务信息与地址信息的关联库。“一平台”指PGIS平台软件。
1.3 PGIS 与 FGIS
截至目前,PGIS的建设与应用已初具规模,充分利用PGIS已有建设成果,加快推进PGIS在消防的应用具有重要现实意义[3]。通过PGIS提供的各警种资源数据服务,补充完善FGIS已有数据资源,有助于快速推进消防地理信息系统建设,更好的服务于实战[3]。由于FGIS与PGIS建设过程中采用的技术开发平台存在差异,PGIS采用的是自有开发平台,FGIS采用的是ESRI ArcGIS系列开发平台,为了解决二者在数据交换和共享过程中存在的协议差异,特别是FGIS对PGIS瓦片切图服务的访问,本文提出了基于中间件技术实现地图对接的方案,并在实际应用中取得了良好的效果。
2 技术方案
2.1 设计思路
FGIS与PGIS的对接,需要满足以下要求:(1)能够在线共享访问PGIS平台的基础和专题地理信息数据;(2)能够实现或访问PGIS平台瓦片地图图片的联网服务,实现对省、市PGIS瓦片地图图片数据的调用;(3)与PGIS的对接方案不影响现有的消防GIS应用系统架构。
针对上述需求,有基于客户端(如图1所示)和基于中间件(如图2所示)的两种实现方式。基于客户端的方案是通过在客户端开发扩展组件,实现对PGIS服务的访问。由于FGIS客户端应用开发采用的技术路线存在多样性,加之考虑到未来FGIS应用平台存在多样化,需要针对每种应用开发平台研发客户端组件,势必增加应用开发的复杂度和维护投入成本。采用基于中间件的技术,以服务请求调用模式,通过协议转发实现与PGIS服务的数据交换与共享,可以最大程度的适应各类应用开发的需要。FGIS应用是基于ArcGIS软件平台构建的,所以中间件提供的服务协议与ESRI产品的服务协议一致。
图1 基于客户端的技术方案
图2 基于中间件的技术方案
2.2 技术框架
FGIS与PGIS地图的对接,是在PGIS基础之上,通过调用PGIS栅格地图图片联网服务接口,实现PGIS协议对FGIS的扩展,技术框图如图3所示。采用部、省、市与局、总、支相对应的关系,逐级对接,从而保证FGIS与PGIS的无缝集成。
PGIS栅格地图图片联网服务是基于栅格图片引擎服务,实现多层次、多结点的分布式地图服务,实现对全国、省、市不同比例尺地图无缝互联互通,其主要功能包括栅格地图图片服务注册、栅格地图图片分级配置、栅格地图图片调用区域设置、重叠区域栅格地图图片融合、栅格地图图片调用验证等。
FGIS与PGIS瓦片地图的对接,就是将FGIS中请求的ArcGIS Server瓦片地图协议与ArcGIS Server地图服务请求协议,通过中间件服务转换为PGIS瓦片地图服务,从而实现对接工作。
图3 技术框架
服务中间件采用REST风格架构,具有轻量化、易于构建等优点。由于客户端的请求都是独立的,一旦被调用,服务器不保留任何会话,因此其内存可用空间不会受到影响,同时减少了事件后通信状态的维护工作,提高了系统服务器的可扩展性。
2.3 关键技术
2.3.1 瓦片地图服务协议的转发
瓦片切图本质上是一种地图发布的缓存技术,是目前普遍被WebGIS产品所采用的地图发布技术[4]。其原理是将地图设定为多个比例尺,对于每个比例尺提前将地图生成并切分成若干小图片存放在服务器上,客户端访问时直接获取需要的小图片拼接成地图,而不是由服务器动态创建出一幅图片来送到客户端,这样的实现方式能极大提高系统的响应速度,如图4所示。地图切片以金子塔的方式进行组织。创建瓦片地图切片需要几个重要参数,包括地图范围、切图原点、切图比例级别、图片格式、图片大小等,实现不同瓦片地图服务协议之间的转换,也就是要实现这些参数与协议的相互对应关系。通过建立PGIS瓦片地图发布协议与ArcGIS Server瓦片地图发布协议之间的对应关系,可以实现二者协议转换。
图4 瓦片地图切图原理
2.3.2 基于中间件的分布式缓存技术
基于中间件技术不仅可以实现服务协议的转换和转发,还可以利用服务器的资源作为内存缓存服务节点实现分布式缓存,将使用频率高的瓦片数据动态缓存在服务器内存中优化应用访问效率,如图5所示。FGIS的普及应用,势必会增加对原有的PGIS服务的负荷,为此,利用分布式缓存技术可以有效的减少对PGIS服务的压力负荷,以较小投入改善PGIS服务的质量,提高FGIS运行的可靠性和稳定性。
图5 基于中间件的分布式缓存技术
3 FGIS与PGIS对接应用
基于中间件的PGIS服务扩展,增加了PGIS瓦片地图的发布协议格式,从而将FGIS与PGIS整合起来,实现了公安、消防“一张图”。在省消防总队部署PGIS服务扩展中间件服务器,将消防灭火救援系统与公安PGIS服务有机整合,使消防地理信息系统调用PGIS瓦片地图成为可能。图6所示为某消防总队FGIS系统调用公安PGIS实现大比例尺矢量图数据加载的示例图,从图中所示可见,在1∶500大比例尺图中,已经能清晰的看到建筑物轮廓,比之公安部消防局配发的1∶10000导航图,在实现消火栓、消防队站等标注应用时,极大提高了数据标注的准确性。
图6 在FGIS中调用PGIS大比例尺矢量图
在此基础上,通过FGIS对PGIS标准地理库、重点单位、道路、治安监控等业务数据图层的共享调用,实现了在FGIS对公安PGIS中已有信息数据资源的调用显示,避免了业务图层数据上图标注重复劳动,极大提升了消防地理信息系统的建设效率。
[1]张培晶,谢晓专,宋蕾.PGIS在犯罪分析中的应用[J].中国人民公安大学学报:自然科学版,2012,(74):45-49.
[2]林志松.充分利用警用地理信息系统(PGIS)服务消防作战指挥中心工作[J].科学之友,2012,(16):152 -155.
[3]李刚.消防地理信息系统在灭火救援指挥中应用的认识与思考[J].科技创新导报,2012,(12):37,48.
[4]蒋波涛,朱强,钱旭东.WebGIS开发实践手册——基于ArcIMS,OGC和瓦片式GIS[M].北京:电子工业出版社,2009.