基于开源框架的轻量级矿山GIS开发运行平台的设计与应用实践
2017-05-17陈汉章
陈汉章
摘要:WebGIS技术改变了传统GIS应用模式,广泛推广于各领域。煤炭行业生产安全及运营管理与地理位置相关,且矿山生产地下地上空间位置随时间不断变化,因此对GIS应用需求旺盛。本文在分析开源GIS技术基础上,提出基于开源GIS框架实现煤矿井上下多源数据及服务接入、各类矿图快速发布展示设计方案,提供WEB端、移动端开发包,可快速构建煤矿各类应用。该GIS开发运行平台在某大型煤炭企业调度集成监控系统中已成功实践应用,有效解决WebGIS在矿山应用中复杂性高,成本大,针对性不强等问题。
关键词:网络地理信息系统(WebGIS);GIS平台;轻量级;OGC
中图分类号:TP311.11 文献标识码:A 文章编号:1007-9416(2017)03-0194-03
1 建设背景
随着神华集团数字矿山逐步推广,GIS应用需求日益旺盛。已经实施的战略资源管理系统、数字矿山生产执行系统、数字矿山生产控制系统均结合二维GIS技术进行深入应用,目前在生产指挥调度、生产管理、应急管理、环保监测等各领域都有基于真实地理位置信息构建其业务应用需求。针对集团GIS应用,每个项目需单独购买部署商用GIS平台进行二次开发,商用GIS平台采购成本高、周期较长,产品复杂度高,不能快速、灵活满足GIS应用需求,急需轻量级GIS开发运行平台替代商用平台,根据集团各板块需求快速搭建GIS应用。
在集团煤矿GIS系统应用上,已有公司结合地质、采矿等业务,围绕制图辅助设计,在各矿井做大量专业化系统和实施项目;矿山在地质勘查、规划设计、建设施工、生产运营各阶段所使用的制图及GIS软件有AutoCAD、龙软GIS、MapGIS、ArcGIS等,数据格式也各不相同,存在数据标准不统一、数据互操作性差和数据共享困难等问题,因此需要构建统一数据标准,并在此基础上搭建上层应用。当前神华迫切需要建立一套统一的可快速搭建新Web应用的轻量级矿山GIS开发运行平台,替换或辅助商用GIS平台,减少项目周期与成本,支撑数字矿山全面推广及各业务系统逐步深入的应用需求,推进数字矿山建设,提供更高效、准确的网络支撑地理信息服务。
2 总体框架
2.1 轻量级矿山GIS开发运行平台系统架构(如图1所示)
整个产品系统架构分为三层,从下往上依次是数据层、服务层和应用层。数据层是数据存储中心,负责存储矢量和切片数据;服务层是将底层数据发布成标准Web Service服务,并提供给应用层使用;应用层负责调用服务层提供的服务,完成各个业务功能。本项目建设内容重点在服务层,包括地图服务发布模块、地图服务展示模块、GIS组件、应用开发API和数据交换接口等。为保证程序兼容性和快速开发需求,选择GeoServer作为地图服务发布和管理平台,采用瘦客户端技术,不需要下载和安装特殊控件,经服务器端将请求内容生成图片发送到客户端来显示地图,所有地图生成与分析功能都放在服务器端实现,保证了图形快速浏览要求,降低了对网络带宽要求。
地图客户端采用OpenLayers进行地图服务展示,运行在Rest Web Service平台上,采用Mush Up多源数据融合技术,能提供基本地图漫游、图层叠加、属性查询等功能,利用地图瓦片技术实现地图客户端动态加载,在此基础上封装成标准GIS组件、高级GIS组件,同时提供应用开发API供其他应用系统调用。
2.2 系统主要功能模块设计
轻量级矿山GIS开发运行平台自2015年7月启动,目前已进行了一期建设。平台通过对基础地理空间信息资源集中化管理,主要采用网络系统在线共享,二次接口开发服务等方式为神华集团各个业务板块提供基础地理空间信息服務。该平台主要由3个子系统模块构成,按照实现功能目标的不同,分别是发布运行环境子系统、数据服务接入子系统和GIS应用组件子系统。系统总体功能模块图如下图2所示。
2.3.1 构建二维GIS发布和运行环境
①搭建GeoServer开发测试环境,配置相应版本,将ArcSDE数据接入GeoServer。
②在GeoServer中实现空间数据快速发布,对发布好的服务进行管理,实现服务启动、停止、暂停、更新等功能。
③对GeoServer进行配置和优化,使其并发数量和响应时间达到最优。
2.3.2 实现数据、服务接入功能
①将符合相应标准的瓦片数据、矢量数据(ESRI Shp、PostGIS)和实时数据发布成标准Web Service。
②开发相应数据接口,实现瓦片数据(CAD切片数据)、矢量数据和实时数据调用。
③使用UDig等桌面工具对空间数据配图、渲染,并制作成符合煤炭行业需求和具有神华特色的制图模板。
2.3.3 开发轻量级GIS应用组件
①搭建轻量级GIS应用开发框架,实现空间数据快速展示功能。构建符合神华需求的快速展示模板(Logo、颜色、样式、字体等),加入地图入口,使开发者用简单的几行代码即可开发出地图应用程序。
②开发标准GIS功能组件。实现包括放大、缩小、定位、平移、旋转、全图、测量、书签、鹰眼图、图层管理、多源数据叠加显示(瓦片图层、矢量图层、OGC图层等)、缩放到图层等功能。
③开发高级GIS功能组件。实现包括点击查询、关键字查询、空间(点线面)查询及标绘(点线面、任意多边形)功能等功能。
④实现多源GIS数据浏览功能。能够集成叠加展示矢量数据和切片数据,包括ESRI Shp格式数据、CAD切片数据,能够加载OGC服务,如WMS服务、WMTS服务等。
3 系统设计与开发过程中的关键技术
3.1 技术路线
系统首先进行开源GIS平台选型,本次选择GeoServer作为服务器开源GIS平台,而客户端展示则选择支持HTML5的OpenLayers作为展示平台,符合当前IT技术发展潮流。之后将符合标准的地图数据和服务接入到平台中,并将其进行模板化和规范化,发布成标准的Web Service,并在此基础上进行组件和接口封装,使其开发粒度符合开发需求,最后将多源GIS数据进行统一集成展示,具体流程图如下图3所示。
3.2 技术接口说明
与底层数据的交互接口。系统位于服务层,与底层ESRI SHP数据、CAD切片数据等在统一的坐标框架体系下,通过标准OGC服务进行交互,包括WMS服务、WMTS服务等。
与上层应用系统的交互接口。系统位于服务层,与上层应用系统通过标准REST接口进行交互,客户端和服务器的数据通过XML和JSON这2种格式进行传输。
本系统采用OGC标准协议,与ArcGIS产品体系完全兼容,可以结合ArcGIS产品共同使用,相互调用服务,可辅助使用ArcGIS平台功能,逐步替换ArcGIS产品。
3.3 关键技术
3.3.1 OGC标准及地理参考模型
支持GIS开放和集成的一个保证就是标准。地理信息标准的制定由OGC开发,这个工作已经获得Oracle、ESRI等GIS 软件供应商的参与和支持。其主要的标准包括:
①WMS(Web Map Service):栅格地理信息数据表示的标准,如GIF,PNG,JPEG 等;
②WFS(Web Feature Service):矢量地理信息数据表示的标准,主要是 GML 格式;
③WCS(Web Coverage Service):地理信息属性资料表示的标准;
④CAT(Catalog Service Web):资料库中查询结果表示的标准;
⑤GML(Geography Markup Language):地图数据标记语言的标准,以XML为基础。同时 OGC 定义了三种地理参考信息模型:Web Map Serve(WMS)、Web Feature Server(WFS)、Web Coverage Server(WCS)。Web Map Server(WMS)可根据用户请求返回相应的地图,支持网络协议HTTP,所支持的操作时由URL定义的,主要有三种操作:GetCapabilities(返回服务级元数据),GetMap(返回地图影像),GetFeatureinfo(返回地图要素的特征信息)。
Web Feature Server(WFS)支持对地理要素的插入、更新、删除、检索等服务,根据HTTP 用户请求返回GML数据。其基础接口是:GetCapabilities,DeseribeFeatureType,GetFeature。WFS就如桌面程序中的条件查询功能,支持基于空间几何关系、属性域查询,及二者的共同查询。
Web Coverage Server(WCS)提供包含地理位置信息或属性的空间栅格图层,根据HTTP 客户端要求发送相应数据,如影像、多光谱地图等地理数据。WCS有二个重要操作GetCapabilities(返回一个描述服务和 XML 文档),GetCoverag(返回覆盖数据)。
3.3.2 GIS多源数据集成技术(Mush Up)
由于地理信息系统的图形数据格式各异,给信息共享带来了极大不便,解决多格式数据源集成一直是近年来GIS应用系统开发中的重要问题。本系统需加载展示的数据格式有ESRI SHP、CAD切片、OGC WMTS和WMS格式等,使用技术有:
①数据格式转换。格式转换是传统GIS 数据集成方法。在这种模式下,其他数据格式经专门数据转换程序进行格式转换后,复制到当前系统中的数据库或文件中。这是目前GIS系统数据集成主要办法。
②数据互操作。数据互操作模式是OpenGIS Consortium (OGC) 制定的规范。OGC是为了发展开放式地理数据系统、研究地学空间信息标准化及处理方法的一个非盈利组织。GIS互操作是指在异构数据库和分布计算情况下,GIS用户在相互理解基础上,能透明获取所需信息。OGC为数据互操作制定了统一规范,使一个系统同时支持不同空间数据格式成为可能。
③直接数据访问。直接数据访问指在一个GIS软件中实现对其他软件数据格式的直接访问,用户可使用单个GIS软件存取多种数据格式。直接数据访问不仅避免繁琐的数据转换,而且在一个GIS软件中访问某种软件的數据格式不要求用户拥有该数据格式的宿主软件,更不需要该软件运行。直接数据访问提供了一种更为经济实用的多源数据集成模式。
4 平台应用现状及实践
项目组在轻量级矿山GIS开发运行平台研发完成之际,接到集团某煤矿集成监控系统开发任务,正好利用这一宝贵实践机会,检验一下平台在实际项目中的性能和表现。项目组首先认真分析了该煤矿集成监控系统项目的开发需求和建设重点,针对系统实时性和业务特点,采用轻量级矿山GIS开发运行平作为底层GIS图形平台,其中地图浏览、地图查询、地图定位等功能以服务的形式在应用框架内集成。
项目开发历时5个多月,项目组在没有相关开发案例的情况下,项目组成员精诚团结、群策群力,在现有开发能力基础上进行了多项变通,克服种种困难,经过5个半月的攻关,最终顺利完成了任务。目前系统已上线运行。系统的运行界面如图4。
5 结语
轻量级矿山GIS开发运行平台在集团某煤矿集成监控系统中的成功上线及在公司多个煤矿系统中应用,说明基于GeoServer的轻量级GIS开发运行平台达到了初步设计标准。集团某煤矿集成监控系统依靠稳定运行、可定制可扩展、用户体验性好等优点,得到了用户认可与好评。轻量级矿山GIS开发运行平台作为一款具有自主知识产权的GIS软件,完全可以支撑中小型地理信息系统的建设,替换或辅助商用GIS平台,减少项目周期与成本,支撑数字矿山全面推广及各业务系统逐步深入的应用需求,推进数字矿山建设,同时提供更高效、准确的网络支撑地理信息服务。
参考文献
[1]徐立新,赵蕾.开源WebGIS设计与研究[J].电脑编程技巧与维护,2012(8).
[2]李福金,秦志伟.WebGIS开发平台及实现技术的分析比较[J].测绘与空间地理信息,2011(4).
[3]黄照强,冯学智.地理信息系统空间异构数据源集成研究[J].中国图象图形学报,2004(8).
[4]黄向,张毅坤,房玉峰.基于WMS服务规范的Web GIS实现方法[J].山东农业大学学报(自然科学版),2007(1).
[5]洪志远,李成名.面向服务架构下的WebGIS开发模式探索及实践[J].遥感信息,2012(5).
[6]任艳蕾.eGIS1.0在车辆监控系统中的实践与开发[J].石油工业计算机应用,2006(1).
[7]熊小青,张丰.WebGIS 缓存中间件在轻量级地图服务平台中的应用研究[J].测绘与空间地理信息,2015(8).