论文部分内容阅读
随着GIS应用的社会层面的广度和深度的迅速扩大,出现了许多优秀的GIS软件,它们各具特色,在数据格式、数据处理、数据显示等方面都有其独到之处,被不同的单位、部门应用,因此造成了现在空间数据格式不统一、多样化的现象,导致了多源异构空间数据的产生。但随着数据量的日益增大,以及各个部门之间的协作日益频繁,数据的交换与共享将势在必行。当前,人们在跨行业或行业内共同协作时,通常采用三种多源异构空间数据共享模式:简单数据格式转换模式、数据互操作模式和直接访问模式。但这三种模式解决该问题时有些不足之处和局限性,因此找到一种新的解决方案具有必要性。
近年来中间件技术的出现,给GIS行业注入了新的活力,为其发展和应用开辟了新的空间。中间件是一种独立的系统软件或服务程序,它的最大特征在于可以实现信息资源的共享。借鉴中间件的思想和相关技术,构建空间数据中间件,可以解决多源异构分布的地理空间数据交换的问题,从而真正实现系统与系统之间数据的共享。采用GIS数据中间件技术可以屏蔽掉GIS空间数据各种复杂的结构和模型,一方面向数据用户提供了统一的操作接口,同时也使得GIS软件的开发人员面对的是一个简单统一的开发环境,不必考虑数据源结构的变动和新数据源的出现,减少了软件开发的代价。在MapGIS平台上集成其他GIS数据,有利于MapGIS数据与其他常用GIS数据的数据共享,增强MapGIS平台的兼容性和功能。本文构建的MapGISK9数据集成中间件是把中间件技术引入到GIS领域的产物,它实现了在MapGIS平台动态读写常用GIS数据,如ERRI Shape、EOO、Coverage、*.mdb,MapInfo Tab、MIF、DGN、DXF以及GML等格式以及与MapGIS数据格式的相互转换。它屏蔽掉了空间数据格式的多样性及复杂性,中间的转换过程对用户来说都是透明的。
构建数据集成中间件,首先要解决的是模型间的映射关系。经过对MapGIS空间数据模型与OGR空间数据模型的对比分析,得出了MapGISK9的空间数据模型与OGR空间数据模型间的映射关系:OGR的数据源(DataSource)对应于MapGIS的地理数据库;OGR的层类文件(Layer)对应于MapGIS中的简单要素类。在模型映射过程中,建立映射表才能使某些局部细节映射成功,如要素类的几何类型映射、ID映射表、属性字段映射等。 本文根据MapGIS空间数据模型与OGR空间数据模型之间的映射关系,借助中间件技术的思想,在MapGISK9的框架下研究和实现了基于OGR库的MapGISK9数据集成中间件,达到了MapGIS与常用GIS数据信息共享的目的,实现了在MapGIS平台动态访问常用GIS数据。具体地,论文的具体研究内容和系统的创新点如下: 1.介绍了MapGISK9和OGR空间数据模型。MapGIS数据模型为面向地理实体的空间数据模型,它的概念分下面几个层次:地理数据库、数据集、类、要素。在地理数据库中,非空间实体被抽象为对象;空间实体被抽象为要素;相同类型的要素构成要素类;相同类型的对象构成对象类;若干对象类或要素类组成要素集;若干要素集构成地理数据库。而OGR的空间数据模型则是建立在OpenGIS的简单要素数据模型之上的,在概念层次上包括以下几个部分:数据源、层类文件、要素、几何实体。2.介绍了OGR库。GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库。它利用抽象数据模型来表达所支持的各种文件格式。它还有一系列命令行工具来进行数据转换和处理。OGR是GDAL项目的一个分支,功能与GDAL类似,只不过它提供对矢量数据的支持。OGR提供对矢量数据格式的读写支持,它所支持的文件格式包括:ESRI Shapefiles,Oracle Spatial,MapInfo mid/mif,MapInfo TAB等格式。3.通过对MapGISK9空间数据模型与OGR库空间数据模型的对比,得到它们之间的映射关系:MapGISK9中的地理数据库对应于OGR中的数据源(DataSource)、MapGISK9中的简单要素类对应于OGR中的层类文件(Layer)。在模型映射过程中,还要建立几何模型、ID、属性字段类型等方面的映射。4.在MapGIS K9的框架下设计和实现了该MapGISK9数据集成中间件。利用中间件技术和多态继承的设计细想,实现了在MapGIS平台上对ESRI Shape、EOO、DXF等多种GIS常用数据格式的访问。5.针对功能不完善、效率有待提高等问题,提出了自己的想法,并对这种多源异构数据集成方式的扩展性做出了展望。