基础地理信息共享平台设计与实现
2022-10-12姚春雨
程 盼, 姚春雨
(中煤航测遥感集团有限公司,西安 710054)
基础地理信息是对有关地理实体的性质、特征和状态的表征[1],主要用来表达地形地貌地物信息。作为“数字城市”建设框架的支撑基础及“智慧城市”运行的载体,基础地理信息越来越受到各部门行业的关注,并在政府服务、城市建设、社会发展等方面有着广泛的应用[2-4]。而实现基础地理信息在机构和部门之间的共享和交流,对于减少数据的重复建设,节约数据存储资源,消除“信息孤岛”有着重要的作用。为此,必须建设相应的基础地理信息共享平台。
国内很多学者对基础地理信息共享平台的建设进行了大量的研究。王旭红、周明全等对基于Oracle和ArcSDE的分布式数据库的建库方案进行了总体设计与实现[5],提高了数据的访问速度与海量数据管理。卢亚辉等对基于Web Service的WebGIS应用模型进行了研究,很好的解决了跨平台问题[6]。李德仁等对面向数据到面向服务的数据共享模式、发展历程进行了探讨[7]。这些研究对于推动基础地理信息共享平台的建设都有积极的作用。
结合包头市石拐区数据分散、信息孤立、共享困难的实际情况,对石拐区基础地理信息共享平台从数据库设计、建库技术方案、数据共享方式等方面进行了详细的设计,最终以Web服务的方式实现了地理信息的共享,消除了石拐区“信息孤岛”的现状,促进了部门之间的信息交流,提高了政府的管理与服务能力。
1 基础地理信息共享平台概述
基础地理信息共享平台是“数字城市”建设的核心,也是“智慧城市”建设的基础。一方面,平台通过对基础地理信息数据进行采集、建库和更新为相关部门提供统一标准的地理信息参考框架[7-8]。另一方面又为各部门和企业提供统一的运行环境和开发环境,包括统一的访问基础地理信息的数据接口或Web服务接口[9]。基础地理信息共享平台是各行业、单位和部门进行数据共享、交换的公共平台,能够突破各职能部门之间的信息封闭,消除“信息孤岛”,实现信息共享,使地理信息数据与功能在更多的行业得到应用[10-12]。
2 平台建设内容设计
基础地理信息共享平台的核心内容即为一个数据库平台和一个信息共享平台,数据库平台包含了数据入库、管理、更新等一系列内容;信息共享平台主要用来为政府部门或企业提供地理信息目录及服务接口。以包头市石拐区基础地理数据为研究背景,将石拐区基础地理信息共享平台总体建设内容分为六大模块:数据采集与处理、数据库设计、建库技术方案、地理信息共享方式、数据管理系统开发以及门户网站的搭建(图1)。
图1 总体建设内容结构
2.1 数据采集与处理
平台建设必须保证数据的标准性与一致性。入库前首先需要对数据质量与数据格式进行检查。一般而言,基础地理信息数据主要由栅格数据和矢量数据组成。常用的栅格数据如DOM、DEM、遥感影像等经过影像基本处理后可以直接存入空间数据库中;而采集的矢量数据大多为基于AutoCAD 软件绘制的dwg格式数据,需要转化为SHP格式,成为标准的GIS数据才能入库。
2.2 数据库设计
石拐区基础地理数据库主要由矢量数据库、栅格数据库、地名地址数据库和元数据库组成。①矢量数据库包括了不同比例尺的水系、居民地、交通、管线、行政境界、地形地貌、植被等基础地理要素集。②栅格数据库主要包括不同分辨率不同时相的DOM、DEM以及遥感影像数据等。③地名地址数据库主要包含不同比例尺的矢量数据中的居民地、河流、湖泊、道路等地名对象及其相关信息(如汉语拼音、类别、政区代码、归属等)。地名地址信息以地址位置标识点要素来表达,是实现地理定位必不可少的数据[13]。④元数据库主要用于对地理数据及相关业务数据的描述信息进行存储。通过对地理空间数据的内容、质量、表示方法、空间定位、管理方式及其他特征进行描述和说明[9],帮助用户有效定位、评价、比较、获取和使用相关地理数据,方便数据的管理和共享。
2.3 建库技术方案
1)对于矢量数据库及地名地址数据库,系统采用大型对象-关系数据库 Oracle结合ArcSDE的方式进行数据的存储与管理。这种管理方案不仅吸收了Oracle的海量数据存储维护能力及多用户的并发访问管理能力,同时又能利用ArcSDE为用户提供一系列API,便于用户进行二次开发,最终实现图文一体化存储[13]。
2)对于栅格数据的存储与管理,系统采用镶嵌数据集(Mosaic Dataset)的技术方案。镶嵌数据集是ArcGIS中一项由栅格数据集和栅格目录相结合的混合技术,用于管理一组以目录形式存储并以镶嵌影像方式查看的栅格数据集。影像生成镶嵌数据集时,也可以在空间数据库中建立影像索引,以便用户进行索引查询[14-15]。这种影像管理模式的优势在于可管理海量多分辨率、多时相、多传感器大规模影像,也便于数据查询和使用,还可用来提供影像服务。
3)元数据库无空间属性,利用关系型数据库Oracle存储即可,每一种数据类别是一张单独的表。对于地理数据,元数据表中需包含数据名称,数据格式,数据质量,比例尺或分辨率,生产日期,更新日期,所属部门等基本数据描述信息。
2.4 地理信息共享方式
平台利用WebService技术,以Web服务的形式实现地理信息的共享。WebService是一种由统一资源定位符URI(Uniform Resource Identifier)表示的软件应用系统,是建立互操作的分布式应用的最优方案[1]。如果所提供的WebService具有地理空间特征,那么可将这种服务定义为地理信息Web服务。地理信息Web服务(GIS WebService)是在WebService技术和标准基础上实现的地理信息在线服务,是WebService技术在GIS领域的应用[16]。
在地理信息Web服务的发布与管理上,平台利用ArcGIS Server软件进行管理。ArcGIS Server是一个基于WebService 技术构建的GIS 应用平台,发布的服务符合OGC(Open Geospatial Consortium,开放地理信息联盟)标准规范,也能对服务进行修改、删除、更新等基本操作,同时能对服务进行用户角色权限设置以保证指定服务的保密性,并且支持多用户负载均衡、大数据量通信的情况[17],非常适用于企业级服务的管理。ArcGIS Server支持的服务类型主要有地图服务(WMS)、要素服务(WFS)、覆盖服务(WCS)、地理编码服务等,以及一些进行数据处理的工具服务(功能服务),如缓冲区服务、网络分析服务等,服务类型涵盖面较广,基本上能解决平台建设中所需的所有服务问题。
2.5 门户网站
门户网站是面向用户进行数据资源可视化展示与服务共享的应用平台,也是地理信息共享平台的核心部分。结合基础地理信息数据库内容与地理信息共享平台的一般需求,门户网站应包含以下基本功能:①基础地理数据(DEM,DLG,DOM等)、服务资源以及相关专题应用系统元数据目录的展示,并能查看指定数据的具体元数据信息。②为用户提供快捷便利的多方式查询功能,比如关键词查询,条件查询等。条件查询可针对不同的展示项列出不同的条件,如服务资源部分可指定服务类型,注册日期,主题分类等,基础地理数据可指定坐标系,比例尺,高程基准等检索条件。③在线地图主要包含矢量图与影像图两种地图内容,矢量图包含了基础地理数据中的道路,区划图等基本要素的浏览查询。在线地图模块需要提供基本的地图操作功能(量距、测量面积、缩放漫游等),也需要提供查询定位,属性查看等功能。④服务申请调用与共享功能是平台建设的最终目的。用户在浏览服务资源目录时,可以对感兴趣的服务进行申请调用,审核方批准后,将服务地址与令牌回馈给申请者,从而实现服务的共享。
2.6 数据管理系统
数据管理系统主要用来对元数据及元数据目录进行管理。数据管理系统包括基础地理数据集、服务资源元数据、专题应用元数据及相关业务元数据的注册、多方式查询、修改、删除等基本功能。同时,也包含了门户网站中用户进行服务申请、不同用户之间进行服务共享交换的管理。数据管理系统作为门户网站的支撑平台,同时也是元数据库内容的可视化展示与管理系统,在地理信息共享平台中起着关键作用。
3 平台架构与实现
3.1 平台架构
结合平台建设内容,在各种标准规范体系与安全保障体系的支撑下,最终搭建的石拐区基础地理信息共享平台,在架构上由运行支撑层、数据层、服务层、管理层、应用层五层体系组成(图2)。
1)运行支撑层包含了网络安全保障、政策法规体系及基本的软硬件设施。在软件设施上,开发过程中需要Oracle数据库软件,ArcGIS地图软件,ArcGIS Server服务管理器软件,服务器软件Tomcat,后台开发框架Spring,前端集成开发环境Visio Studio等的支撑。
2)数据层包含了数据库中基础的地理信息数据。
3)服务层主要由地图服务、功能服务、数据服务组成。地图服务与功能服务是平台用于共享的Web服务,由ArcGIS Server发布与管理。数据服务主要是指以json格式返回的用于响应浏览器端请求的相关业务数据。
4)管理层由数据管理系统与服务管理两部分组成。数据管理系统基于B/S模式开发,服务管理由ArcGIS Server管理器完成。
5)应用层主要是指门户网站部分。门户网站基于B/S模式开发,在基本的前端开发技术上,引入ArcGIS API for JavaScript地图引擎实现地图的加载与查询。
图2 系统架构
3.2 平台实现
按照系统的建设内容设计,平台完成了以下工作。
1)完成了数据的入库工作,服务发布与管理工作。
2)完成了数据管理系统的开发工作。数据管理系统由数据目录可视化展示,元数据管理,“服务申请”审批三部分组成。元数据管理模块包括数据检索,详情浏览、数据修改、注册及删除等主要功能。
3)完成了门户网站的开发工作。其中,门户网站包含了网站首页、地理数据编目、服务资源、专题应用、在线地图、个人中心等主要模块;网站首页主要用来展示数据资源总体情况,包括基础地理数据、服务资源、专题应用类别下的元数据部分目录。地理数据编目模块,主要是对基础地理数据的展示与检索。服务资源模块主要是对共享服务资源的目录与元数据展示,同时用户能对感兴趣的服务进行“申请调用”;专题应用模块主要是对相关专题应用元数据进行展示;在线地图模块,主要是对地图数据的浏览检索;个人中心模块用于用户的“自我管理”,用户可以在网站中注册自己的数据集、服务资源或专题应用元数据,经过管理员审核通过后,便可以更新到系统元数据库并展示在门户网站中,从而实现数据共享(图3)。
a.网站首页 b.服务资源模块图3 门户网站部分截图
4 结论
结合基础地理信息共享平台的一般需求,对包头市石拐区基础地理信息共享平台进行了总体设计与平台搭建。在数据入库工作中,对矢量数据库的管理采用大型分布式软件Oracle与ArcSDE结合的方式,对栅格数据的管理采用镶嵌数据集的技术方案实现了多源多时相海量数据的集中管理。在数据共享方式上,以标准的地理信息Web服务方式实现了不同机构与部门之间的信息共享,改善了石拐区的数据分散孤立状况,并为相关专题系统的开发提供了数据基础。