基于SOA 的多源三维空间数据发布平台设计与实现

2022-09-01 15:09陈继培黄家凯
地理空间信息 2022年8期
关键词:数据格式数据服务调用

高 珅,陈继培,黄家凯

(1. 湖北省国土测绘院,湖北 武汉 430010;2. 湖北省地质调查院,湖北 武汉 430030)

研究多源三维GIS 数据的服务发布相关技术,进行数据服务发布平台的研制,不仅能够为用户提供更低成本、更高效率、及时响应的地图发布产品,为数据生产、数据发布、信息共享、应用系统集成提供工具,还能通过与其他数据平台集成,拓展平台的数据范围,满足二三维一体化的建设需求[1-2]。

本文将采用SOA架构建设一套针对主流三维数据的服务发布平台,为三维GIS 数据在发布平台下的无缝转换、快捷发布以及与前端三维GIS 引擎的集成提供可行的技术方法。

1 平台设计

1.1 平台概况

随着测绘技术、计算机与网络技术、虚拟现实技术的飞速发展,三维GIS 逐渐突破原有技术瓶颈,凭借着空间信息展示更直观、多维度空间分析更强大的优势,在跨业务、跨终端、跨平台等方面,得到了越来越广泛的应用,极大的提升了对地理信息的共享和利用效率[3]。为实现多源三维GIS数据的快速发布,以及发布数据与业务一张图、大数据平台等其他前端展示平台的快速集成,减少数据处理发布的整合时间,提高数据发布和集成效率,本文就多源三维数据发布平台的研发开展了相关工作。

1.2 平台设计

当前,三维GIS 数据来源多,格式多样,容量大,存储量随着时间增长是海量的,而适合于海量数据传输、发布与共享的数据格式标准主流的有三类:超图公司的S3M 数据格式、OGC 的基于I3S 规范的SPLK格式以及Cesium的3DTiles格式。Cesium是使用WebGL的一种三维数据引擎,也是一种应用最为广泛的开源三维框架,具有成本低、开发简单、支持多种数据可视化方法、可跨平台等诸多优势[4-6]。本文将以Cesium 的3DTiles 格式作为三维数据发布平台的数据标准,平台能够利用转换工具将主流的三维数据格式转换为3DTiles 格式,并对发布后的三维数据服务进行管理维护,其他前端展示平台系统可通过对三维数据服务进行快速访问的方式,实现多源三维数据服务与其他前端展示平台系统的快速集成,如图1所示。

图1 数据服务调用流程图

考虑到SOA 技术在应用集成和服务动态发布与绑定方面的优势[7-8],平台采用基于SOA 的技术架构,采用超文本传输协议(HTTP),以3DTiles 格式作为平台数据标准,以扩展标记语言(XML)作为信息交换格式,实现多源三维数据的服务发布和管理。同时,平台可兼容多源数据格式,无需编程实现三维GIS 地图数据高效发布,快速响应前端展示平台如业务一张图系统、大数据平台等的数据集成需求。

1.3 总体架构

平台的总体架构主要包括业务层、服务层、平台层和数据层,其中业务层和服务层之间通过SOA总线进行服务调用,具体如图2所示。

图2 总体架构

1)数据层。数据层主要包括已有的符合标准的外部数据服务和经过数据标准化处理后形成的数据服务。对于OBJ、OSGB、M3D、FBX、glTF、S3M 等其他格式标准的三维数据,通过数据转换工具处理后,可制作成符合发布平台数据标准的数据服务。

2)平台层。平台层主要由各项数据、服务相关的应用功能组成。三维数据发布平台提供了对各类数据资源的管理以及相关服务的聚合、调用以及配置管理。

3)服务层。服务层提供数据服务与功能服务,平台可通过单个服务或多个服务组件集成的方式提供对外服务接口。

4)业务层。业务层包括各类需进行数据或功能服务调用的外部平台系统,通过SOA总线,对服务层中的各类功能、数据服务进行调用,从而满足外部平台的数据访问或功能使用需求。

2 平台关键技术

2.1 基于SOA的技术架构

