APP下载

基于ArcGIS Engine的空间数据管理模块设计与实现

2014-11-30陆旭龙陈立民

山东工业技术 2014年14期
关键词:空间信息空间数据检索

陆旭龙 ,陈立民 ,谈 心

(1.镇江市勘察测绘研究院,江苏 镇江 212004;2.南京大学地理信息科学系,南京 210023)

1 概述

传统意义上,空间数据(Spatial Data)是指用来描述空间对象的位置、大小、形状及其分布特征等诸多方面信息,可用以进行空间定位、空间分析,以及反映要素间时空关系等的几何数据。更广泛意义上,空间数据可以指带有空间信息的一切文字、符号。在当前大数据时代,泛在意义上的空间数据不仅指点位、图形等包含空间位置与属性的信息,还包括带有位置信息的轨迹、音频、视频等多媒体信息。

长期以来,空间数据的管理都是GIS 理论发展与技术应用的基础性问题,同时也是决定GIS 技术能否被用户接受并得到广泛应用的关键。有效的空间数据组织体系一直是数据存储管理技术研究的热点。未来空间数据的管理将是对可表示复杂和可变对象的、面向对象的、主动的、模糊的、多媒体的的地理空间数据库系统的综合管理。

2 ArcGIS Engine简介

ArcGIS Engine 是一组完备的嵌入式GIS 组件库和工具库。使用ArcGIS Engine,技术人员可以将GIS 功能嵌入到商业性的生产应用软件中,如Mirosoft Word 和Excel;或嵌入到已有的专业应用软件中。ArcGIS Engine 由两个部分组成:构建软件所用的开发工具包以及支撑应用程序的可再发布的Runtime库(运行时环境)。ArcGIS Engine开发工具包是一个基于组件的软件开发产品,可用于构建自定义GIS和制图应用软件,适于为Windows、UNIX 或Linux 用户构建基础制图和综合动态GIS 应用软件。ArcGIS Engine Runtime 是一个使终端用户软件能够运行的核心ArcObjects 组件产品,基于ArcGIS Engine的 应用程序都必须同时安装相应的Runtime库。

3 空间数据管理模块的设计指导思想和开发环境

本文基于ArcGIS Engine开发平台,利用空间数据模型Geodatabase建立并管理地理空间数据,通过空间数据引擎ArcSDE来存储、加工和检索关系型数据库中的空间数据,从而实现空间数据和属性数据的无缝集成和一体化存储管理。

模块采用组件式(COM)开发技术,将复杂的应用程序设计成一些小的功能单一的组件模块,这些组件模块可以在同一台机器上运行,也可以在不同的机器上运行,甚至可以在相隔遥远的两台机器上运行。COM是组件对象模型(component object model)的简称,是一种以组件为基本组成单元的对象模型,使各软件的各个组成部分可以用一种统一的方式进行交互。COM既提供组件之间进行交互的规范,也提供实现交互的环境。

模块所用的关系数据库为SQL Server 2008,通过ArcSDE服务来连接并操作数据库中的地理空间数据和非空间数据,模块基于Microsoft .NET使用C#语言开发。

4 空间数据管理模块总体框架设计

空间数据管理模块分为三层结构:显示层(USL),业务逻辑层(BLL),数据访问层(DAL)。使用三层结构的设计思想可以使得系统具有比较好的分布式特征,可以根据实际情况需要确定部署模式,有利于后期的维护和升级。三层结构示意图如下:

图1 空间数据管理模块三层架构

4.1 数据层

数据层主要负责对原始数据(数据库文件、文本文件及涉及空间位置信息数据)的操作。该层为多源异构多版本的数据建立统一接口,提取生成业务逻辑关系所必需的基础信息及空间信息。该层为整个结构的基础,是为整个业务流程关系提供数据服务的关键。

4.2 逻辑层

业务逻辑层主要负责针对业务工作中具体问题的操作,也可以说是对数据集中有用信息的提取和再加工包装,并与其它层合作形成业务逻辑关系,例如,一条任务处理涉及到多个部门与环节,每一个环节的经手人都参与构建整条工作流程,包括经手人的自然信息、业务操作的时间、空间位置等等,都必须记录在案。这其中的逻辑关系必须得到清楚、明确的存储与表达。

4.3 显示层

显示层是系统模块的UI部分,负责展示结果并使得使用者与整个系统可以流畅地交互。显示层中的逻辑代码,既与界面元素的艺术设计有关,也和地理空间信息的可视化有关。UI相对独立于逻辑层与数据层,可以依据用户需求而定制。空间信息可视化涉及到地图符号的设计与地图不同色块的配色。做好空间数据的可视化对整个系统的包装与推广具有不可忽视的作用。

5 空间数据管理模块主要功能及关键技术

5.1 主要功能设计

模块的主要功能包括目录管理、空间数据库管理、检索三个部分。目录管理包括文件浏览(针对多种格式的地理信息数据的显示和查看)、文件添加与删除(如:文件夹、要素类、地理数据表等)、文件修改(如:要素名称、地理数据表名称等)。

