鲁丽
(安徽省第一测绘院,安徽合肥 230031)
在计算机软件和硬件的支持下,地理信息系统(GIS)能够对地表空间的对象进行抽象描述,能够对空间信息进行采集、存储、计算、显示和管理等等。地理信息系统常常以公共服务平台的方式应用于各个领域.在数字城市地理空间框架搭设过程中,GIS公共服务平台常见的搭建方案有很多,很多GIS 领域的软件开发公司,如Esri、超图等公司都给出了成熟的解决方案。但是作为成熟的商业软件,通常需要较高的成本,配置复杂,对环境要求较高[2]。作为一种常用的地理信息系统应用方式,地理信息系统公共服务平台的搭建需要考虑经济效益,因而需要更轻量化的解决方案。本文应用PostGIS 管理数据库,利用GeoServer 作为GIS服务器,基于OpenLayers开发包,搭建地理信息公共服务平台的解决方案。
小型的地理信息公共服务平台最常用的架构模式就是经典的浏览器/服务器模式(B/S模式),包含三层体系结构,即客户层、中间应用层、数据库服务器层。本项目平台的总体结构如图1所示。
使用Tomcat 作为Web 服务器,用于网站的发布,形成基于Web 的分布式应用运行环境。数据库服务层采用Postgres 搭载PostGIS 扩展的空间数据引擎来管理空间数据。平台运行的业务数据,采用MySQL数据库进行管理。平台的GIS 功能基于前端开发包OpenLayers开发完成。
图1 平台总体结构Figure 1.Overall structure of the platform
GeoServer 是OpenGIS Web 服务器规范的J2EE实现,可以方便地发布地图数据,允许用户对特征数据进行更新、删除、插入等操作。通过GeoServer 可以在用户之间迅速放共享空间地理信息。本项目使用GeoServer2.15.1发布地图服务。
Geoserver 支持的符合OGC 标准的地图服务如表1所示:
表1 GeoServer支持的服务类型Table 1.GeoServer-supported service type
在空间数据管理方面,本项目选用PostGIS,即管理GIS数据的空间数据引擎是在Postgres 上搭载Post-GIS扩展。
PostgreSQL 是一款免费开源的对象-关系型数据库管理系统,它是目前最常用的开源数据库之一,功能强大,有专业的团队进行维护更新,能够满足大部分用户的数据管理需求。类似于Oracle的空间扩展,PostGIS 实际上是在PostgreSQL 基础上增减了空间数据存储管理能力。
在业务信息、属性信息等非空间信息储存方面,项目选用MySQL 实现非空间数据管理。在Web 应用方面,MySQL 能够提供多个版本的免费许可,且软件使用简便。
OpenLayers 是一个开源的WebGIS 客户端JavaScript 开发包,提供OGC 标准格式的地图服务访问功能,和常用的GIS 功能。目前各大GIS 软件公司的二维WebGIS产品都是基于OpenLayers地图引擎开发完成的.借助OpenLayers强大的扩展功能,广大二次开发者可以定制开发符合自身需求的WebGIS 应用系统[1]。
项目开发使用OpenLayers4 作为客户端GIS 功能开发的开源工具包。OpenLayers 二次开发简单、开发成本低,且支持多种格式的地图服务。
平台主要包含以下功能模块:①地图展示功能;②基础信息查询功能;③空间分析功能;④后台运行维护功能;⑤地图服务审核功能;⑥统计分析功能;⑦数据叠加功能;⑧用户兴趣标记功能。功能设计如图2所示。
图2 公共服务平台的功能结构Figure 2.Functional structure of the public service platform
地图展示功能主要是二维矢量和影像地图的展示,同时包含地图的基本操作,如地图漫游、缩放等。
基础信息查询功能是指对兴趣点图层进行地理信息的查询,包括属性查询、空间定位查询,支持用户对目标位置的快速定位和信息的精准获取。
图3 信息查询Figure 3.Information query
空间分析主要包括:测量距离、测量面积、周边分析、行驶线路分析等。是对地理信息公共服务平台地理信息的基础性空间分析操作。
图4 线路分析Figure 4.Route analysis
图5 服务审核页面Figure 5.Service review page
图6 流量统计界面Figure 6.Data flow statistics interface
运行维护功能面向管理员开发,实现对GIS平台的后天管理和日常维护,包含的功能有用户信息和权限管理、网站运行流量的分析统计、网站运行日志查询等等。
地图服务审核模块包含了地图服务注册、地图服务查询、地图服务发布和地图服务审核功能。第三方通过平台注册的功能,通过后台审核后,可以通过平台进行发布。
统计分析功能主要包括:统计内容设置、图表生成、图表输出和打印等。
数据叠加功能允许用户将空间参考系统相同的GML/KML、Shapefile等数据叠加到平台地图上。
本项目通过对比研究,提出了一种轻量化的地理信息公共服务平台搭建方案,给出了方案的总体架构和关键技术。对于降低地理信息公共服务平台的建设成本,有着重要的意义。