三维GIS 数据来源众多,数据量大,不仅不同数据的所属部门各不相同,其使用过程中面向的用户或集成平台也各不相同,因此对三维GIS 数据的管理不仅要考虑资源访问权限问题,也要考虑其动态集成问题。SOA作为一种以服务为核心的系统架构,利用不同服务之间定义良好且中立的接口,与协议联系起来,从而独立于实现服务的硬件平台、操作系统和编程语言,这使得构建在不同系统中的服务可以以一种统一和通用的方式进行交互,满足不同系统的集成需求[9]。

平台以SOA所具备的松散耦合的服务分层结构为基础,通过中间件法进行数据集成,并采用基于Web服务技术的实现方式,将对多源三维数据的操作都封装在不同粒度的服务中,这些服务又可以根据用户或平台集成的不同需求进行任意组合,这也决定了平台能够满足复杂的数据访问请求。

用户在平台中使用数据时,以服务调用而不是点对点传输的方式进行信息获取,服务的可重用性又保证了平台能够满足被不同应用场景反复调用的使用需求。同时,通过对服务调用的授权管理,保证了数据使用在权限允许的范围内进行,从而使数据的使用更为灵活便利。

2.2 多源数据服务聚合技术

服务作为SOA的核心概念,其主要参与者包括服务提供者、注册者和请求者。为保证数据服务的标准性与通用性,整个数据管理过程都遵照统一的OGC标准与规范进行,使不同的参与者在使用发布平台的过程中遵循统一的标准规范,从而保证服务调用、集成的顺畅进行。

数据发布平台中的数据发布功能模块提供对各类数据资源的综合管理,相关数据的生产者或者维护者按照平台数据标准规范进行数据服务的注册和发布,并可在对应的数据资源目录中查看对应的数据信息,管理数据服务资源。有数据使用需求的请求者则在发布平台的服务资源管理模块对已发布的数据服务进行网络调用,并在平台中以集成应用项目为单位进行管理,每个集成应用项目可包含多个调用的数据服务。

采用这种在服务发布平台遵照统一标准的数据管理方式,并利用可定制可扩展的后台服务配置技术构建后台运维管理平台,突破了分布式环境下海量、异构空间数据的无缝集成与交换、多节点协同服务等技术瓶颈,可实现国家、省、市、区(县)各级平台之间横向互联、纵向互通的全方位的空间数据共享。

3 功能实现

平台设计的目标是无需编程实现三维GIS 地图数据高效发布,能够兼容多源数据格式,快速响应与其他平台系统如业务一张图系统、地质大数据平台的集成需求,具体包括数据发布、服务资源管理、系统管理3个功能模块。

3.1 数据发布

数据发布模块是对平台发布数据的综合管理,如图3 所示。数据发布前首先要建立工作空间,在此基础上,通过数据源管理可以在工作空间内添加数据,并在对应的各类图层管理项中将添加进数据源的数据发布成图层并展示,即在不同的功能菜单,可以查看从接口获取的对应类型的数据列表,并对相关数据服务进行查询、查看、编辑、删除、停止、图层显示等操作。

图3 数据发布功能模块

3.2 服务资源管理

服务资源管理是对发布的数据服务进行调用时的配置管理,这种管理以应用项目为单位进行,一个应用项目可包含多条数据,具体包括应用管理和数据目录管理(如图4所示),可以进行应用项目对应数据分类目录的管理编辑。

图4 服务资源管理功能模块

3.3 系统管理

系统管理是后台对用户权限、组织、角色等进行管理,如图5 所示,是保证系统平台正常运行的管理维护模块。

图5 系统管理功能模块

4 结 语

多源三维数据服务发布平台具有数据类型繁多、数据量大、对接数据平台种类各异的特点,并且要求平台有效率性、可扩展性、系统稳定性、可维护性和质量控制可靠性。采用SOA 技术进行服务发布平台的搭建,可以借助SOA 实现数据服务的灵活管理以及与其他数据平台的快速集成,具有良好的应用前景。

猜你喜欢
数据格式数据服务调用
大数据时代高校图书馆数据服务的困境及优化路径
地理空间大数据服务自然资源调查监测的方向分析
基于数据中台的数据服务建设规范研究
核电项目物项调用管理的应用研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
数据服务依赖图模型及自动组合方法研究
MIT—BIH心率失常数据库的识读
基于RFID的户外广告监管系统的设计与实现
一种融合多业务的信息化系统框架研究
利用RFC技术实现SAP系统接口通信