空间数据库的管理包含:地理数据表管理(包括地理数据的浏览、地理数据表字段的添加和删除、地理数据表索引的添加和删除等)、图层管理、图形文件管理(要素类的字段添加和删除、要素类的空间参考的添改及删除、要素类中的数据浏览等)、工程文件管理。此外,特别重要的是:自然属性信息与位置信息的匹配与关联。总体可以概括为字段管理、空间参考管理、索引管理、数据浏览管理、空间参照建立、专题数据与业务数据的导出等。

检索功能包括属性检索和空间检索。空间检索利用ArcGIS Engine,可用鼠标点击进行范围检索(圆、框、多边形等)。

图2 空间数据管理模块功能结构图

5.2 关键技术

5.2.1 空间对象的目录层次管理

目录管理可以通过目录浏览快速定位到想看的表或地图,便于对空间信息查看、修改、删除等操作,是空间数据管理的基础。数据目录需实行分条目显示,以便区分数据类型。

5.2.2 空间对象的参考标准制定

地理空间数据代表着现实世界的某个对象或某个事件,其中每一个要素都代表了现实世界的某一物体或者事件发生的位置。如何对一个要素进行精确定位,涉及统一空间参考系的问题。目前普遍采用基于地球椭球体建立的世界坐标系统。

为了使空间数据能够相互关联,必须设置空间参考。空间参考包含一个坐标系统(地理坐标系统或投影坐标系统),它定义了空间数据的统一的数学坐标系。在同一地图上显示的地理数据的空间参考必须经过一致性配准。如果两个图层的空间参考不一致,会导致两幅地图无法正确拼合。

5.2.3 基于Geodatabase和ArcSDE的空间数据存储与管理技术

空间数据库是被统一存储起来的空间数据的集合,是地理信息系统的重要组成部分,是GIS系统的数据支撑。GIS系统需要处理的数据分为两类:一类主要是与空间位置、空间关系相关的数据,统称空间数据;另一类是要素的属性信息,称为属性数据。传统的数据处理方法是将两类数据分开存储,利用关系型数据库(RDBMS)来存储属性数据 。考虑到空间数据与文字记录相比具有特殊性,很难将其所表达的所有信息放在表中进行管理。如经过数字化得到的Shapefile或Coverage,都是以文件形式独立存储 。通过在空间数据文件和属性数据之间建立关联来构建应用系统,可充分利用数据库以及文件系统的各自优势。

基于Geodatabase + ArcSDE的空间数据库管理技术利用关系型数据库来存储和处理空间数据,实现了空间数据和属性数据的无缝集成和一体化存储管理。ArcSDE在关系数据库管理系统(RDBMS)和地理信息系统(GIS)之间充当一个应用网关,充分地把GIS和RDBMS集成起来,实现空间数据的导入导出,以及数据库操作、要素的空间检索和空间信息的增删改等功能的数据操作支持。

6 结论与讨论

随着科学技术和经济社会的发展,人们已经越来越认识到空间数据对于政府、企业与公众生活的重要性,加快了人们获取、应用空间信息的步伐。在当前大数据时代,随着智慧城市建设的风行,空间数据的重要性及其管理所面临的复杂性均越来越显著。

本文提出基于ArcGIS Engine实现空间数据管理模块的技术路线,并予以开发实现,实现了空间数据目录浏览、地理数据组织与空间数据库的管理及空间检索等主要功能,具有兼容性好以及二次可开发能力强等优势。在业务关系模型以及空间数据管理效率方面仍需作进一步探索,进一步的工作将体现在基于已有的空间数据管理方式提供效率评价指标并根据不同的业务模式需求提供灵活的可拓展的应对技术框架方面。

[1]刘经南,方媛,郭迟,高柯夫. 位置大数据的分析处理研究进展[J].武汉大学学报·信息科学版,2014(04):379~384.

[2]芦倩,刘旭华,高晨.基于ARCGIS ENGINE 的水文生态数据管理系统的研究与设计[J]. 甘肃科技,2013(04):23~27.

[3]王晓燕,陈宏斐. 基于ArcGIS Engine的农村土地信息系统设计与实现[J].东华理工大学学报·自然科学版,2013(02):219~223.

[4]刘三民,王杰文.空间数据存储管理研究综述[J]. 电脑与信息技术,2006(03):21~29.

[5]蒋波涛.ArcObjects开发基础与技巧(1)[M].武汉.武汉大学出版社,2006:328~334.

[6]潘爱民.COM原理与应用[M].北京.清华大学出版社,2000:18~20.

[7]刘南,刘仁义.地理信息系统[M].北京.高等教育出版社,2006:114~115.

[8]孟华.基于Geodatabase和ArcSDE的湿地GIS数据库技术研究与应用实例[J].计算机应用研究,2005(10):184~186.

猜你喜欢

空间信息空间数据检索
结合多层特征及空间信息蒸馏的医学影像分割
10项空间数据与信息传输领域国家标准正式发布
瑞典专利数据库的检索技巧
GIS空间数据与地图制图融合技术
在IEEE 数据库中检索的一点经验
一种基于Python的音乐检索方法的研究
共建空间信息走廊 助力“一带一路”
城市空间导示系统中的空间信息编码研究